|
|
|
|
@ -303,7 +303,7 @@ void FindMeleeTarget()
|
|
|
|
|
|
|
|
|
|
void CheckMonstersNearby() |
|
|
|
|
{ |
|
|
|
|
if (Players[MyPlayerId]._pwtype == WT_RANGED || HasRangedSpell()) { |
|
|
|
|
if (Players[MyPlayerId].UsesRangedWeapon() || HasRangedSpell()) { |
|
|
|
|
FindRangedTarget(); |
|
|
|
|
return; |
|
|
|
|
} |
|
|
|
|
@ -337,7 +337,7 @@ void CheckPlayerNearby()
|
|
|
|
|
|| (player._pHitPoints == 0 && spl != SPL_RESURRECT)) |
|
|
|
|
continue; |
|
|
|
|
|
|
|
|
|
if (myPlayer._pwtype == WT_RANGED || HasRangedSpell() || spl == SPL_HEALOTHER) { |
|
|
|
|
if (myPlayer.UsesRangedWeapon() || HasRangedSpell() || spl == SPL_HEALOTHER) { |
|
|
|
|
newDdistance = GetDistanceRanged(player.position.future); |
|
|
|
|
} else { |
|
|
|
|
newDdistance = GetDistance(player.position.future, distance); |
|
|
|
|
@ -440,13 +440,13 @@ void Interact()
|
|
|
|
|
if (leveltype == DTYPE_TOWN && pcursmonst != -1) { |
|
|
|
|
NetSendCmdLocParam1(true, CMD_TALKXY, Towners[pcursmonst].position, pcursmonst); |
|
|
|
|
} else if (pcursmonst != -1) { |
|
|
|
|
if (Players[MyPlayerId]._pwtype != WT_RANGED || CanTalkToMonst(Monsters[pcursmonst])) { |
|
|
|
|
if (!Players[MyPlayerId].UsesRangedWeapon() || CanTalkToMonst(Monsters[pcursmonst])) { |
|
|
|
|
NetSendCmdParam1(true, CMD_ATTACKID, pcursmonst); |
|
|
|
|
} else { |
|
|
|
|
NetSendCmdParam1(true, CMD_RATTACKID, pcursmonst); |
|
|
|
|
} |
|
|
|
|
} else if (leveltype != DTYPE_TOWN && pcursplr != -1 && !gbFriendlyMode) { |
|
|
|
|
NetSendCmdParam1(true, Players[MyPlayerId]._pwtype == WT_RANGED ? CMD_RATTACKPID : CMD_ATTACKPID, pcursplr); |
|
|
|
|
NetSendCmdParam1(true, Players[MyPlayerId].UsesRangedWeapon() ? CMD_RATTACKPID : CMD_ATTACKPID, pcursplr); |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|