PGRData/Resources/Scripts/XConfig/XRpgMakerGameConfigs.lua
2022-12-26 14:06:01 +05:30

1199 lines
No EOL
43 KiB
Lua
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

local tableInsert = table.insert
local tableSort = table.sort
local ipairs = ipairs
local pairs = pairs
local stringGsub = string.gsub
local CSXTextManagerGetText = CS.XTextManager.GetText
local TABLE_CHAPTER_PATH = "Share/MiniActivity/RpgMakerGame/RpgMakerGameChapter.tab"
local TABLE_STAGE_PATH = "Share/MiniActivity/RpgMakerGame/RpgMakerGameStage.tab"
local TABLE_STAR_CONDITION_PATH = "Share/MiniActivity/RpgMakerGame/RpgMakerGameStarCondition.tab"
local TABLE_ROLE_PATH = "Share/MiniActivity/RpgMakerGame/RpgMakerGameRole.tab"
local TABLE_MAP_PATH = "Share/MiniActivity/RpgMakerGame/RpgMakerGameMap.tab" --
local TABLE_START_POINT_PATH = "Share/MiniActivity/RpgMakerGame/RpgMakerGameStartPoint.tab"
local TABLE_END_POINT_PATH = "Share/MiniActivity/RpgMakerGame/RpgMakerGameEndPoint.tab"
local TABLE_BLOCK_PATH = "Share/MiniActivity/RpgMakerGame/RpgMakerGameBlock.tab"
local TABLE_GAP_PATH = "Share/MiniActivity/RpgMakerGame/RpgMakerGameGap.tab"
local TABLE_MONSTER_PATH = "Share/MiniActivity/RpgMakerGame/RpgMakerGameMonster.tab"
local TABLE_TRIGGER_PATH = "Share/MiniActivity/RpgMakerGame/RpgMakerGameTrigger.tab"
local TABLE_ACTIVITY_PATH = "Share/MiniActivity/RpgMakerGame/RpgMakerGameActivity.tab"
local TABLE_HINT_PATH = "Client/MiniActivity/RpgMakerGame/RpgMakerGameHint.tab"
local TABLE_HINT_ICON_PATH = "Client/MiniActivity/RpgMakerGame/RpgMakerGameHintIcon.tab"
local TABLE_RANDOM_DIALOG_BOX_PATH = "Client/MiniActivity/RpgMakerGame/RpgMakerGameRandomDialogBox.tab"
local TABLE_HINT_DIALOG_BOX_PATH = "Client/MiniActivity/RpgMakerGame/RpgMakerGameHintDialogBox.tab"
local TABLE_MODEL_PATH = "Client/MiniActivity/RpgMakerGame/RpgMakerGameModel.tab"
local TABLE_ANIMATION_PATH = "Client/MiniActivity/RpgMakerGame/RpgMakerGameAnimation.tab"
local RpgMakerGameChapterConfigs = {}
local RpgMakerGameStageConfigs = {}
local RpgMakerGameStarConditionConfigs = {}
local RpgMakerGameRoleConfigs = {}
local RpgMakerGameMapConfigs = {}
local RpgMakerGameStartPointConfigs = {}
local RpgMakerGameEndPointConfigs = {}
local RpgMakerGameBlockConfigs = {}
local RpgMakerGameGapConfigs = {}
local RpgMakerGameMonsterConfigs = {}
local RpgMakerGameTriggerConfigs = {}
local RpgMakerGameHintConfigs = {}
local RpgMakerGameHintIconConfigs = {}
local RpgMakerGameActivityConfigs = {}
local RpgMakerGameRandomDialogBoxConfigs = {}
local RpgMakerGameHintDialogBoxConfigs = {}
local RpgMakerGameModelConfigs = {}
local RpgMakerGameAnimationConfigs = {}
local RpgMakerGameChapterIdList = {}
local RpgMakerGameChapterIdToStageIdListDic = {}
local RpgMakerGameStageIdToStarConditionIdListDic = {}
local RpgMakerGameRoleIdList = {}
local RpgMakerGameStageIdList = {}
local RpgMakerGameMapIdToBlockIdList = {}
local RpgMakerGameMapIdToGapIdList = {}
local RpgMakerGameMapIdToMonsterIdList = {}
local RpgMakerGameMapIdToTriggerIdList = {}
local RpgMakerGameMapIdToHintIdList = {}
local RpgMakerGameRandomDialogBoxIdList = {}
local DefaultActivityId = 1
XRpgMakerGameConfigs = XRpgMakerGameConfigs or {}
--关卡状态
XRpgMakerGameConfigs.RpgMakerGameStageStatus = {
Lock = 1, --未开启
UnLock = 2, --已开启
Clear = 3, --已通关
}
--方向
XRpgMakerGameConfigs.RpgMakerGameMoveDirection = {
MoveLeft = 1,
MoveRight = 2,
MoveUp = 3,
MoveDown = 4,
}
--行动类型
XRpgMakerGameConfigs.RpgMakerGameActionType = {
ActionNone = 0,
ActionPlayerMove = 1, --玩家移动
ActionKillMonster = 2, --杀死怪物
ActionStageWin = 3, --关卡胜利
ActionEndPointOpen = 4, --终点开启
ActionMonsterRunAway = 5, --怪物逃跑
ActionMonsterChangeDirection = 6, --怪物调整方向
ActionMonsterKillPlayer = 7, --怪物杀死玩家
ActionTriggerStatusChange = 8, --机关状态改变
ActionMonsterPatrol = 9, --怪物巡逻
ActionUnlockRole = 10, --解锁角色
ActionMonsterPatrolLine = 11, --怪物巡逻路线
}
--缝隙类型
XRpgMakerGameConfigs.RpgMakerGapDirection = {
GridLeft = 1, --格子左边线
GridRight = 2, --格子右边线
GridTop = 3, --格子顶部线
GridBottom = 4, --格子底部线
}
--终点类型
XRpgMakerGameConfigs.XRpgMakerGameEndPointType = {
DefaultClose = 0, --默认关闭
DefaultOpen = 1, --默认开启
}
--阻挡状态
XRpgMakerGameConfigs.XRpgMakerGameBlockStatus = {
UnBlock = 0, --不阻挡
Block = 1, --阻挡
}
--怪物类型
XRpgMakerGameConfigs.XRpgMakerGameMonsterType = {
Normal = 1,
BOSS = 2,
}
--怪物攻击范围方向
XRpgMakerGameConfigs.XRpgMakerGameMonsterViewAreaType = {
ViewFront = 1, --怪物的前方
ViewBack = 2, --怪物的后面
ViewLeft = 3, --怪物的左边
ViewRight = 4, --怪物的右边
}
--机关类型
XRpgMakerGameConfigs.XRpgMakerGameTriggerType = {
Trigger1 = 1, --本身是不能阻挡可以触发类型2的机关状态转变
Trigger2 = 2, --由类型1触发
Trigger3 = 3, --玩家通过后,会从通过状态转变为阻挡状态
}
--一个关卡最多星星数
XRpgMakerGameConfigs.MaxStarCount = 3
--延迟被攻击回调的时间
XRpgMakerGameConfigs.BeAtkEffectDelayCallbackTime = CS.XGame.ClientConfig:GetInt("RpgMakerGamePlayBeAtkEffectDelayCallbackTime")
local InitRpgMakerGameChapterIdList = function()
for id in pairs(RpgMakerGameChapterConfigs) do
tableInsert(RpgMakerGameChapterIdList, id)
end
tableSort(RpgMakerGameChapterIdList, function(a, b)
return a < b
end)
end
local InitRpgMakerGameChapterIdToStageIdListDic = function()
local chapterId
for _, v in pairs(RpgMakerGameStageConfigs) do
chapterId = v.ChapterId
if not RpgMakerGameChapterIdToStageIdListDic[chapterId] then
RpgMakerGameChapterIdToStageIdListDic[chapterId] = {}
end
tableInsert(RpgMakerGameChapterIdToStageIdListDic[chapterId], v.Id)
end
for chapterId, stageIdList in pairs(RpgMakerGameChapterIdToStageIdListDic) do
tableSort(stageIdList, function(a, b)
return a < b
end)
end
end
local InitRpgMakerGameStageIdToStarConditionIdListDic = function()
local stageId
for _, v in pairs(RpgMakerGameStarConditionConfigs) do
stageId = v.StageId
if not RpgMakerGameStageIdToStarConditionIdListDic[stageId] then
RpgMakerGameStageIdToStarConditionIdListDic[stageId] = {}
end
tableInsert(RpgMakerGameStageIdToStarConditionIdListDic[stageId], v.Id)
end
end
local InitRpgMakerGameRoleIdList = function()
local tempTable = {}
for _, v in pairs(RpgMakerGameRoleConfigs) do
tableInsert(tempTable, v)
end
tableSort(tempTable, function(a, b)
if a.RoleOrder ~= b.RoleOrder then
return a.RoleOrder < b.RoleOrder
end
return a.Id < b.Id
end)
for _, v in ipairs(tempTable) do
tableInsert(RpgMakerGameRoleIdList, v.Id)
end
end
local InitRpgMakerGameStageIdList = function()
for _, v in pairs(RpgMakerGameStageConfigs) do
tableInsert(RpgMakerGameStageIdList, v.Id)
end
tableSort(RpgMakerGameStageIdList, function(a, b)
return a < b
end)
end
local InitRpgMakerGameMapIdToBlockIdList = function()
local mapId
for _, v in pairs(RpgMakerGameBlockConfigs) do
mapId = v.MapId
if not RpgMakerGameMapIdToBlockIdList[mapId] then
RpgMakerGameMapIdToBlockIdList[mapId] = {}
end
tableInsert(RpgMakerGameMapIdToBlockIdList[mapId], v.Id)
end
end
local InitRpgMakerGameMapIdToGapIdList = function()
local mapId
for _, v in pairs(RpgMakerGameGapConfigs) do
mapId = v.MapId
if not RpgMakerGameMapIdToGapIdList[mapId] then
RpgMakerGameMapIdToGapIdList[mapId] = {}
end
tableInsert(RpgMakerGameMapIdToGapIdList[mapId], v.Id)
end
end
local InitRpgMakerGameMapIdToMonsterIdList = function()
local mapId
for _, v in pairs(RpgMakerGameMonsterConfigs) do
mapId = v.MapId
if not RpgMakerGameMapIdToMonsterIdList[mapId] then
RpgMakerGameMapIdToMonsterIdList[mapId] = {}
end
tableInsert(RpgMakerGameMapIdToMonsterIdList[mapId], v.Id)
end
end
local InitRpgMakerGameMapIdToTriggerIdList = function()
local mapId
for _, v in pairs(RpgMakerGameTriggerConfigs) do
mapId = v.MapId
if not RpgMakerGameMapIdToTriggerIdList[mapId] then
RpgMakerGameMapIdToTriggerIdList[mapId] = {}
end
tableInsert(RpgMakerGameMapIdToTriggerIdList[mapId], v.Id)
end
end
local InitRpgMakerGameMapIdToHintIdList = function()
local mapId
for _, v in pairs(RpgMakerGameHintConfigs) do
mapId = v.MapId
if not RpgMakerGameMapIdToHintIdList[mapId] then
RpgMakerGameMapIdToHintIdList[mapId] = {}
end
tableInsert(RpgMakerGameMapIdToHintIdList[mapId], v.Id)
end
end
local InitActivityConfig = function()
for activityId, config in pairs(RpgMakerGameActivityConfigs) do
if XTool.IsNumberValid(config.ActivityTimeId) then
DefaultActivityId = activityId
break
end
DefaultActivityId = activityId
end
end
local InitRpgMakerGameRandomDialogBoxIdList = function()
for _, v in pairs(RpgMakerGameRandomDialogBoxConfigs) do
tableInsert(RpgMakerGameRandomDialogBoxIdList, v.Id)
end
tableSort(RpgMakerGameRandomDialogBoxIdList, function(a, b)
return a < b
end)
end
function XRpgMakerGameConfigs.Init()
RpgMakerGameChapterConfigs = XTableManager.ReadByIntKey(TABLE_CHAPTER_PATH, XTable.XTableRpgMakerGameChapter, "Id")
RpgMakerGameStageConfigs = XTableManager.ReadByIntKey(TABLE_STAGE_PATH, XTable.XTableRpgMakerGameStage, "Id")
RpgMakerGameStarConditionConfigs = XTableManager.ReadByIntKey(TABLE_STAR_CONDITION_PATH, XTable.XTableRpgMakerGameStarCondition, "Id")
RpgMakerGameRoleConfigs = XTableManager.ReadByIntKey(TABLE_ROLE_PATH, XTable.XTableRpgMakerGameRole, "Id")
RpgMakerGameMapConfigs = XTableManager.ReadByIntKey(TABLE_MAP_PATH, XTable.XTableRpgMakerGameMap, "Id")
RpgMakerGameStartPointConfigs = XTableManager.ReadByIntKey(TABLE_START_POINT_PATH, XTable.XTableRpgMakerGameStartPoint, "Id")
RpgMakerGameEndPointConfigs = XTableManager.ReadByIntKey(TABLE_END_POINT_PATH, XTable.XTableRpgMakerGameEndPoint, "Id")
RpgMakerGameBlockConfigs = XTableManager.ReadByIntKey(TABLE_BLOCK_PATH, XTable.XTableRpgMakerGameBlock, "Id")
RpgMakerGameGapConfigs = XTableManager.ReadByIntKey(TABLE_GAP_PATH, XTable.XTableRpgMakerGameGap, "Id")
RpgMakerGameMonsterConfigs = XTableManager.ReadByIntKey(TABLE_MONSTER_PATH, XTable.XTableRpgMakerGameMonster, "Id")
RpgMakerGameTriggerConfigs = XTableManager.ReadByIntKey(TABLE_TRIGGER_PATH, XTable.XTableRpgMakerGameTrigger, "Id")
RpgMakerGameHintConfigs = XTableManager.ReadByIntKey(TABLE_HINT_PATH, XTable.XTableRpgMakerGameHint, "Id")
RpgMakerGameHintIconConfigs = XTableManager.ReadByStringKey(TABLE_HINT_ICON_PATH, XTable.XTableRpgMakerGameHintIcon, "Key")
RpgMakerGameActivityConfigs = XTableManager.ReadByIntKey(TABLE_ACTIVITY_PATH, XTable.XTableRpgMakerGameActivity, "Id")
RpgMakerGameRandomDialogBoxConfigs = XTableManager.ReadByIntKey(TABLE_RANDOM_DIALOG_BOX_PATH, XTable.XTableRpgMakerGameRandomDialogBox, "Id")
RpgMakerGameHintDialogBoxConfigs = XTableManager.ReadByIntKey(TABLE_HINT_DIALOG_BOX_PATH, XTable.XTableRpgMakerGameHintDialogBox, "StageId")
RpgMakerGameModelConfigs = XTableManager.ReadByStringKey(TABLE_MODEL_PATH, XTable.XTableRpgMakerGameModel, "Key")
RpgMakerGameAnimationConfigs = XTableManager.ReadByStringKey(TABLE_ANIMATION_PATH, XTable.XTableRpgMakerGameAnimation, "ModelName")
InitRpgMakerGameChapterIdList()
InitRpgMakerGameChapterIdToStageIdListDic()
InitRpgMakerGameStageIdToStarConditionIdListDic()
InitRpgMakerGameRoleIdList()
InitRpgMakerGameStageIdList()
InitRpgMakerGameMapIdToBlockIdList()
InitRpgMakerGameMapIdToGapIdList()
InitRpgMakerGameMapIdToMonsterIdList()
InitRpgMakerGameMapIdToTriggerIdList()
InitRpgMakerGameMapIdToHintIdList()
InitActivityConfig()
InitRpgMakerGameRandomDialogBoxIdList()
end
-----------------RpgMakerGameChapter begin--------------------
local GetRpgMakerGameChapterConfig = function(id)
local config = RpgMakerGameChapterConfigs[id]
if not config then
XLog.ErrorTableDataNotFound("XRpgMakerGameConfigs.GetRpgMakerGameChapterConfig", "RpgMakerGameChapterCfg", TABLE_CHAPTER_PATH, "Id", tostring(id))
return
end
return config
end
function XRpgMakerGameConfigs.GetRpgMakerGameChapterIdList()
return RpgMakerGameChapterIdList
end
function XRpgMakerGameConfigs.GetRpgMakerGameChapterId(index)
return RpgMakerGameChapterIdList[index]
end
function XRpgMakerGameConfigs.GetRpgMakerGameChapterOpenTimeId(id)
local config = GetRpgMakerGameChapterConfig(id)
return config.OpenTimeId
end
function XRpgMakerGameConfigs.GetRpgMakerGameChapterName(id)
local config = GetRpgMakerGameChapterConfig(id)
return config.Name
end
function XRpgMakerGameConfigs.GetRpgMakerGameChapterTagBtnBG(id)
local config = GetRpgMakerGameChapterConfig(id)
return config.TagBtnBG
end
function XRpgMakerGameConfigs.GetRpgMakerGameChapterPrefab(id)
local config = GetRpgMakerGameChapterConfig(id)
return config.Prefab
end
function XRpgMakerGameConfigs.GetRpgMakerGameStageIdList(chapterId)
return RpgMakerGameChapterIdToStageIdListDic[chapterId]
end
-----------------RpgMakerGameChapter end--------------------
-----------------RpgMakerGameStage begin--------------------
local GetRpgMakerGameStageConfig = function(id)
local config = RpgMakerGameStageConfigs[id]
if not config then
XLog.ErrorTableDataNotFound("XRpgMakerGameConfigs.GetRpgMakerGameStageConfig", "RpgMakerGameStageConfig", TABLE_STAGE_PATH, "Id", tostring(id))
return
end
return config
end
function XRpgMakerGameConfigs.GetRpgMakerGameStageChapterId(id)
local config = GetRpgMakerGameStageConfig(id)
return config.ChapterId
end
function XRpgMakerGameConfigs.GetRpgMakerGameStagePreStage(id)
local config = GetRpgMakerGameStageConfig(id)
return config.PreStage
end
function XRpgMakerGameConfigs.GetRpgMakerGameStageBG(id)
local config = GetRpgMakerGameStageConfig(id)
return config.BG
end
function XRpgMakerGameConfigs.GetRpgMakerGameStagePrefab(id)
local config = GetRpgMakerGameStageConfig(id)
return config.Prefab
end
function XRpgMakerGameConfigs.GetRpgMakerGameStarConditionIdList(stageId)
return RpgMakerGameStageIdToStarConditionIdListDic[stageId]
end
function XRpgMakerGameConfigs.GetRpgMakerGameStageName(id)
local config = GetRpgMakerGameStageConfig(id)
return config.Name or ""
end
function XRpgMakerGameConfigs.GetRpgMakerGameStageHint(id)
local config = GetRpgMakerGameStageConfig(id)
return config.StageHint or ""
end
function XRpgMakerGameConfigs.GetRpgMakerGameAllStageIdList()
return RpgMakerGameStageIdList
end
function XRpgMakerGameConfigs.GetRpgMakerGameNextStageId(currStageId)
local chapterId = XRpgMakerGameConfigs.GetRpgMakerGameStageChapterId(currStageId)
local stageIdList = XRpgMakerGameConfigs.GetRpgMakerGameStageIdList(chapterId)
local nextStageId = 0
for i, stageId in ipairs(stageIdList or {}) do
if stageId == currStageId then
nextStageId = stageIdList[i + 1] or 0
return nextStageId
end
end
return nextStageId
end
function XRpgMakerGameConfigs.GetRpgMakerGameStageLoseHintList(id)
local config = GetRpgMakerGameStageConfig(id)
return config.LoseHint or ""
end
function XRpgMakerGameConfigs.GetRpgMakerGameNumberName(id)
local config = GetRpgMakerGameStageConfig(id)
return config.NumberName or ""
end
-----------------RpgMakerGameStage end--------------------
-----------------RpgMakerGameStarCondition 通关获得的星星条件 begin--------------------
local GetRpgMakerGameStarConditionConfig = function(id)
local config = RpgMakerGameStarConditionConfigs[id]
if not config then
XLog.ErrorTableDataNotFound("XRpgMakerGameConfigs.GetRpgMakerGameStarConditionConfig", "RpgMakerGameStarConditionConfig", TABLE_STAR_CONDITION_PATH, "Id", tostring(id))
return
end
return config
end
function XRpgMakerGameConfigs.GetRpgMakerGameStarConditionStar(id)
local config = GetRpgMakerGameStarConditionConfig(id)
return config.Star
end
function XRpgMakerGameConfigs.GetRpgMakerGameStarConditionStepCount(id)
local config = GetRpgMakerGameStarConditionConfig(id)
return config.StepCount
end
function XRpgMakerGameConfigs.GetRpgMakerGameStarConditionMonsterCount(id)
local config = GetRpgMakerGameStarConditionConfig(id)
return config.MonsterCount
end
function XRpgMakerGameConfigs.GetRpgMakerGameStarConditionMonsterBossCount(id)
local config = GetRpgMakerGameStarConditionConfig(id)
return config.MonsterBossCount or 0
end
function XRpgMakerGameConfigs.GetRpgMakerGameStarConditionDesc(id)
local config = GetRpgMakerGameStarConditionConfig(id)
return config.ConditionDesc
end
function XRpgMakerGameConfigs.GetRpgMakerGameTotalStar(chapterId)
local stageIdList = XRpgMakerGameConfigs.GetRpgMakerGameStageIdList(chapterId)
local starConditionIdList
local totalStarCount = 0
for _, stageId in ipairs(stageIdList) do
starConditionIdList = XRpgMakerGameConfigs.GetRpgMakerGameStarConditionIdList(stageId)
for _, starConditionId in ipairs(starConditionIdList) do
totalStarCount = totalStarCount + XRpgMakerGameConfigs.GetRpgMakerGameStarConditionStar(starConditionId)
end
end
return totalStarCount
end
function XRpgMakerGameConfigs.GetRpgMakerGameStageTotalStar(stageId)
local starConditionIdList = XRpgMakerGameConfigs.GetRpgMakerGameStarConditionIdList(stageId)
local totalCount = 0
for _, starConditionId in ipairs(starConditionIdList) do
totalCount = totalCount + XRpgMakerGameConfigs.GetRpgMakerGameStarConditionStar(starConditionId)
end
return totalCount
end
-----------------RpgMakerGameStarCondition 通关获得的星星条件 end----------------------
-----------------RpgMakerGameRole 角色列表 begin--------------------
local GetRpgMakerGameRoleConfig = function(id)
local config = RpgMakerGameRoleConfigs[id]
if not config then
XLog.ErrorTableDataNotFound("XRpgMakerGameConfigs.GetRpgMakerGameRoleConfig", "RpgMakerGameRoleConfigs", TABLE_ROLE_PATH, "Id", tostring(id))
return
end
return config
end
function XRpgMakerGameConfigs.GetRpgMakerGameRoleIdList()
return RpgMakerGameRoleIdList
end
function XRpgMakerGameConfigs.GetRpgMakerGameRoleUnlockChapterId(id)
local config = GetRpgMakerGameRoleConfig(id)
return config.UnlockChapterId
end
function XRpgMakerGameConfigs.GetRpgMakerGameRoleName(id)
local config = GetRpgMakerGameRoleConfig(id)
return config.Name or ""
end
function XRpgMakerGameConfigs.GetRpgMakerGameRoleStyle(id)
local config = GetRpgMakerGameRoleConfig(id)
return config.Style or ""
end
function XRpgMakerGameConfigs.GetRpgMakerGameRoleModelAssetPath(id)
local config = GetRpgMakerGameRoleConfig(id)
return config.ModelAssetPath
end
function XRpgMakerGameConfigs.GetRpgMakerGameRoleInfoName(id)
local config = GetRpgMakerGameRoleConfig(id)
return config.InfoName or ""
end
function XRpgMakerGameConfigs.GetRpgMakerGameRoleInfo(id)
local config = GetRpgMakerGameRoleConfig(id)
return config.Info or ""
end
function XRpgMakerGameConfigs.GetRpgMakerGameRoleHeadPath(id)
local config = GetRpgMakerGameRoleConfig(id)
return config.HeadPath
end
function XRpgMakerGameConfigs.GetRpgMakerGameRoleLockTipsDesc(id)
local config = GetRpgMakerGameRoleConfig(id)
return config.LockTipsDesc or ""
end
--根据解锁的关卡id返回对应的角色id列表
function XRpgMakerGameConfigs.GetRpgMakerGameRoleIdListByUnlockChapterId(unlockChapterId)
local roleIdList = XRpgMakerGameConfigs.GetRpgMakerGameRoleIdList()
local unlockChapterIdCfg
local roleIdList = {}
for _, roleId in ipairs(roleIdList) do
unlockChapterIdCfg = XRpgMakerGameConfigs.GetRpgMakerGameRoleUnlockChapterId(roleId)
if unlockChapterIdCfg == unlockChapterId then
tableInsert(roleIdList, roleId)
end
end
return roleIdList
end
-----------------RpgMakerGameRole 角色列表 end--------------------
-----------------RpgMakerGameMap 地图 begin-----------------------
local GetRpgMakerGameMapConfigs = function(id)
local config = RpgMakerGameMapConfigs[id]
if not config then
XLog.ErrorTableDataNotFound("XRpgMakerGameConfigs.GetRpgMakerGameMapConfigs", "RpgMakerGameMapConfigs", TABLE_MAP_PATH, "Id", tostring(id))
return
end
return config
end
function XRpgMakerGameConfigs.GetRpgMakerGameMaxRound(id)
local config = GetRpgMakerGameMapConfigs(id)
return config.MaxRound
end
function XRpgMakerGameConfigs.GetRpgMakerGameStartPointId(id)
local config = GetRpgMakerGameMapConfigs(id)
return config.StartPointId
end
function XRpgMakerGameConfigs.GetRpgMakerGameEndPointId(id)
local config = GetRpgMakerGameMapConfigs(id)
return config.EndPointId
end
function XRpgMakerGameConfigs.GetRpgMakerGamePrefab(id)
local config = GetRpgMakerGameMapConfigs(id)
return config.Prefab
end
--行
function XRpgMakerGameConfigs.GetRpgMakerGameRow(id)
local config = GetRpgMakerGameMapConfigs(id)
return config.Row
end
--列
function XRpgMakerGameConfigs.GetRpgMakerGameCol(id)
local config = GetRpgMakerGameMapConfigs(id)
return config.Col
end
-----------------RpgMakerGameMap 地图 end-------------------------
-----------------RpgMakerGameStartPoint 玩家起点 begin-----------------------
local GetRpgMakerGameStartPointConfigs = function(id)
local config = RpgMakerGameStartPointConfigs[id]
if not config then
XLog.ErrorTableDataNotFound("XRpgMakerGameConfigs.GetRpgMakerGameStartPointConfigs", "RpgMakerGameStartPointConfigs", TABLE_START_POINT_PATH, "Id", tostring(id))
return
end
return config
end
function XRpgMakerGameConfigs.GetRpgMakerGameStartPointX(id)
local config = GetRpgMakerGameStartPointConfigs(id)
return config.X
end
function XRpgMakerGameConfigs.GetRpgMakerGameStartPointY(id)
local config = GetRpgMakerGameStartPointConfigs(id)
return config.Y
end
function XRpgMakerGameConfigs.GetRpgMakerGameStartPointDirection(id)
local config = GetRpgMakerGameStartPointConfigs(id)
return config.Direction
end
function XRpgMakerGameConfigs.IsRpgMakerGameStartPoint(mapId, x, y)
local startPointId = XRpgMakerGameConfigs.GetRpgMakerGameStartPointId(mapId)
local startPointX = XRpgMakerGameConfigs.GetRpgMakerGameStartPointX(startPointId)
local startPointY = XRpgMakerGameConfigs.GetRpgMakerGameStartPointY(startPointId)
return startPointX == x and startPointY == y
end
-----------------RpgMakerGameStartPoint 玩家起点 end-------------------------
-----------------RpgMakerGameEndPoint 终点 begin-----------------------
local GetRpgMakerGameEndPointConfigs = function(id)
local config = RpgMakerGameEndPointConfigs[id]
if not config then
XLog.ErrorTableDataNotFound("XRpgMakerGameConfigs.GetRpgMakerGameEndPointConfigs", "RpgMakerGameEndPointConfigs", TABLE_END_POINT_PATH, "Id", tostring(id))
return
end
return config
end
function XRpgMakerGameConfigs.GetRpgMakerGameEndPointX(id)
local config = GetRpgMakerGameEndPointConfigs(id)
return config.X
end
function XRpgMakerGameConfigs.GetRpgMakerGameEndPointY(id)
local config = GetRpgMakerGameEndPointConfigs(id)
return config.Y
end
function XRpgMakerGameConfigs.GetRpgMakerGameEndPointType(id)
local config = GetRpgMakerGameEndPointConfigs(id)
return config.Type
end
function XRpgMakerGameConfigs.IsRpgMakerGameEndPoint(mapId, x, y)
local endPointId = XRpgMakerGameConfigs.GetRpgMakerGameEndPointId(mapId)
local endPointX = XRpgMakerGameConfigs.GetRpgMakerGameEndPointX(endPointId)
local endPointY = XRpgMakerGameConfigs.GetRpgMakerGameEndPointY(endPointId)
return endPointX == x and endPointY == y
end
-----------------RpgMakerGameEndPoint 终点 end-------------------------
-----------------RpgMakerGameBlock 阻挡物 begin-----------------------
local GetRpgMakerGameBlockConfigs = function(id)
local config = RpgMakerGameBlockConfigs[id]
if not config then
XLog.ErrorTableDataNotFound("XRpgMakerGameConfigs.GetRpgMakerGameBlockConfigs", "RpgMakerGameBlockConfigs", TABLE_BLOCK_PATH, "Id", tostring(id))
return
end
return config
end
function XRpgMakerGameConfigs.GetRpgMakerGameBlockRow(id)
local config = GetRpgMakerGameBlockConfigs(id)
return config.Row
end
function XRpgMakerGameConfigs.GetRpgMakerGameBlockColList(id)
local config = GetRpgMakerGameBlockConfigs(id)
return config.Col
end
function XRpgMakerGameConfigs.GetRpgMakerGameMapIdToBlockIdList(mapId)
return RpgMakerGameMapIdToBlockIdList[mapId] or {}
end
function XRpgMakerGameConfigs.IsRpgMakerGameHaveBlock(mapId)
local blockIdList = XRpgMakerGameConfigs.GetRpgMakerGameMapIdToBlockIdList(mapId)
local colList
for _, blockId in ipairs(blockIdList) do
colList = XRpgMakerGameConfigs.GetRpgMakerGameBlockColList(blockId)
for _, col in ipairs(colList) do
if not XTool.IsNumberValid(col) then
return true
end
end
end
return false
end
-----------------RpgMakerGameBlock 阻挡物 end-------------------------
-----------------RpgMakerGameGap 墙 begin-----------------------
local GetRpgMakerGameGapConfigs = function(id)
local config = RpgMakerGameGapConfigs[id]
if not config then
XLog.ErrorTableDataNotFound("XRpgMakerGameConfigs.GetRpgMakerGameGapConfigs", "RpgMakerGameGapConfigs", TABLE_GAP_PATH, "Id", tostring(id))
return
end
return config
end
function XRpgMakerGameConfigs.GetRpgMakerGameGapX(id)
local config = GetRpgMakerGameGapConfigs(id)
return config.X
end
function XRpgMakerGameConfigs.GetRpgMakerGameGapY(id)
local config = GetRpgMakerGameGapConfigs(id)
return config.Y
end
function XRpgMakerGameConfigs.GetRpgMakerGameGapDirection(id)
local config = GetRpgMakerGameGapConfigs(id)
return config.Direction
end
function XRpgMakerGameConfigs.GetRpgMakerGameMapIdToGapIdList(id)
return RpgMakerGameMapIdToGapIdList[id] or {}
end
--获得相同x和y坐标的gapId列表
function XRpgMakerGameConfigs.GetRpgMakerGameSameXYGapIdIdList(mapId, x, y)
local gapIdList = XRpgMakerGameConfigs.GetRpgMakerGameMapIdToGapIdList(mapId)
local gapX
local gapY
local sameXYGapIdList = {}
for _, gapId in ipairs(gapIdList) do
gapX = XRpgMakerGameConfigs.GetRpgMakerGameGapX(gapId)
gapY = XRpgMakerGameConfigs.GetRpgMakerGameGapY(gapId)
if gapX == x and gapY == y then
tableInsert(sameXYGapIdList, gapId)
end
end
return sameXYGapIdList
end
-----------------RpgMakerGameGap 墙 end-------------------------
-----------------RpgMakerGameMonster 怪物 begin-----------------------
local GetRpgMakerGameMonsterConfigs = function(id)
local config = RpgMakerGameMonsterConfigs[id]
if not config then
XLog.ErrorTableDataNotFound("XRpgMakerGameConfigs.GetRpgMakerGameMonsterConfigs", "RpgMakerGameMonsterConfigs", TABLE_MONSTER_PATH, "Id", tostring(id))
return
end
return config
end
function XRpgMakerGameConfigs.GetRpgMakerGameMonsterType(id)
local config = GetRpgMakerGameMonsterConfigs(id)
return config.Type
end
function XRpgMakerGameConfigs.GetRpgMakerGameMonsterX(id)
local config = GetRpgMakerGameMonsterConfigs(id)
return config.X
end
function XRpgMakerGameConfigs.GetRpgMakerGameMonsterY(id)
local config = GetRpgMakerGameMonsterConfigs(id)
return config.Y
end
function XRpgMakerGameConfigs.GetRpgMakerGameMonsterDirection(id)
local config = GetRpgMakerGameMonsterConfigs(id)
return config.Direction
end
function XRpgMakerGameConfigs.GetRpgMakerGameMonsterViewFront(id)
local config = GetRpgMakerGameMonsterConfigs(id)
return config.ViewFront
end
function XRpgMakerGameConfigs.GetRpgMakerGameMonsterViewBack(id)
local config = GetRpgMakerGameMonsterConfigs(id)
return config.ViewBack
end
function XRpgMakerGameConfigs.GetRpgMakerGameMonsterViewLeft(id)
local config = GetRpgMakerGameMonsterConfigs(id)
return config.ViewLeft
end
function XRpgMakerGameConfigs.GetRpgMakerGameMonsterViewRight(id)
local config = GetRpgMakerGameMonsterConfigs(id)
return config.ViewRight
end
function XRpgMakerGameConfigs.GetRpgMakerGameMapIdToMonsterIdList(mapId)
return RpgMakerGameMapIdToMonsterIdList[mapId] or {}
end
function XRpgMakerGameConfigs.GetRpgMakerGameMonsterPrefab(id)
local config = GetRpgMakerGameMonsterConfigs(id)
return config.Prefab
end
function XRpgMakerGameConfigs.GetRpgMakerGameMonsterId(mapId, x, y)
local monsterIdList = XRpgMakerGameConfigs.GetRpgMakerGameMapIdToMonsterIdList(mapId)
local monsterX
local monsterY
for _, monsterId in ipairs(monsterIdList) do
monsterX = XRpgMakerGameConfigs.GetRpgMakerGameMonsterX(monsterId)
monsterY = XRpgMakerGameConfigs.GetRpgMakerGameMonsterY(monsterId)
if monsterX == x and monsterY == y then
return monsterId
end
end
end
function XRpgMakerGameConfigs.GetRpgMakerGameMonsterPatrolIdList(id)
local config = GetRpgMakerGameMonsterConfigs(id)
return config.PatrolId
end
function XRpgMakerGameConfigs.IsRpgMakerGameMonsterTriggerEnd(id)
local config = GetRpgMakerGameMonsterConfigs(id)
return XTool.IsNumberValid(config.TriggerEnd)
end
function XRpgMakerGameConfigs.IsRpgMakerGameHaveMonster(mapId, monsterType)
local monsterIdList = XRpgMakerGameConfigs.GetRpgMakerGameMapIdToMonsterIdList(mapId)
local typeCfg
for _, monsterId in ipairs(monsterIdList) do
typeCfg = XRpgMakerGameConfigs.GetRpgMakerGameMonsterType(monsterId)
if typeCfg == monsterType then
return true
end
end
return false
end
-----------------RpgMakerGameMonster 怪物 end-------------------------
-----------------RpgMakerGameTrigger 机关 begin-----------------------
local GetRpgMakerGameTriggerConfigs = function(id)
local config = RpgMakerGameTriggerConfigs[id]
if not config then
XLog.ErrorTableDataNotFound("XRpgMakerGameConfigs.GetRpgMakerGameTriggerConfigs", "RpgMakerGameTriggerConfigs", TABLE_TRIGGER_PATH, "Id", tostring(id))
return
end
return config
end
function XRpgMakerGameConfigs.GetRpgMakerGameTriggerX(id)
local config = GetRpgMakerGameTriggerConfigs(id)
return config.X
end
function XRpgMakerGameConfigs.GetRpgMakerGameTriggerY(id)
local config = GetRpgMakerGameTriggerConfigs(id)
return config.Y
end
function XRpgMakerGameConfigs.GetRpgMakerGameTriggerDefaultBlock(id)
local config = GetRpgMakerGameTriggerConfigs(id)
return config.DefaultBlock
end
function XRpgMakerGameConfigs.GetRpgMakerGameTriggerType(id)
local config = GetRpgMakerGameTriggerConfigs(id)
return config.Type
end
function XRpgMakerGameConfigs.GetRpgMakerGameMapIdToTriggerIdList(mapId)
return RpgMakerGameMapIdToTriggerIdList[mapId] or {}
end
function XRpgMakerGameConfigs.GetRpgMakerGameTriggerId(mapId, x, y)
local triggerIdList = XRpgMakerGameConfigs.GetRpgMakerGameMapIdToTriggerIdList(mapId)
local triggerX
local triggerY
for _, triggerId in ipairs(triggerIdList) do
triggerX = XRpgMakerGameConfigs.GetRpgMakerGameTriggerX(triggerId)
triggerY = XRpgMakerGameConfigs.GetRpgMakerGameTriggerY(triggerId)
if triggerX == x and triggerY == y then
return triggerId
end
end
end
function XRpgMakerGameConfigs.IsRpgMakerGameHaveTrigger(mapId)
local isHaveType1Trigger, isHaveType2Trigger, isHaveType3Trigger
local triggerIdList = XRpgMakerGameConfigs.GetRpgMakerGameMapIdToTriggerIdList(mapId)
local typeCfg
for _, triggerId in ipairs(triggerIdList) do
typeCfg = XRpgMakerGameConfigs.GetRpgMakerGameTriggerType(triggerId)
if typeCfg == XRpgMakerGameConfigs.XRpgMakerGameTriggerType.Trigger1 then
isHaveType1Trigger = true
elseif typeCfg == XRpgMakerGameConfigs.XRpgMakerGameTriggerType.Trigger2 then
isHaveType2Trigger = true
elseif typeCfg == XRpgMakerGameConfigs.XRpgMakerGameTriggerType.Trigger3 then
isHaveType3Trigger = true
end
if isHaveType1Trigger and isHaveType2Trigger and isHaveType3Trigger then
break
end
end
return isHaveType1Trigger, isHaveType2Trigger, isHaveType3Trigger
end
-----------------RpgMakerGameTrigger 机关 end-------------------------
-----------------RpgMakerGameHint 通关提示 begin-----------------------
local GetRpgMakerGameHintConfig = function(id)
local config = RpgMakerGameHintConfigs[id]
if not config then
XLog.ErrorTableDataNotFound("XRpgMakerGameConfigs.GetRpgMakerGameHintConfigs", "RpgMakerGameHintConfigs", TABLE_HINT_PATH, "Id", tostring(id))
return
end
return config
end
function XRpgMakerGameConfigs.GetRpgMakerGameHintRow(id)
local config = GetRpgMakerGameHintConfig(id)
return config.Row
end
function XRpgMakerGameConfigs.GetRpgMakerGameHintColList(id)
local config = GetRpgMakerGameHintConfig(id)
return config.Col
end
function XRpgMakerGameConfigs.GetRpgMakerGameHintIdList(mapId)
return RpgMakerGameMapIdToHintIdList[mapId]
end
function XRpgMakerGameConfigs.IsRpgMakerGameHintShowMoveLine(mapId, row, colIndex)
local hintIdList = XRpgMakerGameConfigs.GetRpgMakerGameHintIdList(mapId)
local rowCfg
local colList
for _, hintId in ipairs(hintIdList or {}) do
rowCfg = XRpgMakerGameConfigs.GetRpgMakerGameHintRow(hintId)
colList = XRpgMakerGameConfigs.GetRpgMakerGameHintColList(hintId)
if rowCfg == row then
return colList and XTool.IsNumberValid(colList[colIndex]) --不为0则显示移动路线图标
end
end
return false
end
-----------------RpgMakerGameHint 通关提示 end-------------------------
-----------------RpgMakerGameHintIcon 通关提示图标 begin-----------------------
local GetRpgMakerGameHintIconConfig = function(key)
local config = RpgMakerGameHintIconConfigs[key]
if not config then
XLog.ErrorTableDataNotFound("XRpgMakerGameConfigs.GetRpgMakerGameHintIconConfig", "RpgMakerGameHintIconConfigs", TABLE_HINT_ICON_PATH, "Key", key)
return
end
return config
end
function XRpgMakerGameConfigs.GetRpgMakerGameHintIconKeyList()
local hintIconKeyList = {}
for k in pairs(RpgMakerGameHintIconConfigs) do
tableInsert(hintIconKeyList, k)
end
return hintIconKeyList
end
--只获取该地图上有对应对象的图标
function XRpgMakerGameConfigs.GetRpgMakerGameHintIconKeyListByMapId(mapId)
local hintIconKeyList = {}
if not XTool.IsNumberValid(mapId) then
return hintIconKeyList
end
local isHaveBlock = XRpgMakerGameConfigs.IsRpgMakerGameHaveBlock(mapId)
local isHaveMonster = XRpgMakerGameConfigs.IsRpgMakerGameHaveMonster(mapId, XRpgMakerGameConfigs.XRpgMakerGameMonsterType.Normal)
local isHaveBoss = XRpgMakerGameConfigs.IsRpgMakerGameHaveMonster(mapId, XRpgMakerGameConfigs.XRpgMakerGameMonsterType.Boss)
local isHaveType1Trigger, isHaveType2Trigger, isHaveType3Trigger = XRpgMakerGameConfigs.IsRpgMakerGameHaveTrigger(mapId)
local isHaveGap = not XTool.IsTableEmpty(XRpgMakerGameConfigs.GetRpgMakerGameMapIdToGapIdList(mapId))
local isInsert = true
for k in pairs(RpgMakerGameHintIconConfigs) do
if k == "BlockIcon" then
isInsert = isHaveBlock
elseif k == "NormalMonsterIcon" then
isInsert = isHaveMonster
elseif k == "BossIcon" then
isInsert = isHaveBoss
elseif k == "TriggerIcon1" then
isInsert = isHaveType1Trigger
elseif k == "TriggerIcon2" then
isInsert = isHaveType2Trigger
elseif k == "TriggerIcon3" then
isInsert = isHaveType3Trigger
elseif k == "GapIcon" then
isInsert = isHaveGap
end
if isInsert then
tableInsert(hintIconKeyList, k)
end
isInsert = true
end
return hintIconKeyList
end
function XRpgMakerGameConfigs.GetRpgMakerGameHintIcon(key)
local config = GetRpgMakerGameHintIconConfig(key)
return config.Icon
end
function XRpgMakerGameConfigs.GetRpgMakerGameHintIconName(key)
local config = GetRpgMakerGameHintIconConfig(key)
return config.Name
end
function XRpgMakerGameConfigs.GetNormalMonsterIcon(monsterType)
if XRpgMakerGameConfigs.XRpgMakerGameMonsterType.BOSS == monsterType then
return XRpgMakerGameConfigs.GetRpgMakerGameHintIcon("BossIcon")
end
return XRpgMakerGameConfigs.GetRpgMakerGameHintIcon("NormalMonsterIcon")
end
function XRpgMakerGameConfigs.GetTriggerIcon(triggerType)
if triggerType == XRpgMakerGameConfigs.XRpgMakerGameTriggerType.Trigger1 then
return XRpgMakerGameConfigs.GetRpgMakerGameHintIcon("TriggerIcon1")
end
if triggerType == XRpgMakerGameConfigs.XRpgMakerGameTriggerType.Trigger2 then
return XRpgMakerGameConfigs.GetRpgMakerGameHintIcon("TriggerIcon2")
end
return XRpgMakerGameConfigs.GetRpgMakerGameHintIcon("TriggerIcon3")
end
-----------------RpgMakerGameHintIcon 通关提示图标 end-------------------------
-----------------RpgMakerGameActivity 活动相关 begin-----------------------
local GetRpgMakerGameActivityConfig = function(id)
local config = RpgMakerGameActivityConfigs[id]
if not config then
XLog.ErrorTableDataNotFound("XRpgMakerGameConfigs.GetRpgMakerGameActivityConfig", "RpgMakerGameActivityConfigs", TABLE_ACTIVITY_PATH, "Id", id)
return
end
return config
end
function XRpgMakerGameConfigs.GetDefaultActivityId()
return DefaultActivityId
end
function XRpgMakerGameConfigs.GetRpgMakerGameActivityTaskTimeLimitId(id)
local config = GetRpgMakerGameActivityConfig(id)
return config.TaskTimeLimitId
end
function XRpgMakerGameConfigs.GetRpgMakerGameActivityTimeId(id)
local config = GetRpgMakerGameActivityConfig(id)
return config.TimeId
end
-----------------RpgMakerGameActivity 活动相关 end-------------------------
-----------------RpgMakerGameRandomDialogBox 随机提示 begin-----------------------
local GetRpgMakerGameRandomDialogBoxConfigs = function(id)
local config = RpgMakerGameRandomDialogBoxConfigs[id]
if not config then
XLog.ErrorTableDataNotFound("XRpgMakerGameConfigs.GetRpgMakerGameRandomDialogBoxConfigs", "RpgMakerGameRandomDialogBoxConfigs", TABLE_RANDOM_DIALOG_BOX_PATH, "Id", id)
return
end
return config
end
function XRpgMakerGameConfigs.GetRpgMakerGameRandomDialogBoxIdList()
return RpgMakerGameRandomDialogBoxIdList
end
function XRpgMakerGameConfigs.GetRpgMakerGameRandomDialogBoxPreStage(id)
local config = GetRpgMakerGameRandomDialogBoxConfigs(id)
return config.PreStage
end
function XRpgMakerGameConfigs.GetRpgMakerGameRandomDialogBoxText(id)
local config = GetRpgMakerGameRandomDialogBoxConfigs(id)
return config.Text or ""
end
function XRpgMakerGameConfigs.GetRpgMakerGameRandomDialogBoxWeight(id)
local config = GetRpgMakerGameRandomDialogBoxConfigs(id)
return config.Weight
end
function XRpgMakerGameConfigs.GetRpgMakerGameRandomDialogBoxDuration(id)
local config = GetRpgMakerGameRandomDialogBoxConfigs(id)
return config.Duration
end
-----------------RpgMakerGameRandomDialogBox 随机提示 end-------------------------
-----------------RpgMakerGameHintDialogBox 点击头像提示 begin-----------------------
local GetRpgMakerGameHintDialogBoxConfigs = function(id)
local config = RpgMakerGameHintDialogBoxConfigs[id]
if not config then
XLog.ErrorTableDataNotFound("XRpgMakerGameConfigs.GetRpgMakerGameHintDialogBoxConfigs", "RpgMakerGameHintDialogBoxConfigs", TABLE_HINT_DIALOG_BOX_PATH, "Id", id)
return
end
return config
end
function XRpgMakerGameConfigs.GetRpgMakerGameHintDialogBoxText(id)
local config = GetRpgMakerGameHintDialogBoxConfigs(id)
return config.Text or ""
end
function XRpgMakerGameConfigs.GetRpgMakerGameHintDialogBoxBackCount(id)
local config = GetRpgMakerGameHintDialogBoxConfigs(id)
return config.BackCount
end
-----------------RpgMakerGameHintDialogBox 点击头像提示 end-------------------------
-----------------RpgMakerGameModel 模型相关 begin-----------------------
local GetRpgMakerGameModelConfig = function(key)
local config = RpgMakerGameModelConfigs[key]
if not config then
XLog.ErrorTableDataNotFound("XRpgMakerGameConfigs.RpgMakerGameModelConfig", "RpgMakerGameModelConfigs", TABLE_MODEL_PATH, "Key", key)
return
end
return config
end
function XRpgMakerGameConfigs.GetRpgMakerGameModelPath(key)
local config = GetRpgMakerGameModelConfig(key)
return config.ModelPath or ""
end
function XRpgMakerGameConfigs.GetRpgMakerGameTriggerPath(triggerType)
if triggerType == XRpgMakerGameConfigs.XRpgMakerGameTriggerType.Trigger1 then
return XRpgMakerGameConfigs.GetRpgMakerGameModelPath("TriggerType1")
end
if triggerType == XRpgMakerGameConfigs.XRpgMakerGameTriggerType.Trigger2 then
return XRpgMakerGameConfigs.GetRpgMakerGameModelPath("TriggerType2")
end
if triggerType == XRpgMakerGameConfigs.XRpgMakerGameTriggerType.Trigger3 then
return XRpgMakerGameConfigs.GetRpgMakerGameModelPath("TriggerType3")
end
end
-----------------RpgMakerGameModel 模型相关 end-----------------------
-----------------RpgMakerGameAnimation 动画相关 begin-----------------------
local GetRpgMakerGameAnimationConfig = function(modelName)
local config = RpgMakerGameAnimationConfigs[modelName]
if not config then
XLog.ErrorTableDataNotFound("XRpgMakerGameConfigs.RpgMakerGameAnimationConfig", "RpgMakerGameAnimationConfigs", TABLE_ANIMATION_PATH, "ModelName", modelName)
return
end
return config
end
function XRpgMakerGameConfigs.GetRpgMakerGameStandAnimaName(modelName)
local config = GetRpgMakerGameAnimationConfig(modelName)
return config.StandAnimaName or ""
end
function XRpgMakerGameConfigs.GetRpgMakerGameRunAnimaName(modelName)
local config = GetRpgMakerGameAnimationConfig(modelName)
return config.RunAnimaName or ""
end
function XRpgMakerGameConfigs.GetRpgMakerGameAtkAnimaName(modelName)
local config = GetRpgMakerGameAnimationConfig(modelName)
return config.AtkAnimaName or ""
end
function XRpgMakerGameConfigs.GetRpgMakerGameBeAtkEffectPath(modelName)
local config = GetRpgMakerGameAnimationConfig(modelName)
return config.BeAtkEffectPath or ""
end
function XRpgMakerGameConfigs.GetRpgMakerGameEffectRoot(modelName)
local config = GetRpgMakerGameAnimationConfig(modelName)
return config.EffectRoot or ""
end
function XRpgMakerGameConfigs.GetRpgMakerGameXOffSet(modelName)
local config = GetRpgMakerGameAnimationConfig(modelName)
return config.XOffSet or 0
end
function XRpgMakerGameConfigs.GetRpgMakerGameYOffSet(modelName)
local config = GetRpgMakerGameAnimationConfig(modelName)
return config.YOffSet or 0
end
function XRpgMakerGameConfigs.GetRpgMakerGameZOffSet(modelName)
local config = GetRpgMakerGameAnimationConfig(modelName)
return config.ZOffSet or 0
end
-----------------RpgMakerGameAnimation 动画相关 end-----------------------