However, there seems to be a small bug when the hookshot drags an enemy back to the player. I can't tell if this is caused by something that was changed here or by something Restart added to the Cross Engine elsewhere: after you drag an enemy to the player's position with the hookshot, the enemy's speed seems to be set to the hookshot's return speed and it carries out its SelfSwitch D moveroute at a super high speed, resulting in the event zig-zagging around the map until SelfSwitch D turns off. Have you encountered this issue before?
Sorry, I've been busy but this function is what changes the enemy target's speed when the hookshot locks on to it so there is something wrong here with the enemy speed not being reset
JavaScript://==============================
// * Update Tool Hookshot Lock
//==============================
// from chronoEngine
Game_CharacterBase.prototype.updateHookShotLock = function() {
var target = this._user.hookshotLock.tool;
this._moveSpeed = target._moveSpeed;
if (target._x != $gamePlayer._x || target._y != $gamePlayer._y) {
this._x = target._x;
this._y = target._y;
} else {
this._moveSpeed = this._user.hookshotLock.preMoveSpeed;
this._user.hookshotLock.preMoveSpeed = this._moveSpeed;
this._user.hookshotLock.tool = null;
};
//erase the target if it's dead - otherwise the game will check your
//hookshot indefinitely after you snag an enemy
if (target._erased == true)
{
this._user.hookshotLock.tool = null;
}
};
As for the boomerang thing, it would be adding extra lines to the boomerang section of the plugin to make it bounce off walls like the hookshot. Give me a couple days to test some solutions.