Tool Script in Python che permette di generare facilmente item list (da +0 a +9)

Stato
Discussione chiusa ad ulteriori risposte.

Arves100

Utente Emerald
15 Febbraio 2011
515
46
376
418
Ultima modifica da un moderatore:
Ciao, oggi vi rilascio uno stupido tool che ho fatto in una livestream (ovviamente è stato pulito perchè era tutto manuale <.<).
Lo script in Python permette di generare facilmente l'item list (da +0 a +9).
Versione Python: 2.7
Python:
#!C:\Python27\pythonw.exe

## Originally coded on Live Stream 09 of Made in Server
## Version 02 coded on 14-01-2018
## If someone is interested about the license, it is MIT (yes it's real)

import sys

def main_func():
print("Input the vnum: ")
tt = raw_input()
if not tt.isdigit():
print("Please input a number")
sys.exit(0)

vnum = int(tt)

print("Input the type:")
print("(1) WEAPON")
print("(2) ETC")
print("(3) ARMOR")
print("(4) WING")
tt = raw_input()
if not tt.isdigit():
print("Please input a number")
sys.exit(0)

choice = int(tt)
have_gr2 = 0

if choice == 1:
type = "WEAPON"
have_gr2 = 1
elif choice == 2:
type = "ETC"
elif choice == 3:
type = "ARMOR"
elif choice == 4:
type = "WING"
have_gr2 = 1
else:
print("Unknown choice")
sys.exit(0)

print("Input icon path: (Press ENTER for default value: \"icon/item/\")")
icon_path = raw_input()
if len(icon_path) < 1:
icon_path = "icon/item/"

print("Input icon extension: (Press ENTER for default value: \".tga\")")
icon_ext = raw_input()
if len(icon_ext) < 1:
icon_ext = ".tga"

if have_gr2 == 1:
print("Input gr2 path: (Press ENTER for default value: \"d:/ymir work/item/weapon/\")")
gr2_path = raw_input()
if len(gr2_path) < 1:
gr2_path = "d:/ymir work/item/weapon/"

print("Input gr2 extension: (Press ENTER for default value: \".gr2\")")
gr2_ext = raw_input()
if len(gr2_ext) < 1:
gr2_ext = ".gr2"

print("Input output name: (Press ENTER for default value: \"item_list.txt\")")
item_list_name = raw_input()

if len(item_list_name) < 1:
item_list_name = "item_list.txt"

fp = open(item_list_name,"a")
count = 0

while count < 10:

fp.write(str(vnum + count) + "\t" + type + "\t" + icon_path + str(vnum) + icon_ext)

if have_gr2 == 1:
fp.write("\t" + gr2_path + str(vnum) + gr2_ext)
fp.write("\n")
count += 1

fp.close()

if __name__ == "__main__":
print("Item list generator v2.0 by arves100")
main_func()
print("Finished!")
 
Puoi farci un sacco di ottimizzazioni, tipo

print("Input icon extension: (Press ENTER for default value: \".tga\")")
icon_ext = raw_input()


icon_ext = raw_input("input here: \n")

and so on, in caso ti farebbe piacere e` facilmente rescrivibile in py36 e poche righe di codice
 
Ultima modifica da un moderatore:
Si,ma a cosa serve?
un inutile programma per generare gli item list da +0 a +9 senza doverli riscivere
Puoi farci un sacco di ottimizzazioni, tipo

print("Input icon extension: (Press ENTER for default value: \".tga\")")
icon_ext = raw_input()


icon_ext = raw_input("input here: \n")

and so on, in caso ti farebbe piacere e` facilmente rescrivibile in py36 e poche righe di codice
azz... non immaginavo che raw_input avesse degli argomenti, mi metto a lavoro ;). La conversione per py36 non ci avevo pensanto in quando non lo ho installato. grazie comunque per la risposta :)
 
Ultima modifica da un moderatore:
un inutile programma per generare gli item list da +0 a +9 senza doverli riscivere

azz... non immaginavo che raw_input avesse degli argomenti, mi metto a lavoro ;). La conversione per py36 non ci avevo pensanto in quando non lo ho installato. grazie comunque per la risposta :)
Potresti anche modificare i check degli item type nel seguente modo:

dict_ = {"1" : "WEAPON", "2" : "ETC", "3" : "ARMOR", "4" : "WING"}

choice = raw_input("1: WEAP, 2:ETC,3:ARM,4:WING \n")
1
itype = dict_[choice]
>>> WEAPON

e poi checkare
if (itype in ["WEAPON", "WING"]):
>>> They have a GR2!

anche per il while, senza inizializzare il contatore puoi runnare

for i in xrange(1,10): # Pyton27
for i in range(1,10): # Python36

P.s. python36 non utilizza piu` raw_input ma soltanto input, stesso funzionamento a grandi linee


and so on, l'ho otimizzato ma purtroppo non ho attualmente il file, domani lo posto se ti fa piacere
 
Ultima modifica da un moderatore:
Potresti anche modificare i check degli item type nel seguente modo:

dict_ = {"1" : "WEAPON", "2" : "ETC", "3" : "ARMOR", "4" : "WING"}

choice = raw_input("1: WEAP, 2:ETC,3:ARM,4:WING \n")
1
itype = dict_[choice]
>>> WEAPON

e poi checkare
if (itype in ["WEAPON", "WING"]):
>>> They have a GR2!

anche per il while, senza inizializzare il contatore puoi runnare

for i in xrange(1,10): # Pyton27
for i in range(1,10): # Python36

P.s. python36 non utilizza piu` raw_input ma soltanto input, stesso funzionamento a grandi linee


and so on, l'ho otimizzato ma purtroppo non ho attualmente il file, domani lo posto se ti fa piacere
Ah cosi mi risparmi tempo hahaha, va bene ti metterò nei crediti allora ;)
 
Stato
Discussione chiusa ad ulteriori risposte.