hzr
2025-04-21 2d9d117228fd281aeeb0f3c173f538744f8dffd7
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
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
#!/usr/bin/python
# -*- coding: GBK -*-
#-------------------------------------------------------------------------------
#
##@package GM.Commands.SetXunbao
#
# @todo:ÉèÖÃѰ±¦
# @author hxp
# @date 2018-04-28
# @version 1.0
#
# ÏêϸÃèÊö: ÉèÖÃѰ±¦
#
#-------------------------------------------------------------------------------
#"""Version = 2018-04-28 16:00"""
#-------------------------------------------------------------------------------
 
import GameWorld
import ShareDefine
import PlayerControl
import PlayerTreasure
import ClearPack
import ChConfig
import IpyGameDataPY
 
## GMÃüÁîÖ´ÐÐÈë¿Ú
#  @param curPlayer µ±Ç°Íæ¼Ò
#  @param paramList ²ÎÊýÁбí
#  @return None or True
#  @remarks º¯ÊýÏêϸ˵Ã÷.
def OnExec(curPlayer, paramList):
    if not paramList:
        GameWorld.DebugAnswer(curPlayer, "ÖØÖÃѰ±¦:SetXunbao 0 [Ö¸¶¨ÀàÐÍ]")
        GameWorld.DebugAnswer(curPlayer, "ÉèÖÃÐÒÔË:SetXunbao l ÀàÐÍ ÐÒÔË")
        GameWorld.DebugAnswer(curPlayer, "ÉèÖôÎÊý:SetXunbao c ÀàÐÍ ½ñÈÕ´ÎÊý [ÀۼƴÎÊý]")
        return
    
    value = paramList[0]
    syncTypeList = []
    if not value:
        ClearPack.OnExec(curPlayer, [ShareDefine.rptTreasure])
        ClearPack.OnExec(curPlayer, [ShareDefine.rptRune])
        
        treasureTypeList = paramList[1:]
        if not treasureTypeList:
            ipyDataMgr = IpyGameDataPY.IPY_Data()
            for i in xrange(ipyDataMgr.GetTreasureSetCount()):
                ipyData = ipyDataMgr.GetTreasureSetByIndex(i)
                treasureTypeList.append(ipyData.GetTreasureType())
        PlayerTreasure.ResetTreasureType(curPlayer, treasureTypeList)
        GameWorld.DebugAnswer(curPlayer, "ÖØÖÃѰ±¦OK£¡%s" % treasureTypeList)
        return
    
    elif value == "l":
        treasureType = paramList[1] if len(paramList) > 1 else None
        luck = paramList[2] if len(paramList) > 2 else 0
        if not IpyGameDataPY.GetIpyGameData("TreasureSet", treasureType):
            GameWorld.DebugAnswer(curPlayer, "Ѱ±¦ÀàÐͲ»´æÔÚ£¡%s" % treasureType)
            return
        PlayerControl.NomalDictSetProperty(curPlayer, ChConfig.Def_PDict_TreasureLuck % (treasureType), luck)
        GameWorld.DebugAnswer(curPlayer, "ÉèÖÃѰ±¦ÀàÐÍ=%s,ÐÒÔË=%s" % (treasureType, luck))
        syncTypeList = [treasureType]
        
    elif value == "c":
        treasureType = paramList[1] if len(paramList) > 1 else None
        treasureCountToday = paramList[2] if len(paramList) > 2 else None
        treasureCount = paramList[3] if len(paramList) > 3 else None
        if not IpyGameDataPY.GetIpyGameData("TreasureSet", treasureType):
            GameWorld.DebugAnswer(curPlayer, "Ѱ±¦ÀàÐͲ»´æÔÚ£¡%s" % treasureType)
            return
        if treasureCountToday != None:
            PlayerControl.NomalDictSetProperty(curPlayer, ChConfig.Def_PDict_TreasureCountToday % (treasureType), treasureCountToday)
            GameWorld.DebugAnswer(curPlayer, "ÉèÖÃѰ±¦ÀàÐÍ=%s,½ñÈÕ´ÎÊý=%s" % (treasureType, treasureCountToday))
        if treasureCount != None:
            PlayerControl.NomalDictSetProperty(curPlayer, ChConfig.Def_PDict_TreasureCount % (treasureType), treasureCount)
            GameWorld.DebugAnswer(curPlayer, "ÉèÖÃѰ±¦ÀàÐÍ=%s,ÀۼƴÎÊý=%s" % (treasureType, treasureCount))
        syncTypeList = [treasureType]
        
    PlayerTreasure.Sync_TreasureInfo(curPlayer, syncTypeList)
    return