Revision | d354b587d47efb83078b4154c451bc7a7c63fced (tree) |
---|---|
Time | 2012-05-27 17:21:28 |
Author | Benjamin Berkels <torr.samaho@quan...> |
Commiter | Benjamin Berkels |
Fixed: The server always instructed clients to use the standard pain state of an actor, not any custom one. (part of Dusk's wound state / custom damagetype fix patch, but slightly modified and extended)
@@ -229,6 +229,7 @@ | ||
229 | 229 | - - Fixed: Console icon would stick on a player's head if the server missed the packet to remove the icon. [TIHan] |
230 | 230 | - - Fixed: Medals weren't announced on spied players. [Dusk] |
231 | 231 | - - Fixed: Wound state changes weren't sent to clients. [Dusk, Torr Samaho] |
232 | +- - Fixed: The server always instructed clients to use the standard pain state of an actor, not any custom one. [Dusk, Torr Samaho] | |
232 | 233 | ! - Changed F12 to allow spectators full spying, with the exception of during LMS if it's disabled. [Eruanna] |
233 | 234 | ! - Changed F12 to allow full demo spying. [Eruanna] |
234 | 235 | ! - Players aren't forced to spectate after a "changemap" map change on a server with a join password anymore. [Torr Samaho] |
@@ -1639,7 +1639,7 @@ | ||
1639 | 1639 | { |
1640 | 1640 | // If we are the server, tell clients about the state change. |
1641 | 1641 | if ( NETWORK_GetState( ) == NETSTATE_SERVER ) |
1642 | - SERVERCOMMANDS_SetThingState( target, STATE_PAIN ); | |
1642 | + SERVERCOMMANDS_SetThingFrame( target, painstate ); | |
1643 | 1643 | |
1644 | 1644 | target->SetState (painstate); |
1645 | 1645 | } |
@@ -1655,13 +1655,16 @@ | ||
1655 | 1655 | } |
1656 | 1656 | else |
1657 | 1657 | { |
1658 | - // If we are the server, tell clients about the state change. | |
1659 | - if ( NETWORK_GetState( ) == NETSTATE_SERVER ) | |
1660 | - SERVERCOMMANDS_SetThingState( target, STATE_PAIN ); | |
1661 | - | |
1662 | 1658 | target->flags |= MF_JUSTHIT; // fight back! |
1663 | 1659 | FState * painstate = target->FindState(NAME_Pain, mod); |
1664 | - if (painstate != NULL) target->SetState (painstate); | |
1660 | + if (painstate != NULL) | |
1661 | + { | |
1662 | + // If we are the server, tell clients about the state change. | |
1663 | + if ( NETWORK_GetState( ) == NETSTATE_SERVER ) | |
1664 | + SERVERCOMMANDS_SetThingFrame( target, painstate ); | |
1665 | + | |
1666 | + target->SetState (painstate); | |
1667 | + } | |
1665 | 1668 | if (mod == NAME_PoisonCloud) |
1666 | 1669 | { |
1667 | 1670 | if ((target->flags3 & MF3_ISMONSTER) && pr_poison() < 128) |