| | |
| | | import ItemControler
|
| | | import PlayerBeauty
|
| | | import GameWorld
|
| | | import ObjPool
|
| | |
|
| | | import random
|
| | | import time
|
| | |
| | | randRow = random.randint(1, randRowMax)
|
| | | randCol = random.randint(1, randColMax)
|
| | | sceneryValue = randRow * 100 + randCol * 10 + sceneryType
|
| | | PlayerControl.NomalDictSetProperty(curPlayer, ChConfig.Def_PDict_TravelScenery, sceneryValue)
|
| | | PlayerControl.NomalDictSetProperty(curPlayer, ChConfig.Def_PDict_TravelSceneryState, sceneryValue)
|
| | | PlayerControl.NomalDictSetProperty(curPlayer, ChConfig.Def_PDict_TravelSceneryLVInfo, 0)
|
| | | PlayerControl.NomalDictSetProperty(curPlayer, ChConfig.Def_PDict_TravelState, 0)
|
| | | GameWorld.DebugLog(" 景观位置: randRow=%s,randCol=%s,sceneryValue=%s" % (randRow, randCol, sceneryValue))
|
| | |
| | | return sceneryType, randRow, randCol
|
| | |
|
| | | def __getSceneryInfo(curPlayer):
|
| | | sceneryValue = curPlayer.NomalDictGetProperty(ChConfig.Def_PDict_TravelScenery)
|
| | | sRow = sceneryValue / 100
|
| | | sceneryValue = curPlayer.NomalDictGetProperty(ChConfig.Def_PDict_TravelSceneryState)
|
| | | found = sceneryValue / 1000 # 是否已被找到
|
| | | sRow = sceneryValue % 1000 / 100
|
| | | sCol = sceneryValue % 100 / 10
|
| | | sceneryType = sceneryValue % 10
|
| | | return sceneryType, sRow, sCol
|
| | | return sceneryType, sRow, sCol, found
|
| | |
|
| | | def SetSceneryFound(curPlayer):
|
| | | sceneryValue = curPlayer.NomalDictGetProperty(ChConfig.Def_PDict_TravelSceneryState)
|
| | | sceneryValue = sceneryValue % 1000 + 1000
|
| | | PlayerControl.NomalDictSetProperty(curPlayer, ChConfig.Def_PDict_TravelSceneryState, sceneryValue)
|
| | | GameWorld.DebugLog(" 设置景观被找到了: sceneryValue=%s" % sceneryValue)
|
| | | return
|
| | |
|
| | | def __checkSceneryOpend(curPlayer):
|
| | | ## 检查景观相关格子是否已全部打开
|
| | | sceneryType, sRow, sCol = __getSceneryInfo(curPlayer)
|
| | | sceneryType, sRow, sCol, _ = __getSceneryInfo(curPlayer)
|
| | | if sceneryType not in SceneryTypeSet:
|
| | | return
|
| | | rowSet, colSet = SceneryTypeSet[sceneryType]
|
| | |
| | | if eventID:
|
| | | SetGridState(curPlayer, row, col, GridState_Opend)
|
| | | GameWorld.DebugLog("该游历格子已经有事件ID了! row=%s,col=%s,eventID=%s" % (row, col, eventID))
|
| | | if eventID < EventID_Portal:
|
| | | SetSceneryFound(curPlayer)
|
| | | return
|
| | |
|
| | | # 生成事件ID
|
| | |
| | | if not __checkSceneryOpend(curPlayer):
|
| | | return
|
| | |
|
| | | sceneryType, sRow, sCol = __getSceneryInfo(curPlayer)
|
| | | sceneryType, sRow, sCol, _ = __getSceneryInfo(curPlayer)
|
| | | ipyDataList = IpyGameDataPY.GetIpyGameDataList("TravelScenery", sceneryType)
|
| | | if not ipyDataList:
|
| | | return
|
| | |
| | |
|
| | | gridList = []
|
| | | for row, col in syncGridList:
|
| | | grid = ObjPool.GetPoolMgr().acquire(ChPyNetSendPack.tagSCTravelGrid)
|
| | | grid = ChPyNetSendPack.tagSCTravelGrid()
|
| | | grid.Row = row
|
| | | grid.Col = col
|
| | | grid.State = GetGridState(curPlayer, row, col)
|
| | | grid.Multi = GetGridMulti(curPlayer, row, col)
|
| | | grid.EventID = GetGridEventID(curPlayer, row, col)
|
| | | grid.EventID = GetGridEventID(curPlayer, row, col) if grid.State == GridState_Opend else 0
|
| | | gridList.append(grid)
|
| | |
|
| | | sceneryType, sRow, sCol = __getSceneryInfo(curPlayer)
|
| | | clientPack = ObjPool.GetPoolMgr().acquire(ChPyNetSendPack.tagSCTravelInfo)
|
| | | sceneryType, sRow, sCol, found = __getSceneryInfo(curPlayer)
|
| | | clientPack = ChPyNetSendPack.tagSCTravelInfo()
|
| | | clientPack.Energy = curPlayer.NomalDictGetProperty(ChConfig.Def_PDict_TravelEnergy)
|
| | | clientPack.EnergyTime = curPlayer.NomalDictGetProperty(ChConfig.Def_PDict_TravelEnergyTime)
|
| | | clientPack.TravelCnt = curPlayer.NomalDictGetProperty(ChConfig.Def_PDict_TravelCnt)
|
| | | clientPack.SceneryType = sceneryType
|
| | | clientPack.SceneryRow = sRow
|
| | | clientPack.SceneryCol = sCol
|
| | | clientPack.SceneryType = sceneryType if found else 0
|
| | | clientPack.SceneryRow = sRow if found else 0
|
| | | clientPack.SceneryCol = sCol if found else 0
|
| | | clientPack.SceneryLVInfo = curPlayer.NomalDictGetProperty(ChConfig.Def_PDict_TravelSceneryLVInfo)
|
| | | clientPack.Result = result
|
| | | clientPack.GridList = gridList
|