-
Notifications
You must be signed in to change notification settings - Fork 2
Expand file tree
/
Copy pathCharacter_Loading.py
More file actions
57 lines (44 loc) · 2.56 KB
/
Copy pathCharacter_Loading.py
File metadata and controls
57 lines (44 loc) · 2.56 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
from Classi.Wizard import Wizard as newWizard
from Classi.Elf import Elf as newElf
from Classi.Knight import Knight as newKnight
from Classi.Ninja import Ninja as newNinja
from Classi.Weapons import Weapon as newWeapon
import DB.CRUD as db
def get_inventario(diz):
weapons = []
for weapon in diz:
weapons.append(newWeapon(weapon["name"], weapon["damage"], weapon["price"], weapon["level"]))
return weapons
def loadCharacter(data):
"""
In base al tipo di personaggio carica un oggetto diverso
:param data:
:return:
"""
if data["type"] == "Wizard":
return newWizard(data["lineage"], data["name"], data["level"], data["weapon"], data["life"], data["basic_attack"],
data["defence"], data["special_attack"], data["gender"], data["exp"], data["wallet"], get_inventario(data["inventory"]))
elif data["type"] == "Elf":
return newElf(data["lineage"], data["name"], data["level"], data["weapon"], data["life"], data["basic_attack"],
data["defence"], data["special_attack"], data["gender"], data["exp"], data["wallet"], get_inventario(data["inventory"]))
elif data["type"] == "Ninja":
return newNinja(data["lineage"], data["name"], data["level"], data["weapon"], data["life"], data["basic_attack"],
data["defence"], data["special_attack"], data["gender"], data["exp"], data["wallet"], get_inventario(data["inventory"]))
else:
return newKnight(data["lineage"], data["name"], data["level"], data["weapon"], data["life"], data["basic_attack"],
data["defence"], data["special_attack"], data["gender"], data["exp"], data["wallet"], get_inventario(data["inventory"]))
def getCharacter(name):
'''
Prende le informazioni del personaggio dal DB e le passa al metodo loadCharacter per caricare le infromazioni in oggetto che ritorna
'''
dataPlayer = db.getCharacter(name)
return loadCharacter(dataPlayer)
#Function for create the object of character
def createWizard(name, lineage, gender):
return newWizard(lineage, name, 0, None, 200, 10, 5, {'nome': 'Avadakedavra', 'danno': 20}, gender, 0, 50, [])
def createKnight(name, lineage, gender):
return newKnight(lineage, name, 0, None, 200, 15, 10, {'nome': 'Charge', 'danno': 10}, gender, 0, 50, [])
def createElf(name, lineage, gender):
return newElf(lineage, name, 0, None, 200, 10, 3, {'nome': 'Sharpshooter', 'danno': 25}, gender, 0, 50, [])
def createNinja(name, lineage, gender):
return newNinja(lineage, name, 0, None, 200, 15, 15, {'nome': 'Shadow Clone', 'danno': 15}, gender, 0, 50, [])