> 社区
这个 API 可以获取一场战斗的完整过程,内容与战报中看到的一致,但采用 JSON 编码格式,不懂解码方法的话很难读懂。这里我主要讲解响应中的 fight.data.actions 对象,它包含了韭葱们的所有动作。
actions 是由“动作”对象组成的数组,而每个动作本身又是一个元素数组,其中第一个元素定义了动作类型。所有可能的类型由以下常量定义:
ACTION_START_FIGHT = 0 ACTION_USE_WEAPON_OLD = 1 ACTION_USE_CHIP_OLD = 2 ACTION_SET_WEAPON = 3 ACTION_END_FIGHT = 4 ACTION_PLAYER_DEAD = 5 ACTION_NEW_TURN = 6 ACTION_LEEK_TURN = 7 ACTION_END_TURN = 8 ACTION_SUMMON = 9 ACTION_MOVE_TO = 10 ACTION_USE_CHIP = 12 ACTION_SET_WEAPON = 13 ACTION_STACK_EFFECT = 14 ACTION_USE_WEAPON = 16 ACTION_TP_LOST = 100 ACTION_LIFE_LOST = 101 ACTION_MP_LOST = 102 ACTION_CARE = 103 ACTION_BOOST_VITA = 104 ACTION_RESURRECTION = 105 ACTION_NOVA_DAMAGE = 107 ACTION_DAMAGE_RETURN = 108 ACTION_LIFE_DAMAGE = 109 ACTION_POISON_DAMAGE = 110 ACTION_AFTEREFFECT = 111 ACTION_NOVA_VITALITY = 112 ACTION_SAY = 200 ACTION_LAMA = 201 ACTION_SHOW = 202 ACTION_ADD_WEAPON_EFFECT = 301 ACTION_ADD_CHIP_EFFECT = 302 ACTION_REMOVE_EFFECT = 303 ACTION_UPDATE_EFFECT = 304 ADD_STACKED_EFFECT = 305 REDUCE_EFFECTS = 306 REMOVE_POISONS = 307 REMOVE_SHACKLES = 308 ACTION_BUG = 1002
这个动作总是位于列表的第一个 [action_type, leek, turn]
action_type : 0 leek: 先行动的韭葱的 id turn: 回合数(总是 1)
大约在 2022 年 6 月 10 日(前后 3 天)之前,这个动作对应 useWeapon 或 useWeaponOnCell 函数 [action_type, launcher, cell, weapon, result, leeksID]
action_type : 1 launcher: 执行该动作的韭葱的 id cell : 目标格子 weapon : 所用武器的 id,取值如下 Pistol = 1 MachineGun = 2 DoubleGun = 3 Shotgun = 4 Magnum = 5 Laser = 6 GrenadeLauncher = 7 FlameThrower = 8 Destroyer = 9 Gazor = 10 Electrisor = 11 MLaser = 12 BLaser = 13 Katana = 14 Broadsword = 15 Axe = 16 result : 动作结果(与 useWeapon 或 useWeaponOnCell 函数的返回值相同) leeksID : 被武器击中的韭葱 id 数组
大约在 2022 年 6 月 10 日(前后 3 天)之前,这个动作对应 useChip 或 useChipOnCell 函数 [action_type, launcher, cell, chip, result, leeksID]
action_type : 2 launcher: 执行该动作的韭葱的 id cell : 目标格子 chip : 所用芯片的 id,取值如下 Bandage = 1 Cure = 2 Drip = 3 Regeneration = 4 Vaccine = 5 Shock = 6 Flash = 7 Lightning = 8 Spark = 9 Flame = 10 Meteorite = 11 Pebble = 12 Rock = 13 Rockfall = 14 Ice = 15 Stalactite = 16 Iceberg = 17 Shield = 18 Helmet = 19 Armor = 20 Wall = 21 Rampart = 22 Fortress = 23 Protein = 24 Steroid = 25 Doping = 26 Stretching = 27 WarmUp = 28 Reflexes = 29 LeatherBoots = 30 WingedBoots = 31 SevenLeagueBoots = 32 Motivation = 33 Adrenaline = 34 Rage = 35 Liberation = 36 Teleportation = 37 Armoring = 38 Inversion = 39 Remission = 47 Carapace = 48 DevilStrike = 50 Whip = 51 Loam = 52 Fertilizer = 53 Acceleration = 54 SlowDown = 55 BallAndChain = 56 Tranquilizer = 57 Soporific = 58 Fracture = 59 Solidification = 60 Venom = 61 Toxin = 62 Plague = 63 Thorn = 64 Mirror = 65 Ferocity = 66 Collar = 67 Bark = 68 Burning = 69 Antidote = 70 result : 动作结果(与 useChip 或 useChipOnCell 函数的返回值相同) leeksID : 被芯片命中的韭葱 id 数组
这个动作对应 setWeapon 函数 [action_type, launcher, weapon]
action_type : 3 launcher: 执行该动作的韭葱的 id weapon : 要装备的武器的 id(可能的取值见 [#ACTION_USE_WEAPON])
这个动作表示战斗结束,但似乎已不再使用 [action_type]
action_type : 4
这个动作表示一根韭葱(或一个球茎)死亡 [action_type, entity]
action_type : 5 entity : 死亡实体的 id
这个动作表示新回合开始(第 1 回合没有这个动作,由 ACTION_START_FIGHT 代替) [action_type, turn]
action_type : 6 turn : 开始的回合数
这个动作表示一根韭葱的回合开始 [action_type, leek, tp, mp]
action_type : 7 leek : 韭葱的 id tp : 韭葱的行动点(TP)数 mp : 韭葱的移动点(MP)数
这个动作表示一根韭葱的回合结束 [action_type, leek, tp, mp, strength, magic]
action_type : 8 leek : 韭葱的 id tp : 韭葱的行动点(TP)数 mp : 韭葱的移动点(MP)数 strength : 韭葱的力量值 magic : 韭葱的魔法值
这个动作对应用 summon 方法召唤一个球茎 [action_type, caster, summonID, cell]
action_type : 8 caster : 韭葱的 id summonID : 被召唤球茎的 id cell : 召唤所在格子的 id
这个动作对应一次移动,后面总是跟着 ACTION_MP_LOST 动作。 [action_type, leek, cell, path]
action_type : 10 leek : 移动的韭葱的 id cell : 韭葱到达的格子 path : 经过的格子数组(包括到达的格子)
这个动作对应 useWeapon 或 useWeaponOnCell 函数,大约从 2022 年 6 月 10 日(前后 3 天)起开始使用 [action_type, cell, result]
action_type : 16 cell : 目标格子 result : 动作结果(与 useWeapon 或 useWeaponOnCell 函数的返回值相同)
这个动作对应 useChip 或 useChipOnCell 函数,大约从 2022 年 6 月 10 日(前后 3 天)起开始使用 [action_type, chip, cell, result]
action_type : 12 chip : 所用芯片的 id,取值如下 Bandage = 1 Cure = 2 Drip = 3 Regeneration = 4 Vaccine = 5 Shock = 6 Flash = 7 Lightning = 8 Spark = 9 Flame = 10 Meteorite = 11 Pebble = 12 Rock = 13 Rockfall = 14 Ice = 15 Stalactite = 16 Iceberg = 17 Shield = 18 Helmet = 19 Armor = 20 Wall = 21 Rampart = 22 Fortress = 23 Protein = 24 Steroid = 25 Doping = 26 Stretching = 27 WarmUp = 28 Reflexes = 29 LeatherBoots = 30 WingedBoots = 31 SevenLeagueBoots = 32 Motivation = 33 Adrenaline = 34 Rage = 35 Liberation = 36 Teleportation = 37 Armoring = 38 Inversion = 39 Remission = 47 Carapace = 48 DevilStrike = 50 Whip = 51 Loam = 52 Fertilizer = 53 Acceleration = 54 SlowDown = 55 BallAndChain = 56 Tranquilizer = 57 Soporific = 58 Fracture = 59 Solidification = 60 Venom = 61 Toxin = 62 Plague = 63 Thorn = 64 Mirror = 65 Ferocity = 66 Collar = 67 Bark = 68 Burning = 69 Antidote = 70 cell : 目标格子 result : 动作结果(与 useChip 或 useChipOnCell 函数的返回值相同)
这个动作对应韭葱损失行动点 [action_type, leek, tp]
action_type : 100 leek : 损失 TP 的韭葱的 id tp : 损失的行动点数
这个动作对应韭葱损失生命值 [action_type, leek, life, erosion]
action_type : 101 leek : 损失生命值的韭葱的 id life : 损失的生命值 erosion(可选): 损失的最大生命值
这个动作对应韭葱损失移动点 [action_type, leek, mp]
action_type : 102 leek : 损失 MP 的韭葱的 id mp : 损失的移动点数
这个动作对应韭葱获得生命值 [action_type, leek, life]
action_type : 103 leek : 损失生命值的韭葱的 id life : 获得的生命值
这个动作对应韭葱获得生命值 [action_type, leek, life]
action_type : 104 leek : 获得增益的韭葱的 id life : 获得的最大生命值(生命力)
这个动作对应一根韭葱的复活(按理说球茎也适用) [action_type, caster, target, cell, life, maxLife]
action_type : 105 caster : 施放复活的韭葱的 id target : 被复活的韭葱的 id cell : 复活所在格子的 id life : 被复活韭葱的生命值 maxLife : 被复活韭葱的最大生命值
这个动作对应韭葱因 DAMAGE_RETURN 效果而损失生命值 [action_type, leek, life, erosion]
action_type : 108 leek : 损失生命值的韭葱的 id life : 损失的生命值 erosion(可选): 损失的最大生命值
这个动作对应韭葱因 LIFE_DAMAGE 效果而损失生命值 [action_type, leek, life, erosion]
action_type : 109 leek : 损失生命值的韭葱的 id life : 损失的生命值 erosion(可选): 损失的最大生命值
这个动作对应 say 函数,用于对对手说一句话 [action_type, leek, message]
action_type : 200 leek : 说话的韭葱的 id message : 消息文本
这个动作对应韭葱以一只羊驼作为消息显示 [action_type, leek]
action_type : 201 leek : 显示羊驼的韭葱的 id
这个动作对应 show 函数,用于高亮显示一个格子 [action_type, leek, cell, color]
action_type : 202 leek : 显示该格子的韭葱的 id cell : 要显示的格子的 id color : 要显示的格子的十六进制颜色代码
这个动作对应在 ACTION_USE_WEAPON 动作之后添加一个武器效果 [action_type, weapon, id, caster, target, effect, value, duration]
action_type : 301 weapon : 武器的 id,与 WEAPON_ 常量中的定义一致 id : 所添加效果的索引 caster : 施放该效果的实体的 id target : 承受该效果的实体的 id effect : 效果的 id,取值如下 DAMAGE = 1 HEAL = 2 BUFF_STRENGTH = 3 BUFF_AGILITY = 4 RELATIVE_SHIELD = 5 ABSOLUTE_SHIELD = 6 BUFF_MP = 7 BUFF_TP = 8 POISON = 13 SUMMON = 14 SHACKLE_MP = 17 SHACKLE_TP = 18 SHACKLE_STRENGTH = 19 DAMAGE_RETURN = 20 BUFF_RESISTANCE = 21 BUFF_WISDOM = 22 ANTIDOTE = 23 SHACKLE_MAGIC = 24 AFTEREFFECT = 25 VULNERABILITY = 26 value : 效果的数值 duration : 效果的持续时间
这个动作对应在 ACTION_USE_WEAPON 动作之后添加一个武器效果 [action_type, chip, id, caster, target, effect, value, duration]
action_type : 302 chip : 芯片的 id,与 CHIP_ 常量中的定义一致 id : 所添加效果的索引 caster : 施放该效果的实体的 id target : 承受该效果的实体的 id effect : 效果的 id,取值如下(与 ACTION_ADD_WEAPON_EFFECT 相同) value : 效果的数值 duration : 效果的持续时间
这个动作对应在 useChip(CHIP_ANTIDOTE) 之类的动作之后移除一个武器效果 [action_type, chip, id, caster, target, effect, value]
action_type : 303 effect : 被移除效果的索引
这个动作对应在 useChip(CHIP_LIBERATION) 之类的动作之后添加一个武器效果 [action_type, chip, id, caster, target, effect, value]
action_type : 304 effect : 被修改效果的索引 value : 效果的新数值
这个动作对应一个错误 [action_type, leek ]
action_type : 1002 leek : 产生错误的韭葱的 id
Impossible de charger les données du jeu.
Vérifiez votre connexion et réessayez.