【灵兽】战斗数据协议添加,修复战斗数据组建错误

gaoxin 2020-10-26 14:56:03 +08:00
parent 9ac7e7b9a3
commit 343237ae6d
3 changed files with 362 additions and 342 deletions

View File

@ -73,6 +73,11 @@ HERO_LOCKSTATE_FIELD = protobuf.FieldDescriptor();
HERO_JEWELS_FIELD = protobuf.FieldDescriptor();
HERO_CREATETYPE_FIELD = protobuf.FieldDescriptor();
HERO_CHANGEID_FIELD = protobuf.FieldDescriptor();
POKEMONINFO = protobuf.Descriptor();
POKEMONINFO_TEMPID_FIELD = protobuf.FieldDescriptor();
POKEMONINFO_ID_FIELD = protobuf.FieldDescriptor();
POKEMONINFO_LEVEL_FIELD = protobuf.FieldDescriptor();
POKEMONINFO_STAR_FIELD = protobuf.FieldDescriptor();
FIGHTUNITINFO = protobuf.Descriptor();
FIGHTUNITINFO_UNITID_FIELD = protobuf.FieldDescriptor();
FIGHTUNITINFO_UNITSKILLIDS_FIELD = protobuf.FieldDescriptor();
@ -81,7 +86,7 @@ FIGHTUNITINFO_POSITION_FIELD = protobuf.FieldDescriptor();
FIGHTUNITINFO_STAR_FIELD = protobuf.FieldDescriptor();
FIGHTTEAMINFO = protobuf.Descriptor();
FIGHTTEAMINFO_FIGHTUNITLIST_FIELD = protobuf.FieldDescriptor();
FIGHTTEAMINFO_TEAMSKILLLIST_FIELD = protobuf.FieldDescriptor();
FIGHTTEAMINFO_POKEMONUNITLIST_FIELD = protobuf.FieldDescriptor();
FIGHTTEAMINFO_TEAMPASSIVELIST_FIELD = protobuf.FieldDescriptor();
FIGHTTEAMINFO_SPECIALPASSIVE_FIELD = protobuf.FieldDescriptor();
FIGHTTEAMINFO_FIRSTCAMP_FIELD = protobuf.FieldDescriptor();
@ -115,6 +120,7 @@ DROP_ITEMLIST_FIELD = protobuf.FieldDescriptor();
DROP_EQUIPID_FIELD = protobuf.FieldDescriptor();
DROP_HERO_FIELD = protobuf.FieldDescriptor();
DROP_SOULEQUIP_FIELD = protobuf.FieldDescriptor();
DROP_POKEMON_FIELD = protobuf.FieldDescriptor();
GMCOMMAND = protobuf.Descriptor();
GMCOMMAND_COMMAND_FIELD = protobuf.FieldDescriptor();
TEAMHEROINFO = protobuf.Descriptor();
@ -127,14 +133,9 @@ TEAMPOSINFO = protobuf.Descriptor();
TEAMPOSINFO_TEAMID_FIELD = protobuf.FieldDescriptor();
TEAMPOSINFO_TEAMNAME_FIELD = protobuf.FieldDescriptor();
TEAMPOSINFO_TEAMHEROINFOS_FIELD = protobuf.FieldDescriptor();
TEAMPOSINFO_TEAMPOKEMONINFOS_FIELD = protobuf.FieldDescriptor();
POKEMONCOMONPENT = protobuf.Descriptor();
POKEMONCOMONPENT_ID_FIELD = protobuf.FieldDescriptor();
POKEMONCOMONPENT_LEVEL_FIELD = protobuf.FieldDescriptor();
POKEMONINFO = protobuf.Descriptor();
POKEMONINFO_ID_FIELD = protobuf.FieldDescriptor();
POKEMONINFO_STAGE_FIELD = protobuf.FieldDescriptor();
POKEMONINFO_POKEMONCOMONPENT_FIELD = protobuf.FieldDescriptor();
RINGFIREINFO = protobuf.Descriptor();
RINGFIREINFO_ID_FIELD = protobuf.FieldDescriptor();
RINGFIREINFO_STAGE_FIELD = protobuf.FieldDescriptor();
@ -569,7 +570,6 @@ SITUATIONINFO_PASSID_FIELD = protobuf.FieldDescriptor();
JOURNEYINFO = protobuf.Descriptor();
JOURNEYINFO_MAPID_FIELD = protobuf.FieldDescriptor();
JOURNEYINFO_PROCESS_FIELD = protobuf.FieldDescriptor();
JOURNEYINFO_REDPOINT_FIELD = protobuf.FieldDescriptor();
JOURNEYMONSTERINFO = protobuf.Descriptor();
JOURNEYMONSTERINFO_MONSTERID_FIELD = protobuf.FieldDescriptor();
JOURNEYMONSTERINFO_MONSTERINDEX_FIELD = protobuf.FieldDescriptor();
@ -1266,6 +1266,53 @@ HERO.enum_types = {}
HERO.fields = {HERO_ID_FIELD, HERO_HEROID_FIELD, HERO_LEVEL_FIELD, HERO_BREAKID_FIELD, HERO_STAR_FIELD, HERO_SKINID_FIELD, HERO_EQUIPIDLIST_FIELD, HERO_CREATETIME_FIELD, HERO_STARBREAKID_FIELD, HERO_ESPECIALEQUIPLEVEL_FIELD, HERO_SOULPOS_FIELD, HERO_LOCKSTATE_FIELD, HERO_JEWELS_FIELD, HERO_CREATETYPE_FIELD, HERO_CHANGEID_FIELD}
HERO.is_extendable = false
HERO.extensions = {}
POKEMONINFO_TEMPID_FIELD.name = "tempId"
POKEMONINFO_TEMPID_FIELD.full_name = ".com.ljsd.jieling.protocols.PokemonInfo.tempId"
POKEMONINFO_TEMPID_FIELD.number = 1
POKEMONINFO_TEMPID_FIELD.index = 0
POKEMONINFO_TEMPID_FIELD.label = 1
POKEMONINFO_TEMPID_FIELD.has_default_value = false
POKEMONINFO_TEMPID_FIELD.default_value = 0
POKEMONINFO_TEMPID_FIELD.type = 5
POKEMONINFO_TEMPID_FIELD.cpp_type = 1
POKEMONINFO_ID_FIELD.name = "id"
POKEMONINFO_ID_FIELD.full_name = ".com.ljsd.jieling.protocols.PokemonInfo.id"
POKEMONINFO_ID_FIELD.number = 2
POKEMONINFO_ID_FIELD.index = 1
POKEMONINFO_ID_FIELD.label = 1
POKEMONINFO_ID_FIELD.has_default_value = false
POKEMONINFO_ID_FIELD.default_value = ""
POKEMONINFO_ID_FIELD.type = 9
POKEMONINFO_ID_FIELD.cpp_type = 9
POKEMONINFO_LEVEL_FIELD.name = "level"
POKEMONINFO_LEVEL_FIELD.full_name = ".com.ljsd.jieling.protocols.PokemonInfo.level"
POKEMONINFO_LEVEL_FIELD.number = 3
POKEMONINFO_LEVEL_FIELD.index = 2
POKEMONINFO_LEVEL_FIELD.label = 1
POKEMONINFO_LEVEL_FIELD.has_default_value = false
POKEMONINFO_LEVEL_FIELD.default_value = 0
POKEMONINFO_LEVEL_FIELD.type = 5
POKEMONINFO_LEVEL_FIELD.cpp_type = 1
POKEMONINFO_STAR_FIELD.name = "star"
POKEMONINFO_STAR_FIELD.full_name = ".com.ljsd.jieling.protocols.PokemonInfo.star"
POKEMONINFO_STAR_FIELD.number = 4
POKEMONINFO_STAR_FIELD.index = 3
POKEMONINFO_STAR_FIELD.label = 1
POKEMONINFO_STAR_FIELD.has_default_value = false
POKEMONINFO_STAR_FIELD.default_value = 0
POKEMONINFO_STAR_FIELD.type = 5
POKEMONINFO_STAR_FIELD.cpp_type = 1
POKEMONINFO.name = "PokemonInfo"
POKEMONINFO.full_name = ".com.ljsd.jieling.protocols.PokemonInfo"
POKEMONINFO.nested_types = {}
POKEMONINFO.enum_types = {}
POKEMONINFO.fields = {POKEMONINFO_TEMPID_FIELD, POKEMONINFO_ID_FIELD, POKEMONINFO_LEVEL_FIELD, POKEMONINFO_STAR_FIELD}
POKEMONINFO.is_extendable = false
POKEMONINFO.extensions = {}
FIGHTUNITINFO_UNITID_FIELD.name = "unitId"
FIGHTUNITINFO_UNITID_FIELD.full_name = ".com.ljsd.jieling.protocols.FightUnitInfo.unitId"
FIGHTUNITINFO_UNITID_FIELD.number = 1
@ -1334,15 +1381,16 @@ FIGHTTEAMINFO_FIGHTUNITLIST_FIELD.message_type = FIGHTUNITINFO
FIGHTTEAMINFO_FIGHTUNITLIST_FIELD.type = 11
FIGHTTEAMINFO_FIGHTUNITLIST_FIELD.cpp_type = 10
FIGHTTEAMINFO_TEAMSKILLLIST_FIELD.name = "teamSkillList"
FIGHTTEAMINFO_TEAMSKILLLIST_FIELD.full_name = ".com.ljsd.jieling.protocols.FightTeamInfo.teamSkillList"
FIGHTTEAMINFO_TEAMSKILLLIST_FIELD.number = 2
FIGHTTEAMINFO_TEAMSKILLLIST_FIELD.index = 1
FIGHTTEAMINFO_TEAMSKILLLIST_FIELD.label = 1
FIGHTTEAMINFO_TEAMSKILLLIST_FIELD.has_default_value = false
FIGHTTEAMINFO_TEAMSKILLLIST_FIELD.default_value = ""
FIGHTTEAMINFO_TEAMSKILLLIST_FIELD.type = 9
FIGHTTEAMINFO_TEAMSKILLLIST_FIELD.cpp_type = 9
FIGHTTEAMINFO_POKEMONUNITLIST_FIELD.name = "pokemonUnitList"
FIGHTTEAMINFO_POKEMONUNITLIST_FIELD.full_name = ".com.ljsd.jieling.protocols.FightTeamInfo.pokemonUnitList"
FIGHTTEAMINFO_POKEMONUNITLIST_FIELD.number = 2
FIGHTTEAMINFO_POKEMONUNITLIST_FIELD.index = 1
FIGHTTEAMINFO_POKEMONUNITLIST_FIELD.label = 3
FIGHTTEAMINFO_POKEMONUNITLIST_FIELD.has_default_value = false
FIGHTTEAMINFO_POKEMONUNITLIST_FIELD.default_value = {}
FIGHTTEAMINFO_POKEMONUNITLIST_FIELD.message_type = FIGHTUNITINFO
FIGHTTEAMINFO_POKEMONUNITLIST_FIELD.type = 11
FIGHTTEAMINFO_POKEMONUNITLIST_FIELD.cpp_type = 10
FIGHTTEAMINFO_TEAMPASSIVELIST_FIELD.name = "teamPassiveList"
FIGHTTEAMINFO_TEAMPASSIVELIST_FIELD.full_name = ".com.ljsd.jieling.protocols.FightTeamInfo.teamPassiveList"
@ -1378,7 +1426,7 @@ FIGHTTEAMINFO.name = "FightTeamInfo"
FIGHTTEAMINFO.full_name = ".com.ljsd.jieling.protocols.FightTeamInfo"
FIGHTTEAMINFO.nested_types = {}
FIGHTTEAMINFO.enum_types = {}
FIGHTTEAMINFO.fields = {FIGHTTEAMINFO_FIGHTUNITLIST_FIELD, FIGHTTEAMINFO_TEAMSKILLLIST_FIELD, FIGHTTEAMINFO_TEAMPASSIVELIST_FIELD, FIGHTTEAMINFO_SPECIALPASSIVE_FIELD, FIGHTTEAMINFO_FIRSTCAMP_FIELD}
FIGHTTEAMINFO.fields = {FIGHTTEAMINFO_FIGHTUNITLIST_FIELD, FIGHTTEAMINFO_POKEMONUNITLIST_FIELD, FIGHTTEAMINFO_TEAMPASSIVELIST_FIELD, FIGHTTEAMINFO_SPECIALPASSIVE_FIELD, FIGHTTEAMINFO_FIRSTCAMP_FIELD}
FIGHTTEAMINFO.is_extendable = false
FIGHTTEAMINFO.extensions = {}
EVENTBEHAVIORVALUES_BEHAVIORVALUES_FIELD.name = "behaviorValues"
@ -1661,11 +1709,22 @@ DROP_SOULEQUIP_FIELD.message_type = EQUIP
DROP_SOULEQUIP_FIELD.type = 11
DROP_SOULEQUIP_FIELD.cpp_type = 10
DROP_POKEMON_FIELD.name = "pokemon"
DROP_POKEMON_FIELD.full_name = ".com.ljsd.jieling.protocols.Drop.pokemon"
DROP_POKEMON_FIELD.number = 5
DROP_POKEMON_FIELD.index = 4
DROP_POKEMON_FIELD.label = 3
DROP_POKEMON_FIELD.has_default_value = false
DROP_POKEMON_FIELD.default_value = {}
DROP_POKEMON_FIELD.message_type = POKEMONINFO
DROP_POKEMON_FIELD.type = 11
DROP_POKEMON_FIELD.cpp_type = 10
DROP.name = "Drop"
DROP.full_name = ".com.ljsd.jieling.protocols.Drop"
DROP.nested_types = {}
DROP.enum_types = {}
DROP.fields = {DROP_ITEMLIST_FIELD, DROP_EQUIPID_FIELD, DROP_HERO_FIELD, DROP_SOULEQUIP_FIELD}
DROP.fields = {DROP_ITEMLIST_FIELD, DROP_EQUIPID_FIELD, DROP_HERO_FIELD, DROP_SOULEQUIP_FIELD, DROP_POKEMON_FIELD}
DROP.is_extendable = false
DROP.extensions = {}
GMCOMMAND_COMMAND_FIELD.name = "command"
@ -1728,9 +1787,9 @@ TEAMPOKEMONINFO_POKEMONID_FIELD.number = 2
TEAMPOKEMONINFO_POKEMONID_FIELD.index = 1
TEAMPOKEMONINFO_POKEMONID_FIELD.label = 1
TEAMPOKEMONINFO_POKEMONID_FIELD.has_default_value = false
TEAMPOKEMONINFO_POKEMONID_FIELD.default_value = 0
TEAMPOKEMONINFO_POKEMONID_FIELD.type = 5
TEAMPOKEMONINFO_POKEMONID_FIELD.cpp_type = 1
TEAMPOKEMONINFO_POKEMONID_FIELD.default_value = ""
TEAMPOKEMONINFO_POKEMONID_FIELD.type = 9
TEAMPOKEMONINFO_POKEMONID_FIELD.cpp_type = 9
TEAMPOKEMONINFO.name = "TeamPokemonInfo"
TEAMPOKEMONINFO.full_name = ".com.ljsd.jieling.protocols.TeamPokemonInfo"
@ -1770,22 +1829,11 @@ TEAMPOSINFO_TEAMHEROINFOS_FIELD.message_type = TEAMHEROINFO
TEAMPOSINFO_TEAMHEROINFOS_FIELD.type = 11
TEAMPOSINFO_TEAMHEROINFOS_FIELD.cpp_type = 10
TEAMPOSINFO_TEAMPOKEMONINFOS_FIELD.name = "teamPokemonInfos"
TEAMPOSINFO_TEAMPOKEMONINFOS_FIELD.full_name = ".com.ljsd.jieling.protocols.TeamPosInfo.teamPokemonInfos"
TEAMPOSINFO_TEAMPOKEMONINFOS_FIELD.number = 4
TEAMPOSINFO_TEAMPOKEMONINFOS_FIELD.index = 3
TEAMPOSINFO_TEAMPOKEMONINFOS_FIELD.label = 3
TEAMPOSINFO_TEAMPOKEMONINFOS_FIELD.has_default_value = false
TEAMPOSINFO_TEAMPOKEMONINFOS_FIELD.default_value = {}
TEAMPOSINFO_TEAMPOKEMONINFOS_FIELD.message_type = TEAMPOKEMONINFO
TEAMPOSINFO_TEAMPOKEMONINFOS_FIELD.type = 11
TEAMPOSINFO_TEAMPOKEMONINFOS_FIELD.cpp_type = 10
TEAMPOSINFO.name = "TeamPosInfo"
TEAMPOSINFO.full_name = ".com.ljsd.jieling.protocols.TeamPosInfo"
TEAMPOSINFO.nested_types = {}
TEAMPOSINFO.enum_types = {}
TEAMPOSINFO.fields = {TEAMPOSINFO_TEAMID_FIELD, TEAMPOSINFO_TEAMNAME_FIELD, TEAMPOSINFO_TEAMHEROINFOS_FIELD, TEAMPOSINFO_TEAMPOKEMONINFOS_FIELD}
TEAMPOSINFO.fields = {TEAMPOSINFO_TEAMID_FIELD, TEAMPOSINFO_TEAMNAME_FIELD, TEAMPOSINFO_TEAMHEROINFOS_FIELD}
TEAMPOSINFO.is_extendable = false
TEAMPOSINFO.extensions = {}
POKEMONCOMONPENT_ID_FIELD.name = "id"
@ -1815,44 +1863,6 @@ POKEMONCOMONPENT.enum_types = {}
POKEMONCOMONPENT.fields = {POKEMONCOMONPENT_ID_FIELD, POKEMONCOMONPENT_LEVEL_FIELD}
POKEMONCOMONPENT.is_extendable = false
POKEMONCOMONPENT.extensions = {}
POKEMONINFO_ID_FIELD.name = "id"
POKEMONINFO_ID_FIELD.full_name = ".com.ljsd.jieling.protocols.PokemonInfo.id"
POKEMONINFO_ID_FIELD.number = 1
POKEMONINFO_ID_FIELD.index = 0
POKEMONINFO_ID_FIELD.label = 1
POKEMONINFO_ID_FIELD.has_default_value = false
POKEMONINFO_ID_FIELD.default_value = 0
POKEMONINFO_ID_FIELD.type = 5
POKEMONINFO_ID_FIELD.cpp_type = 1
POKEMONINFO_STAGE_FIELD.name = "stage"
POKEMONINFO_STAGE_FIELD.full_name = ".com.ljsd.jieling.protocols.PokemonInfo.stage"
POKEMONINFO_STAGE_FIELD.number = 2
POKEMONINFO_STAGE_FIELD.index = 1
POKEMONINFO_STAGE_FIELD.label = 1
POKEMONINFO_STAGE_FIELD.has_default_value = false
POKEMONINFO_STAGE_FIELD.default_value = 0
POKEMONINFO_STAGE_FIELD.type = 5
POKEMONINFO_STAGE_FIELD.cpp_type = 1
POKEMONINFO_POKEMONCOMONPENT_FIELD.name = "pokemoncomonpent"
POKEMONINFO_POKEMONCOMONPENT_FIELD.full_name = ".com.ljsd.jieling.protocols.PokemonInfo.pokemoncomonpent"
POKEMONINFO_POKEMONCOMONPENT_FIELD.number = 3
POKEMONINFO_POKEMONCOMONPENT_FIELD.index = 2
POKEMONINFO_POKEMONCOMONPENT_FIELD.label = 3
POKEMONINFO_POKEMONCOMONPENT_FIELD.has_default_value = false
POKEMONINFO_POKEMONCOMONPENT_FIELD.default_value = {}
POKEMONINFO_POKEMONCOMONPENT_FIELD.message_type = POKEMONCOMONPENT
POKEMONINFO_POKEMONCOMONPENT_FIELD.type = 11
POKEMONINFO_POKEMONCOMONPENT_FIELD.cpp_type = 10
POKEMONINFO.name = "PokemonInfo"
POKEMONINFO.full_name = ".com.ljsd.jieling.protocols.PokemonInfo"
POKEMONINFO.nested_types = {}
POKEMONINFO.enum_types = {}
POKEMONINFO.fields = {POKEMONINFO_ID_FIELD, POKEMONINFO_STAGE_FIELD, POKEMONINFO_POKEMONCOMONPENT_FIELD}
POKEMONINFO.is_extendable = false
POKEMONINFO.extensions = {}
RINGFIREINFO_ID_FIELD.name = "id"
RINGFIREINFO_ID_FIELD.full_name = ".com.ljsd.jieling.protocols.RingFireInfo.id"
RINGFIREINFO_ID_FIELD.number = 1
@ -4464,8 +4474,9 @@ TEAMONETEAMINFO_POKEMONINFOS_FIELD.index = 1
TEAMONETEAMINFO_POKEMONINFOS_FIELD.label = 3
TEAMONETEAMINFO_POKEMONINFOS_FIELD.has_default_value = false
TEAMONETEAMINFO_POKEMONINFOS_FIELD.default_value = {}
TEAMONETEAMINFO_POKEMONINFOS_FIELD.type = 5
TEAMONETEAMINFO_POKEMONINFOS_FIELD.cpp_type = 1
TEAMONETEAMINFO_POKEMONINFOS_FIELD.message_type = TEAMSIMPLEINFO
TEAMONETEAMINFO_POKEMONINFOS_FIELD.type = 11
TEAMONETEAMINFO_POKEMONINFOS_FIELD.cpp_type = 10
TEAMONETEAMINFO_TOTALFORCE_FIELD.name = "totalForce"
TEAMONETEAMINFO_TOTALFORCE_FIELD.full_name = ".com.ljsd.jieling.protocols.TeamOneTeamInfo.totalForce"
@ -5969,21 +5980,11 @@ JOURNEYINFO_PROCESS_FIELD.default_value = 0
JOURNEYINFO_PROCESS_FIELD.type = 5
JOURNEYINFO_PROCESS_FIELD.cpp_type = 1
JOURNEYINFO_REDPOINT_FIELD.name = "redPoint"
JOURNEYINFO_REDPOINT_FIELD.full_name = ".com.ljsd.jieling.protocols.JourneyInfo.redPoint"
JOURNEYINFO_REDPOINT_FIELD.number = 3
JOURNEYINFO_REDPOINT_FIELD.index = 2
JOURNEYINFO_REDPOINT_FIELD.label = 1
JOURNEYINFO_REDPOINT_FIELD.has_default_value = false
JOURNEYINFO_REDPOINT_FIELD.default_value = 0
JOURNEYINFO_REDPOINT_FIELD.type = 5
JOURNEYINFO_REDPOINT_FIELD.cpp_type = 1
JOURNEYINFO.name = "JourneyInfo"
JOURNEYINFO.full_name = ".com.ljsd.jieling.protocols.JourneyInfo"
JOURNEYINFO.nested_types = {}
JOURNEYINFO.enum_types = {}
JOURNEYINFO.fields = {JOURNEYINFO_MAPID_FIELD, JOURNEYINFO_PROCESS_FIELD, JOURNEYINFO_REDPOINT_FIELD}
JOURNEYINFO.fields = {JOURNEYINFO_MAPID_FIELD, JOURNEYINFO_PROCESS_FIELD}
JOURNEYINFO.is_extendable = false
JOURNEYINFO.extensions = {}
JOURNEYMONSTERINFO_MONSTERID_FIELD.name = "monsterId"

File diff suppressed because one or more lines are too long

View File

@ -216,19 +216,18 @@ end
--
function this.MonsterSkillAdapter(MSkillId)
local skill = {}
local monsterSkill = SpiritAnimalSkill[MSkillId]
skill.effect = {}
local monsterSkill = SpiritAnimalSkill[tonumber(MSkillId)]
for index, skillId in ipairs(monsterSkill.SkillIDList) do
skill.effect[index] = this.GetSkillData(tonumber(skillId))
skill.effect = this.GetSkillData(tonumber(skillId))
skill.triggerId = monsterSkill.ReleasePoint[index]
skill.triggerCondition = {0}
if monsterSkill.ReleaseLimit and monsterSkill.ReleaseLimit[index] then
for k, v in ipairs(monsterSkill.ReleaseLimit[index]) do
skill.triggerCondition[index][k] = v
skill.triggerCondition[k] = v
end
end
skill.maxCount = monsterSkill.ReleaseLimit[index] or 999
skill.maxRoundCount = monsterSkill.ReleaseLimit[index] or 999
skill.maxCount = monsterSkill.WarEffectCount[index] or 999
skill.maxRoundCount = monsterSkill.TurnEffectCount[index] or 999
end
return skill
end
@ -246,7 +245,7 @@ function this.PokemonUnitAdapter(pokemonUnit)
-- 技能
local skills = string.split(pokemonUnit.unitSkillIds, "#")
for i = 1, #skills do
role.skill[i] = this.MonsterSkillAdapter(skills[i])
role.skill[i] = this.MonsterSkillAdapter(tonumber(skills[i]))
end
-- 属性
local propertys = string.split(pokemonUnit.property, "#")