summaryrefslogtreecommitdiff
path: root/wiki/wikigen.py
diff options
context:
space:
mode:
authorJesusaves <cpntb1@ymail.com>2018-06-16 03:11:13 -0300
committerJesusaves <cpntb1@ymail.com>2018-06-16 03:11:13 -0300
commit31f3ef785f673179617114e2eac9545589a36c64 (patch)
tree78cf9481872151d0ded92ffb93ab8d901db9dfe5 /wiki/wikigen.py
parentf00ba088fa9ab568eae1dedbf6fae01b966997e6 (diff)
downloadtools-31f3ef785f673179617114e2eac9545589a36c64.tar.gz
tools-31f3ef785f673179617114e2eac9545589a36c64.tar.bz2
tools-31f3ef785f673179617114e2eac9545589a36c64.tar.xz
tools-31f3ef785f673179617114e2eac9545589a36c64.zip
Revert EXPERIMENTAL merge of Elegen on WikiGen.
A new script file is now provided (webwikigen.py) if you want to render on desktop. This reverts commit f00ba088fa9ab568eae1dedbf6fae01b966997e6.
Diffstat (limited to 'wiki/wikigen.py')
-rwxr-xr-xwiki/wikigen.py152
1 files changed, 12 insertions, 140 deletions
diff --git a/wiki/wikigen.py b/wiki/wikigen.py
index 36b046d..04172a7 100755
--- a/wiki/wikigen.py
+++ b/wiki/wikigen.py
@@ -62,87 +62,6 @@ def showFooter():
-def fwalk(wmask):
- if wmask == 'WATER':
- return '<font color=#00f>%s</font>' % (wmask)
- elif wmask == 'AIR':
- return '<font color=#093>%s</font>' % (wmask)
- elif wmask == 'WALL':
- return '<font color=#f00>%s</font>' % (wmask)
- elif wmask == 'NORMAL' or wmask == 'DEFAULT':
- return '<font color=#111>%s</font>' % (wmask)
- else:
- print("Invalid walk mask: "+wmask)
- exit(1)
-
-def WhatRace(rac):
- rc=rac.race
- if rc == 0:
- return "Formless"
- elif rc == 1:
- return "Undead"
- elif rc == 2:
- return "Brute"
- elif rc == 3:
- return "Plant"
- elif rc == 4:
- return "Insect"
- elif rc == 5:
- return "Fish"
- elif rc == 6:
- return "-"
- elif rc == 7:
- return "SemiHuman"
- elif rc == 8:
- return "Angel"
- elif rc == 9:
- return "Dragon"
- elif rc == 10:
- return "Player"
- elif rc == 11:
- return "Boss"
- elif rc == 12:
- return "NonBoss"
- elif rc == 14:
- return "NonSemiHuman"
- elif rc == 15:
- return "NonPlayer"
- elif rc == 16:
- return "SemiPlayer"
- elif rc == 17:
- return "NonSemiPlayer"
- else:
- print("ERROR, INVALID RACE ID: %d (ID: %s)" % (rc, rac.id))
- exit(1)
-
-def WhatElem(rac):
- rc=rac.elem
- tl="ERROR"
- cl="#F00"
- if rc == 0:
- tl,cl="Neutral","#000"
- elif rc == 1:
- tl,cl="Water","#00F"
- elif rc == 2:
- tl,cl="Earth","#7A0"
- elif rc == 3:
- tl,cl="Fire","#F00"
- elif rc == 4:
- tl,cl="Wind","#093"
- elif rc == 5:
- tl,cl="Poison","#040"
- elif rc == 6:
- tl,cl="Holy","#afa"
- elif rc == 7:
- tl,cl="Dark","#908"
- elif rc == 8:
- tl,cl="Ghost","#404"
- elif rc == 9:
- tl,cl="Undead","#440"
- else:
- print("ERROR, INVALID ELEM ID: %d (ID: %s)" % (rc, rac.id))
- exit(1)
- return "<font color=%s>%s</font>" % (cl, tl)
class Mob:
def __init__(self):
@@ -166,12 +85,6 @@ class Mob:
self.delay="0"
self.drops=[]
- # Elegen Info
- self.race=-1
- self.elem=-1
- self.elel=-1
- self.walk="NORMAL"
-
def MobAlloc(ab):
try:
maab=int(ab.mobpt)
@@ -209,10 +122,7 @@ def testMobs():
if " Id:" in a:
x.id=stp(a)
- if x.id == "ID":
- continue
-
- if " Name:" in a:
+ elif " Name:" in a:
x.name=stp(a)
elif " Hp:" in a:
x.hp=stp(a)
@@ -233,28 +143,11 @@ def testMobs():
elif " AttackDelay:" in a:
x.delay=stp(a)
elif " Looter: true" in a:
- x.st+="<font color=#790>Lot</font>,"
+ x.st+="Lot,"
elif " Assist: true" in a:
- x.st+="<font color=#0a0>Ass</font>,"
+ x.st+="Ass,"
elif " Aggressive: true" in a:
- x.st+="<font color=#f00>Agr</font>,"
- elif " WalkMask:" in a:
- x.walk=stp(a)
- elif " Element:" in a:
- tmp=stp(a)
- tmp2=tmp.split(',')
- try:
- x.elem=int(tmp2[0])
- x.elel=int(tmp2[1])
- except:
- print("Invalid Element for mob %s: %s" % (x.id, tmp))
- exit(1)
- elif " Race:" in a:
- try:
- x.race=int(stp(a))
- except:
- print("Invalid Race for mob %s: %s" % (x.id, a))
- exit(1)
+ x.st+="Agr,"
elif 'Drops: ' in a:
dropper=True
elif dropper and '}' in a:
@@ -274,21 +167,21 @@ def testMobs():
src.close()
def stp(x):
- return x.replace('\n', '').replace('|', '').replace('(int, defaults to ', '').replace(')', '').replace('basic experience', '').replace('"','').replace(" ","").replace("\t","").replace('(string', '').replace('Name: ','').replace('Element: ','').replace('Race: ','').replace('AttackDelay: ', '').replace('WalkMask: ','').replace('MoveSpeed: ', '').replace('AttackRange: ', '').replace('ViewRange: ','').replace('Attack: ','').replace('ViewRange: ','').replace('Hp: ','').replace('Id: ','').replace('Lv: ','').replace('view range','').replace('attack range','').replace('move speed','').replace('health','').replace('(int','').replace('attack delay','atk.').replace('(','').replace(')','').replace('WALK_','')
+ return x.replace('\n', '').replace('|', '').replace('(int, defaults to ', '').replace(')', '').replace('basic experience', '').replace('"','').replace(" ","").replace("\t","").replace('(string', '').replace('Name: ','').replace('AttackDelay: ', '').replace('MoveSpeed: ', '').replace('AttackRange: ', '').replace('ViewRange: ','').replace('Attack: ','').replace('ViewRange: ','').replace('Hp: ','').replace('Id: ','').replace('Lv: ','').replace('view range','').replace('attack range','').replace('move speed','').replace('health','').replace('(int','').replace('attack delay','atk.')
def MonsterWrite(tbl):
# TODO: Check _mobs files to determine the usual monster density (a misc info to aid adding proper drop specs)
wikib.write("<table border=1>\n")
- wikib.write("<tr><th>ID</th><th>Name</th><th>Mob Info</th><th>Elegen</th><th>Misc Info</th><th>Rewards</th><th>Drops</th></tr>\n")
+ wikib.write("<tr><th>ID</th><th>Name</th><th>HP</th><th>Atk</th><th>Delay</th><th>Modes</th><th>Misc Info</th><th>Rewards</th><th>Drops</th></tr>\n")
for i in tbl:
- if i.id == 'ID':
- continue
wikib.write('<tr><td><a name="' + i.id + '"></a>' +
i.id +"</td><td>"+
- i.name +"</td><td>"+
- mb_core(i) +"</td><td>"+
- mb_eleg(i) +"</td><td>"+
+ i.name +"</td><td>HP: "+
+ i.hp +"</td><td>Atk: "+
+ i.atk +"</td><td>"+
+ i.delay +" ms</td><td>"+
+ i.st +"</td><td>"+
mbdt('misc', mb_rdmisc(i)) +"</td><td>"+
mbdt('Exp\'s', mb_rdrw(i)) +"</td><td>"+
mbdt('drops', mb_rddrop(i)) +"</td></tr>\n"
@@ -330,38 +223,17 @@ def mbdt(summary, content):
<summary>"+summary+"</summary>\
<pre>"+content+"</pre></details>"
-def mb_core(mb):
- buff=""
- buff+="Lvl: %s<br/>\n" % (mb.mobpt)
- buff+="HP: <b><font color=#0a0>%s</font></b><br/>\n" % (mb.hp)
- buff+="ATK: <b><font color=#a00>%s</font></b><br/>\n" % (mb.atk)
- if mb.st != "":
- buff+="Modes: <i>%s</i>" % (mb.st)
- return buff
-
-def mb_eleg(mb):
- buff=""
- buff+="Race: %s<br/>\n" % (WhatRace(mb))
- buff+="Walk: %s<br/>\n" % (fwalk(mb.walk))
- buff+="Element: %s<br/>\n" % (WhatElem(mb))
- return buff
-
def mb_rdmisc(mb):
buff=""
if "agr" in mb.st.lower():
buff+="View Range: %s\n" % (mb.view)
buff+="Attack Range: %s\n" % (mb.range)
- buff+="AtkDelay: %s ms\n" % (mb.delay)
buff+="Move speed: %s ms\n" % (mb.move)
- buff+="Element Level: %d\n" % (mb.elel)
return buff
def mb_rdrw(mb):
buff=""
- try:
- buff+="MobPoints: %d\n" % (int(mb.mobpt)*11/10)
- except:
- pass
+ buff+="MobPoints: %s\n" % (mb.mobpt)
buff+="%s\n" % (mb.xp)
buff+="%s\n" % (mb.jp)
return buff