summaryrefslogtreecommitdiff
path: root/wiki
diff options
context:
space:
mode:
authorJesusaves <cpntb1@ymail.com>2020-06-21 03:47:22 -0300
committerJesusaves <cpntb1@ymail.com>2020-06-21 03:47:22 -0300
commita6b65386f8874ad9e7a52f4c0d0529b2ba8d454a (patch)
tree516b7b9285e85e62b11a8f9b08978e9d4f1ed302 /wiki
parentcde360ac4587848e73702c213f2b46bd6b3ff757 (diff)
downloadtools-a6b65386f8874ad9e7a52f4c0d0529b2ba8d454a.tar.gz
tools-a6b65386f8874ad9e7a52f4c0d0529b2ba8d454a.tar.bz2
tools-a6b65386f8874ad9e7a52f4c0d0529b2ba8d454a.tar.xz
tools-a6b65386f8874ad9e7a52f4c0d0529b2ba8d454a.zip
New MATK Rule
Diffstat (limited to 'wiki')
-rwxr-xr-xwiki/sedesign.py35
1 files changed, 28 insertions, 7 deletions
diff --git a/wiki/sedesign.py b/wiki/sedesign.py
index ba722b1..c8b90fe 100755
--- a/wiki/sedesign.py
+++ b/wiki/sedesign.py
@@ -27,6 +27,7 @@ IT_ARMOR={ 'MISC': [], # FOR FAILURE
'EQP_HEAD_TOP':[], # HATS/HELMETS
'EQP_HAND_L': []} # SHIELDS
IT_WEAPON={ 'RANGED': [], # RANGED WEAPONS
+ 'MAGICAL':[], # MAGICAL WEAPONS
'HAND_2':[], # TWO HAND (LR)
'HAND_1':[]} # WEAPONS (R)
@@ -140,7 +141,9 @@ def ItAlloc(it):
else:
raise Exception("Invalid Loc for ID %s: %s" % (it.id, it.loc))
elif "IT_WEAPON" in a:
- if int(it.range) > 2:
+ if int(it.matk) > 0:
+ IT_WEAPON["MAGICAL"].append(it)
+ elif int(it.range) > 2:
IT_WEAPON["RANGED"].append(it)
elif "HAND_L" in it.loc or "EQP_ARMS" in it.loc:
IT_WEAPON["HAND_2"].append(it)
@@ -282,6 +285,10 @@ def writeItems():
wikia.write("<h3>Ranged Weapons</h3>\n")
ItemWrite(IT_WEAPON['RANGED'], ID=True, AEGIS=True, PRICE=True, WEIGHT=True, ATK=True, LVL=True, RANGE=True)
+ # Magic Items
+ wikia.write("<h3>Magical Weapons</h3>\n")
+ ItemWrite(IT_WEAPON['MAGICAL'], ID=True, AEGIS=True, PRICE=True, WEIGHT=True, ATK=True, MATK=True, LVL=True, RANGE=True)
+
# Write AegisName with restrictions
def hl(it):
buff=""
@@ -302,7 +309,7 @@ def hl(it):
# wikia.write("Id|Aegis|Name|Weight|Atk|Matk|\n")
# wikia.write("Id|Aegis|Name|Price|Weight|\n")
-def ItemWrite(tbl, ID=False, AEGIS=False, NAME=False, PRICE=False, WEIGHT=False, DEF=False, LVL=False, ATK=False, RANGE=False, HEALING=False, SCRIPT=False, DROPPER=False):
+def ItemWrite(tbl, ID=False, AEGIS=False, NAME=False, PRICE=False, WEIGHT=False, DEF=False, LVL=False, ATK=False, MATK=False, RANGE=False, HEALING=False, SCRIPT=False, DROPPER=False):
global stgen
wikia.write("<table border=1>\n")
wikia.write("<tr>")
@@ -324,9 +331,13 @@ def ItemWrite(tbl, ID=False, AEGIS=False, NAME=False, PRICE=False, WEIGHT=False,
wikia.write("<th>Lvl</th>")
if ATK:
wikia.write("<th>Atk</th>")
+ if MATK:
+ wikia.write("<th>Matk</th>")
+ if ATK and MATK:
+ wikia.write("<th>+</th>")
+ if ATK or MATK:
if stgen:
wikia.write("<th>Adj. Atk.</th>")
- wikia.write("<th>Matk</th>")
if RANGE:
wikia.write("<th>Range</th>")
if HEALING:
@@ -387,6 +398,16 @@ def ItemWrite(tbl, ID=False, AEGIS=False, NAME=False, PRICE=False, WEIGHT=False,
wikia.write("<td>Lv: %s</td>" % i.lvl)
if ATK:
wikia.write("<td>Atk: %s</td>" % i.atk)
+ if MATK:
+ wikia.write("<td>%s</td>" % i.matk)
+ if ATK and MATK:
+ try:
+ tmpatmat=i.atk.replace("Atk: ", "")
+ print("`%s`+`%s`=?" % (tmpatmat, i.matk))
+ wikia.write("<td><i>%s</i></td>" % str(int(i.matk)+int(tmpatmat)))
+ except:
+ wikia.write("<td><i>?</i></td>")
+ if ATK or MATK:
if stgen:
lv=int(i.lvl)
at=int(i.atk)
@@ -418,20 +439,20 @@ def ItemWrite(tbl, ID=False, AEGIS=False, NAME=False, PRICE=False, WEIGHT=False,
if lv > 45 and not i in IT_WEAPON['RANGED']:
fc-=(lv-45)/100.0
+ ## Magic Weapons has rules of themselves
+ if int(i.matk) > 0:
+ fc=7.0+((100-lv)/100.0)
+
## HAT is for craft or rare items.
lat=lv*fc
hat=lv*(fc+max(0.01, 1.0-(lv/100.0)))
# Edge Cases
- ## Don't calculate magic weapons
- if int(i.matk) > 0:
- lat=hat=0
## Don't recalculate noob weapon
if lv <= 20:
lat=hat=at
wikia.write("<th>%d ~ %d <i>(%.2f)</i></th>" % (lat, hat, fc))
- wikia.write("<td>%s</td>" % i.matk)
if RANGE:
wikia.write("<td>%s</td>" % i.range)
if HEALING: