1) Is it possible to do a ranged ricochet skill? That will bounce off to the closest enemy in certain range.
2) If not, is it possible to cast a specific skill from a specific position?
3) Is it possible to cast the effects of the skill with delay? Example: casting a meteor that should land on your next turn, damaging everyone around the cell, that you picked on a previous turn
4) I've made a poison effect however, if it kills someone, their body doesnt disappear even with
if a.isDead() { a.performCollapse(); } in a notetag. I'm using yep plugins and srpg_buffstatescore
1. Ricochet is difficult as it would involve forcing another action after the first action. You could use a custom excution or after eval code (Yanfly Skill Core) to check if a nearby enemy is in range (b.event() gives us the $gameMap event data of the target and then you could use an interative loop to see if another enemy is in range - note the event() function requires Dr_Q's position/Range Effect plugins)
2. You can make a skill target any cell with <cellTarget> (again requires Dr_Q's plugins). I'm not sure wat you mean by casting a skill from a "specific position". If you want to make it that a particular skill can only be used on a particular tile, then use yanfly skill requirements (and then user user.event().posX() == X and user.event().posY() == Y as the condition)
3. Delayed skills is technically possible but I'm not too sure how to force an srpgAction (I think dopan had some plugins or comments on doing that). Alternatively you can make a mock event that occurs at the start of the turn that manually damages all units
- Create a <type:actorTurn> event
- Skill does nothing but it does store X and Y of targetted cell to $gameVariables. Use <cellTarget> and store X and Y with $gamePlayer.posX()/posY() which is the coordinates of the selected calls. Set a $gameSwitches true too
- Have a condition that if a switch is true, apply damage to nearby units based on stored X/Y variables.
4. Maybe try adding b.event().erase(). I think this will erase the event but if the player selects the last position of target 'b', it still shows their status window.
Am I missing something?
I tried to set the actor ID to 1, but it said somewhere else in the forum that 0 would just choose the first available party member of something similar. As a secondary question, really, I'm trying to get it so that the spawn locations just put down the party members, not specific actor ID's, since the party will be changing a lot. Is there an easy way to do this?
actor id = 0 requires shouKang battlePrepare plugin
How to check if there is an enemy in range of 2 around a certain event?
Also, Dopan's ForceAction plugin turns off <Custom Execution> skill notetag from Yanfly's skillcore. Anybody knows how to fix that?
Try afterEval
as for event within range... do you mean ANY enemy?
for (var i = 0; i < $gameSystem._EventToUnit.length; i++) {
if ($gameSystem._EventToUnit
) {
if ($gameSystem._EventToUnit[0] == "enemy") {
if ($gameMap.event(i).distTo($gameMap.event(X).posX(), $gameMap.event(X).posY()) < Z) {
code
}
}
}
}