Implemented /resetcooltime (#8613)
Co-authored-by: Lemongrass3110 <lemongrass@kstp.at>
This commit is contained in:
@@ -1150,6 +1150,51 @@ ACMD_FUNC(hide)
|
||||
return 0;
|
||||
}
|
||||
|
||||
ACMD_FUNC(resetcooltime)
|
||||
{
|
||||
nullpo_retr(-1, sd);
|
||||
|
||||
for( size_t i = 0; i < ARRAYLENGTH( sd->scd ); i++ ){
|
||||
if( sd->scd[i] != nullptr ) {
|
||||
sprintf( atcmd_output, msg_txt( sd, 1537 ), skill_db.find( sd->scd[i]->skill_id )->name ); // Found skill '%s', unblocking...
|
||||
clif_displaymessage( sd->fd, atcmd_output );
|
||||
|
||||
if (battle_config.display_status_timers)
|
||||
clif_skill_cooldown( *sd, sd->scd[i]->skill_id, 0 );
|
||||
|
||||
delete_timer(sd->scd[i]->timer, skill_blockpc_end);
|
||||
aFree(sd->scd[i]);
|
||||
sd->scd[i] = nullptr;
|
||||
}
|
||||
}
|
||||
|
||||
if( sd->hd != nullptr && hom_is_active( sd->hd ) ){
|
||||
for( const uint16& skill_id : sd->hd->blockskill ){
|
||||
sprintf( atcmd_output, msg_txt( sd, 1537 ), skill_db.find( skill_id )->name ); // Found skill '%s', unblocking...
|
||||
clif_displaymessage( sd->fd, atcmd_output );
|
||||
|
||||
if (battle_config.display_status_timers)
|
||||
clif_skill_cooldown( *sd, skill_id, 0 );
|
||||
}
|
||||
|
||||
sd->hd->blockskill.clear();
|
||||
}
|
||||
|
||||
if( sd->md != nullptr ){
|
||||
for( const uint16& skill_id : sd->md->blockskill ){
|
||||
sprintf( atcmd_output, msg_txt( sd, 1537 ), skill_db.find( skill_id )->name ); // Found skill '%s', unblocking...
|
||||
clif_displaymessage( sd->fd, atcmd_output );
|
||||
|
||||
if (battle_config.display_status_timers)
|
||||
clif_skill_cooldown( *sd, skill_id, 0 );
|
||||
}
|
||||
|
||||
sd->md->blockskill.clear();
|
||||
}
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
/*==========================================
|
||||
* Changes a character's class
|
||||
*------------------------------------------*/
|
||||
@@ -11019,6 +11064,7 @@ void atcommand_basecommands(void) {
|
||||
ACMD_DEF(guildstorage),
|
||||
ACMD_DEF(option),
|
||||
ACMD_DEF(hide), // + /hide
|
||||
ACMD_DEF(resetcooltime), // + /resetcooltime
|
||||
ACMD_DEFR(jobchange, ATCMD_NOCONSOLE),
|
||||
ACMD_DEF(kill),
|
||||
ACMD_DEF(alive),
|
||||
|
||||
Reference in New Issue
Block a user