From c236f047c62c14a493ead7f2027258f3a1a49fc0 Mon Sep 17 00:00:00 2001 From: Jesusaves Date: Fri, 28 Jul 2023 18:32:24 -0300 Subject: Add @rename / @forcerename back --- npc/commands/force-rename.txt | 47 +++++++++++++++++++++++++++++++++++++++++++ npc/scripts.conf | 1 + 2 files changed, 48 insertions(+) create mode 100644 npc/commands/force-rename.txt diff --git a/npc/commands/force-rename.txt b/npc/commands/force-rename.txt new file mode 100644 index 0000000..16e20c5 --- /dev/null +++ b/npc/commands/force-rename.txt @@ -0,0 +1,47 @@ +// @charrename/@forcerename atcommand +// FORCEFULLY renames a char. Collision is handled by SQL. +// +// group lv: 80+ +// group char lv: 80+ +// log: True +// +// usage: npc/commands/force-rename.txt +// @charrename New Nickname +// #forcerename "char" +// + +- script @charrename 32767,{ + end; + +OnRename: + // array size validation + if (getarraysize(.@atcmd_parameters$) <= 0) { + dispbottom("Syntax requires argument between 3 and 30 chars long."); + end; + } + // Set new nickname + .@nickname$ += implode(.@atcmd_parameters$, " "); + .@nickname$ = strip(.@nickname$); + // Empty nickname + if (.@nickname$ == "" || .@nickname$ == "NULL") + end; + // Too long or too short nickname + if (getstrlen(.@nickname$) > 30 || getstrlen(.@nickname$) < 3) + end; + // Attempt to rename. If name is taken, will fail at SQL query + dispbottom l("Your nickname has been redefined by GM Team."); + .@id=getcharid(3); + .@n$=strcharinfo(0); + detachrid(); + kick(.@id, 12); // 12 = Pay changed. + sleep(25); + query_sql(sprintf("UPDATE `char` SET `name`='%s' WHERE `name`='%s'", escape_sql(.@nickname$), escape_sql(.@n$))); + debugmes "[SUCCESS] char %s renamed to %s", .@n$, .@nickname$; + end; + +OnInit: + //bindatcmd "charrename", "@charrename::OnRename", 80, 80, 1; + bindatcmd "forcerename", "@charrename::OnRename", 80, 80, 1; + bindatcmd "rename", "@charrename::OnRename", 80, 80, 1; + end; +} diff --git a/npc/scripts.conf b/npc/scripts.conf index a62a25a..5e07983 100644 --- a/npc/scripts.conf +++ b/npc/scripts.conf @@ -106,6 +106,7 @@ "npc/commands/debug-quest.txt", "npc/commands/debug.txt", "npc/commands/discord.txt", +"npc/commands/force-rename.txt", "npc/commands/grantpower.txt", "npc/commands/ipcheck.txt", "npc/commands/language.txt", -- cgit v1.2.3-60-g2f50