49 lines
1.8 KiB
Python
49 lines
1.8 KiB
Python
from game_server.game.chat.decorators import Command
|
|
from game_server.net.session import PlayerSession
|
|
from game_server.resource import ResourceManager
|
|
from game_server.resource.configdb.avatar_config import AvatarConfig
|
|
from game_server.resource.configdb.equipment_config import EquipmentConfig
|
|
from game_server.resource.configdb.relic_config import RelicConfigData
|
|
|
|
@Command(
|
|
prefix="giveall",
|
|
usage="/giveall",
|
|
)
|
|
async def execute(session:PlayerSession, text):
|
|
try:
|
|
sync = False
|
|
if text == "avatars":
|
|
avatars = ResourceManager.instance().values(AvatarConfig)
|
|
for avatar in avatars:
|
|
if avatar.AvatarID == 1224 or avatar.AvatarID >= 7000:
|
|
continue
|
|
if session.player.avatar_mananger.get(avatar.AvatarID):
|
|
continue
|
|
data = session.player.add_avatar(avatar.AvatarID)
|
|
if data:
|
|
session.player.avatar_mananger[data.avatar_id] = data
|
|
sync = True
|
|
|
|
if text == "lightcones":
|
|
lightcones = ResourceManager.instance().values(EquipmentConfig)
|
|
for lightcone in lightcones:
|
|
item = session.player.add_lightcone(lightcone.EquipmentID)
|
|
if item:
|
|
session.player.inventory_manager[item.unique_id] = item
|
|
sync = True
|
|
|
|
if text == "relics":
|
|
relics = ResourceManager.instance().values(RelicConfigData)
|
|
for relic in relics:
|
|
item = session.player.add_relic(relic.ID)
|
|
if item:
|
|
session.player.inventory_manager[item.unique_id] = item
|
|
sync = True
|
|
|
|
if sync:
|
|
await session.notify(session.player.PlayerSyncProto())
|
|
|
|
return "GIVEALL"
|
|
except Exception as e:
|
|
print(e)
|