Hey guys, when i died to this.act(skillId) my leader change to another member party, but when i died to touchdamage, the game doesnt change and i cant controll any member. Do you know some easy fix for touchdamage problem?
MV - TouchDamage(true) Chrono engine problem
● ARCHIVED · READ-ONLY
-
-
I'm out right now phoneposting but I have a patch for this on my home PC. I'll post in a bit.
Could you save this in a plugin file, place it after Chrono Engine and let me know if it works?
Code://add death for touch damage Game_Chrono.prototype.executeTouchDamage = function(user,target) { if (target.battler()._ras.collisionD > 0) {return}; if (this.isGuardingDirectionTouch(user,target)) { this.executeGuardTouch(user,target); return }; var subject = user.battler(); var action = new Game_Action(subject); action.setAbsSubject(subject) var oldHP = target.battler()._hp; var coop = []; var skillId = user.battler().attackSkillId(); action.setSkill(skillId); action.applyCN(target.battler(),coop); target.battler().startDamagePopup(); target.battler()._ras.collisionD = 30; if (oldHP > target.battler()._hp) { //edit: dead actor script if (target.battler().isDead()) { char= target; battler = target.battler(); battler._ras.charge.time = 0; battler._ras.charge.time2 = 0; battler._ras.charge.charging = false; if (battler._ras.hookshotUser[0]) { $gameSystem._toolHookshotSprite = [null,null,0]; }; if (!$gameSystem.isChronoMode()) { if ($gameParty.leader()._actorId === battler._actorId) { $gameChrono.selectNextActor(); if ($gameParty.leader().isDead()) {this.prepareGameOver(char,battler)}; if (Imported.MOG_PartyHud) {$gameSystem._partyHudData[1] = true}; }; }; } this.executeTouchTouchAfterHit(user,target,skillId); }; }; -
Should i save this in the chronoEngine main plugin file?I'm out right now phoneposting but I have a patch for this on my home PC. I'll post in a bit.
Could you save this in a plugin file, place it after Chrono Engine and let me know if it works?
Code://add death for touch damage Game_Chrono.prototype.executeTouchDamage = function(user,target) { if (target.battler()._ras.collisionD > 0) {return}; if (this.isGuardingDirectionTouch(user,target)) { this.executeGuardTouch(user,target); return }; var subject = user.battler(); var action = new Game_Action(subject); action.setAbsSubject(subject) var oldHP = target.battler()._hp; var coop = []; var skillId = user.battler().attackSkillId(); action.setSkill(skillId); action.applyCN(target.battler(),coop); target.battler().startDamagePopup(); target.battler()._ras.collisionD = 30; if (oldHP > target.battler()._hp) { //edit: dead actor script if (target.battler().isDead()) { char= target; battler = target.battler(); battler._ras.charge.time = 0; battler._ras.charge.time2 = 0; battler._ras.charge.charging = false; if (battler._ras.hookshotUser[0]) { $gameSystem._toolHookshotSprite = [null,null,0]; }; if (!$gameSystem.isChronoMode()) { if ($gameParty.leader()._actorId === battler._actorId) { $gameChrono.selectNextActor(); if ($gameParty.leader().isDead()) {this.prepareGameOver(char,battler)}; if (Imported.MOG_PartyHud) {$gameSystem._partyHudData[1] = true}; }; }; } this.executeTouchTouchAfterHit(user,target,skillId); }; }; -
Technically it would work if you paste it at the end but it's better practice to have patches in a separate plugin file so you keep the original intact and can easily turn it on or off in the plugin manager for troubleshooting.Should i save this in the chronoEngine main plugin file?
-
Hello,
Thank you for the patch
I tested this script and i think there is a few issues:
- (follower active) When the first actor dies , the death icon will be shown on the next actor until you openand close the menu or refresh somehow then it will be shown on the dead body
- also you can move with a dead body behind you , is there a way to make it disappear when it s dead ?
- when Game Over i got this error
i changed that line and it works but i dont know if it is the best option or not.
I'm out right now phoneposting but I have a patch for this on my home PC. I'll post in a bit.
Could you save this in a plugin file, place it after Chrono Engine and let me know if it works?
Code://add death for touch damage Game_Chrono.prototype.executeTouchDamage = function(user,target) { if (target.battler()._ras.collisionD > 0) {return}; if (this.isGuardingDirectionTouch(user,target)) { this.executeGuardTouch(user,target); return }; var subject = user.battler(); var action = new Game_Action(subject); action.setAbsSubject(subject) var oldHP = target.battler()._hp; var coop = []; var skillId = user.battler().attackSkillId(); action.setSkill(skillId); action.applyCN(target.battler(),coop); target.battler().startDamagePopup(); target.battler()._ras.collisionD = 30; if (oldHP > target.battler()._hp) { //edit: dead actor script if (target.battler().isDead()) { char= target; battler = target.battler(); battler._ras.charge.time = 0; battler._ras.charge.time2 = 0; battler._ras.charge.charging = false; if (battler._ras.hookshotUser[0]) { $gameSystem._toolHookshotSprite = [null,null,0]; }; if (!$gameSystem.isChronoMode()) { if ($gameParty.leader()._actorId === battler._actorId) { $gameChrono.selectNextActor(); if ($gameParty.leader().isDead()) {this.prepareGameOver(char,battler)}; if (Imported.MOG_PartyHud) {$gameSystem._partyHudData[1] = true}; }; }; } this.executeTouchTouchAfterHit(user,target,skillId); }; }; -
you can use some event to check if someone died, and if died, you can call a function stop follow , but this have to be in your script, but how do you pretend to take your friend back?
edit: i didnt use this death part too. -
I'd have to look up the script call but I would just set that follower's opacity to 0 on death. You would have to set their opacity to 255 again when you revive them and I'm not sure if it carries across map transfers
As for the death icon, you're probably going to have to force a map refresh like the one that happens when you open and close the menu scene. I can't look up the exact script call but it's something like Goto.SceneMap
Actually if you change the dead actor's image to a ghost or a blank image on death it might force a refresh on the state icon and solve both problems