diff options
Diffstat (limited to 'src/map/atcommand.cpp')
-rw-r--r-- | src/map/atcommand.cpp | 14 |
1 files changed, 8 insertions, 6 deletions
diff --git a/src/map/atcommand.cpp b/src/map/atcommand.cpp index 2a5791e..7c165ef 100644 --- a/src/map/atcommand.cpp +++ b/src/map/atcommand.cpp @@ -4033,17 +4033,19 @@ static ATCE atcommand_pvp(Session *s, dumb_ptr<map_session_data> sd, ZString) { - if (sd->pvp_timer) + int chan = sd->state.pvpchannel; + if (sd->pvp_timer || (chan > 1)) return ATCE::OKAY; - sd->state.pvpon = !sd->state.pvpon; - pc_setpvptimer(sd, battle_config.player_pvp_time); - - if (sd->state.pvpon) + if (chan < 1) { + sd->state.pvpchannel = 1; clif_displaymessage(s, "##3PvP : ##BOn"_s); - else + } else { + sd->state.pvpchannel = 0; clif_displaymessage(s, "##3PvP : ##BOff"_s); + } + pc_setpvptimer(sd, battle_config.player_pvp_time); return ATCE::OKAY; } |