| | |
| | | import GameFuncComm
|
| | | import IpyGameDataPY
|
| | | import ItemCommon
|
| | | import PlayerHorse
|
| | |
|
| | | import time
|
| | | #===============================================================================
|
| | |
| | | # @return: None
|
| | | def OnSignDay(index, clientData, tick):
|
| | | # 跨服服务器功能限制
|
| | | if GameWorld.IsMergeServer():
|
| | | if GameWorld.IsCrossServer():
|
| | | return
|
| | | curPlayer = GameWorld.GetPlayerManager().GetPlayerByIndex(index)
|
| | | #功能开启判断
|
| | |
| | | # 刷签到附加功能属性
|
| | | PlayerMagicWeapon.CalcMagicWeaponAttr(curPlayer)
|
| | | PlayerPet.CalcPetItemAddPlayerAttr(curPlayer)
|
| | | PlayerHorse.CalcHorseAttrEx(curPlayer)
|
| | | PlayerControl.PlayerControl(curPlayer).RefreshPlayerAttrState()
|
| | |
|
| | | |
| | | ipyData = IpyGameDataPY.GetIpyGameDataByCondition('TreasureUp', {'PrivilegeID':ChConfig.MWPrivilege_SignDayAddAttr}, False, False)
|
| | | privilegeIpyData = IpyGameDataPY.GetIpyGameDataNotLog('TreasurePrivilege', ChConfig.MWPrivilege_SignDayAddAttr)
|
| | | if ipyData and privilegeIpyData:
|
| | | mwID = ipyData.GetMWID()
|
| | | effDict = privilegeIpyData.GetEffectValue()
|
| | | mwID = IpyGameDataPY.GetFuncCfg('MWSignDayAttr', 2)
|
| | | if mwID:
|
| | | effDict = IpyGameDataPY.GetFuncEvalCfg('MWSignDayAttr', 1, {})
|
| | | if PlayerMagicWeapon.GetIsActiveMagicWeapon(curPlayer, mwID) and effDict:
|
| | | PlayerControl.NotifyCode(curPlayer, "SignInText1", [mwID, effDict.keys()[0], effDict.values()[0]])
|
| | |
|
| | |
| | | packSpace = ItemCommon.GetItemPackSpace(curPlayer, IPY_GameWorld.rptItem, signCount)
|
| | | if packSpace >= signCount:
|
| | | for awardInfo in awardInfoList:
|
| | | ItemControler.GivePlayerItem(curPlayer, awardInfo[0], awardInfo[1], awardInfo[2], [IPY_GameWorld.rptItem], True, showSysInfo=True) |
| | | ItemControler.GivePlayerItem(curPlayer, awardInfo[0], awardInfo[1], 0, [IPY_GameWorld.rptItem]) |
| | | else:
|
| | | GameWorld.DebugLog("背包已满 邮件发送物品")
|
| | | PlayerControl.SendMailByKey(mailTypeKey, [curPlayer.GetPlayerID()], awardInfoList)
|