首先要知道,在游戏运行过程中,调用管理后台,输入$dataEnemies[id]即可看到对应ID的敌人属性。比如缝合尖塔的一串截图。
最基本的一些信息。
【actions】使用的技能。
【battlerName】敌人的战斗图片名称
【dropItems]掉落物品
【exp】掉落经验
【gold】掉落金币
【name】敌人名字
【params】敌人的8项基础属性。这是以数组形式保存的,依次为mhp,mmp,atk,def,mat,mdf,agi,luk
知道这些之后,就可以搞事情了。比如通过事件中的脚本调用:
[JavaScript] 纯文本查看 复制代码 $dataEnemies[74].params[0]=9999;
//id为74的敌人,最大生命变为9999
如果想搞一些更有趣、更随机的功能,可以写一个函数,然后在游戏中运行,比如《缝合尖塔》中用到的:
[JavaScript] 纯文本查看 复制代码 function changeRandomEnemy(id) {
var randomEnemyName = ["不完整","猎奇","诡异","偷懒","无名","闯入"];
var randomEnemyBattleName = ["fhg_01","fhg_02","fhg_03","fhg_04","fhg_05"];
var enemy_value = $gameActors.actor($gameParty._actors[0]);
$dataEnemies[id].name = randomEnemyName[Math.floor(Math.random() * randomEnemyName.length)]+"尖塔猎手";
$dataEnemies[id].battlerName = randomEnemyBattleName[Math.floor(Math.random() * randomEnemyBattleName.length)];
$dataEnemies[id].params[0] = enemy_value.mhp*4;
$dataEnemies[id].params[1] = 9999;
$dataEnemies[id].params[2] = enemy_value.atk*2;
$dataEnemies[id].params[3] = enemy_value.def*2;
$dataEnemies[id].params[4] = enemy_value.mat*2;
$dataEnemies[id].params[5] = enemy_value.mdf*2;
$dataEnemies[id].params[6] = enemy_value.agi*2;
$dataEnemies[id].params[7] = enemy_value.luk*2;
}
这是一个让敌人名字随机、图片随机、属性是队伍中1号位角色的2倍。
触发战斗后,这个ID为171的敌人先来一段变身的动画,然后就变成设定好的“随机敌人”了。这种方法很适合偷懒做RogueLike,或者是需要大批量做野怪。
|