ソースを参照

Massive at+charcommand cleanup, big thanks to HiddenDragon

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@10272 54d463be-8e91-2dee-dedb-b68131a5f0ec
DracoRPG 18 年 前
コミット
3b392f3f37
7 ファイル変更1449 行追加1304 行削除
  1. 1 0
      Changelog-Trunk.txt
  2. 348 403
      conf-tmpl/atcommand_athena.conf
  3. 202 41
      conf-tmpl/charcommand_athena.conf
  4. 368 459
      src/map/atcommand.c
  5. 16 43
      src/map/atcommand.h
  6. 471 345
      src/map/charcommand.c
  7. 43 13
      src/map/charcommand.h

+ 1 - 0
Changelog-Trunk.txt

@@ -4,6 +4,7 @@ AS OF SVN REV. 5091, WE ARE NOW USING TRUNK.  ALL UNTESTED BUGFIXES/FEATURES GO
 IF YOU HAVE A WORKING AND TESTED BUGFIX PUT IT INTO STABLE AS WELL AS TRUNK.
 
 2007/04/17
+	* Massive at+charcommand cleanup, big thanks to HiddenDragon [DracoRPG]
 	* Partially deobfuscated the grfio module
 	* Finally fixed mingw problems, managed to build both TXT and SQL
 	* Fixed the uint32 platform problem (Microsoft failed so I removed it :)

ファイルの差分が大きいため隠しています
+ 348 - 403
conf-tmpl/atcommand_athena.conf


+ 202 - 41
conf-tmpl/charcommand_athena.conf

@@ -8,91 +8,252 @@
 // With default character, all commands begin by a '#', example: #save SomePlayer
 command_symbol: #
 
-//Give another character a fake name
-fakename: 20
+//--------------------------
+// 0: normal player commands
+// None for security purposes.
 
-//List a chacter's stats
-stats: 40
+//-------------------------
+// 1: Super player commands
 
-//Give another character all stats
-statsall: 40
+//---------------------------
+// 10: Super player+ commands
 
-//List a chacter's items
-itemlist: 40
+//----------------------
+// 20: Mediator commands
+
+//--------------------
+// 40: Sub-GM commands
+
+
+//View the items in a character's cart
+cartlist: 40
 
 //Apply an effect onto another character
 effect: 40
 
+//View the exp of a character
+exp: 40
+
+//List a chacter's items
+itemlist: 40
+
+//View the jail time remaining
+jailtime: 40
+
+//Refresh a character
+refresh: 40
+
+//List a chacter's stats
+stats: 40
+
 //List a chacter's storage items
 storagelist: 40
 
-//Rename another character's pet
-petrename: 50
+//---------------------
+// 50: Sub-GM+ commands
 
-//Make another character's pet friendly/not
-petfriendly: 50
+//Change a character's clothing color
+dye: 50
+
+//Give another character a fake name
+fakename: 50
+
+//Open the hatch dialog for a character
+hatch: 50
+
+//Change a character's hair color
+hcolor: 50
+haircolor: 50
+
+//Change a character's hair style
+hstyle: 50
+hairstyle: 50
 
 // Changes character's model
 model: 50
 
-//Apply a certain option to another character
-option: 60
+//Give or remove a peco from a character
+mount: 50
+mountpeco: 50
 
-//Save another character
-save: 60
+//Make another character's pet friendly/not
+petfriendly: 50
 
-//Performs a stat and skill reset on someone else
-reset: 60
+//Rename another character's pet
+petrename: 50
 
-//Give another character spiritball effect
-spiritball: 60
+//Change a character's size
+size: 50
+
+//----------------
+// 60: GM commands
+
+//Resurrects a dead character
+alive: 60
+
+//Give a player all the skills available to him/her
+allskill: 60
+allskills: 60
+skillall: 60
+skillsall: 60
+
+//Give a character the maximum possible stats
+allstat: 60
+allstats: 60
+statall: 60
+statsall: 60
+
+//Change another character's base level (3 same commands)
+blvl: 60
+blevel: 60
+baselvl: 60
+baselevel: 60
+
+// Changes the sex of an online player (all characters on the account)
+changesex: 60
+
+//Delete items from a character
+delitem: 60
+
+//Disguise a character
+disguise: 60
+undisguise: 60
+
+//Resets another character's designated maps
+feelreset: 60
+
+//Change the guild level for a character's guild
+glvl: 60
+glevel: 60
+guildlvl: 60
+guildlevel: 60
+
+//Open guild storage for a character
+gstorage: 60
+
+//Heal a character
+heal: 60
+
+//Invoke GM Hide on a character
+hide: 60
+
+//Increase a character's homunculus' level
+hlvl: 60
+hlevel: 60
+homlvl: 60
+homlevel: 60
+
+//Evolve a character's homunculus
+homevolve: 60
+homevolution: 60
+
+//Change a character's homunculus' friendly value
+homfriendly: 60
+
+//Change a character's homunculus' hunger value
+homhungry: 60
+
+//View a character's homunculus' stats
+hominfo: 40
 
 //Give another character an item
 item: 60
 
+//Create a specific item (with cards, refines, etc
+item2: 60
+
+//Remove all of a character's possessions
+itemreset: 60
+
 //Change another character's job (2 same commands)
 job: 60
 jobchange: 60
 
-//Give another character zeny
-zeny: 60
-
-//Change another character's base level (3 same commands)
-baselvl: 60
-blvl: 60
-baselvlup: 60
-
 //Change another character's job level (3 same commands)
-joblvl: 60
 jlvl: 60
-joblvlup: 60
+jlevel: 60
+joblvl: 60
+joblevel: 60
 
-//Give another character a platinum skill
-questskill: 60
+//Allow a character to attack anybody
+killer: 60
+
+//Make a character killable by anybody
+killable: 60
+
+//Return a character to their respawn point
+load: 60
 
 //Take away a character's platinum skill
 lostskill: 60
 
-// Resets another character's status, skills
-streset: 60
-skreset: 60
+//Make a character immune to monsters
+monsterignore: 60
 
+//Apply a certain option to another character
+option: 60
 
-// Gives another character status points
-stpoint: 60
+//Change a character's pet's hungry value
+pethungry: 60
+
+//Produce forged equipment on a character (as if he/she was a blacksmith)
+produce: 60
+
+//Give another character a platinum skill
+questskill: 60
+
+//Performs a stat and skill reset on someone else.
+reset: 60
+
+//Save another character
+save: 60
 
 // Gives another character skill points
 skpoint: 60
 
-// Changes the sex of an online player (all characters on the account)
-changesex: 60
+//Change a character's walking speed
+speed: 60
+
+//Give another character spiritball effect
+spiritball: 60
+
+//Open storage for a character
+storage: 60
+
+// Gives another character status points
+stpoint: 60
+
+//Change a character's stats
+str: 60
+agi: 60
+vit: 60
+int: 60
+dex: 60
+luk: 60
+
+// Resets another character's status, skills
+streset: 60
+skreset: 60
 
 // Warp a player somewhere else (3 same commands)
 warp: 60
 rura: 60
 rura+: 60
 
-//Resets another character's designated maps
-feelreset: 60
+//----------------------
+// 80: GM Chief commands
+
+//Refine a character's equipment
+refine: 80
+
+//Give another character zeny
+zeny: 80
+
+//---------------------------
+// 99: Administrator commands
+
+//---------------------------------------------------------------
+// 100: Disabled commands
+
 
 import: conf/import/charcommand_conf.txt

ファイルの差分が大きいため隠しています
+ 368 - 459
src/map/atcommand.c


+ 16 - 43
src/map/atcommand.h

@@ -73,7 +73,7 @@ enum AtCommandType {
 	AtCommand_Produce,
 	AtCommand_Memo,
 	AtCommand_GAT,
-	AtCommand_Packet,
+	AtCommand_DisplayStatus,
 	AtCommand_StatusPoint,
 	AtCommand_SkillPoint,
 	AtCommand_Zeny,
@@ -90,9 +90,6 @@ enum AtCommandType {
 	AtCommand_PetHungry,
 	AtCommand_PetRename,
 	AtCommand_Recall,
-	AtCommand_Revive,
-	AtCommand_CharacterStatsAll,
-	AtCommand_CharacterLoad,
 	AtCommand_Night,
 	AtCommand_Day,
 	AtCommand_Doom,
@@ -132,7 +129,6 @@ enum AtCommandType {
 	AtCommand_CharUnBlock, // by Yor
 	AtCommand_CharUnBan, // by Yor
 	AtCommand_MountPeco, // by Valaris
-	AtCommand_CharMountPeco, // by Yor
 	AtCommand_GuildSpy, // [Syrus22]
 	AtCommand_PartySpy, // [Syrus22]
 	AtCommand_RepairAll, // [Valaris]
@@ -144,20 +140,15 @@ enum AtCommandType {
 	AtCommand_Loadnpc,
 	AtCommand_Unloadnpc,
 	AtCommand_ServerTime, // by Yor
-	AtCommand_CharDelItem, // by Yor
 	AtCommand_Jail, // by Yor
 	AtCommand_UnJail, // by Yor
 	AtCommand_JailFor, // Meruru
 	AtCommand_JailTime, // Coltaro
-	AtCommand_CharJailTime, // Coltaro
 	AtCommand_Disguise, // [Valaris]
 	AtCommand_UnDisguise, // by Yor
-	AtCommand_CharDisguise, // Kalaspuff
-	AtCommand_CharUnDisguise, // Kalaspuff
 	AtCommand_EMail, // by Yor
 	AtCommand_Hatch,
 	AtCommand_Effect, // by Apple
-	AtCommand_Char_Cart_List, // by Yor
 	AtCommand_AddWarp, // by MouseJstr
 	AtCommand_Follow, // by MouseJstr
 	AtCommand_SkillOn, // by MouseJstr
@@ -165,11 +156,8 @@ enum AtCommandType {
 	AtCommand_Killer, // by MouseJstr
 	AtCommand_NpcMove, // by MouseJstr
 	AtCommand_Killable, // by MouseJstr
-	AtCommand_CharKillable, // by MouseJstr
 	AtCommand_Dropall, // by MouseJstr
-	AtCommand_Chardropall, // by MouseJstr
 	AtCommand_Storeall, // by MouseJstr
-	AtCommand_Charstoreall, // by MouseJstr
 	AtCommand_Skillid, // by MouseJstr
 	AtCommand_Useskill, // by MouseJstr
 	AtCommand_DisplaySkill,
@@ -203,41 +191,17 @@ enum AtCommandType {
 	AtCommand_NpcTalk,
 	AtCommand_PetTalk,
 	AtCommand_Users,
-	// SQL-only commands start
-#ifndef TXT_ONLY
-	AtCommand_CheckMail, // [Valaris]
-	AtCommand_ListMail, // [Valaris]
-	AtCommand_ListNewMail, // [Valaris]
-	AtCommand_ReadMail, // [Valaris]
-	AtCommand_SendMail, // [Valaris]
-	AtCommand_DeleteMail, // [Valaris]
-	AtCommand_SendPriorityMail, // [Valaris]
-	AtCommand_RefreshOnline, // [Valaris]
-	// SQL-only commands end
-#endif
 	AtCommand_SkillTree, // by MouseJstr
 	AtCommand_Marry, // by MouseJstr
 	AtCommand_Divorce, // by MouseJstr
-	AtCommand_Grind, // by MouseJstr
-	AtCommand_Grind2, // by MouseJstr
-
 	AtCommand_Me, //added by massdriller, code by lordalfa
-
 	AtCommand_DMStart, // by MouseJstr
 	AtCommand_DMTick, // by MouseJstr
-
-	AtCommand_JumpToId, // by Dino9021
 	AtCommand_JumpToId2, // by Dino9021
-	AtCommand_RecallId, // by Dino9021
 	AtCommand_RecallId2, // by Dino9021
-	AtCommand_KickId, // by Dino9021
 	AtCommand_KickId2, // by Dino9021
-	AtCommand_ReviveId, // by Dino9021
 	AtCommand_ReviveId2, // by Dino9021
-	AtCommand_KillId, // by Dino9021
 	AtCommand_KillId2, // by Dino9021
-	AtCommand_CharKillableId, // by Dino9021
-	AtCommand_CharKillableId2, // by Dino9021
 	AtCommand_Sound,
 	AtCommand_UndisguiseAll,
 	AtCommand_DisguiseAll,
@@ -247,10 +211,8 @@ enum AtCommandType {
 	AtCommand_Exp,	// by Skotlex
 	AtCommand_Adopt, // by Veider
 	AtCommand_Version, // by Ancyker
-
 	AtCommand_MuteArea, // MouseJstr
 	AtCommand_Rates, // MouseJstr
-
 	AtCommand_ItemInfo, // Lupus
 	AtCommand_WhoDrops, // Skotlex
 	AtCommand_MapFlag, // Lupus
@@ -264,16 +226,13 @@ enum AtCommandType {
 	AtCommand_ChangeGM,//durf
 	AtCommand_ChangeLeader,
 	AtCommand_PartyOption,
-	
 	AtCommand_Invite, // By LuzZza
 	AtCommand_Duel, // By LuzZza
 	AtCommand_Leave, // By LuzZza
 	AtCommand_Accept, // By LuzZza
 	AtCommand_Reject, // By LuzZza
-	
 	AtCommand_Away, // LuzZza
 	AtCommand_Main, // LuzZza
-
 	AtCommand_Clone, // [Valaris]
 	AtCommand_ToNPC, // LuzZza
 	AtCommand_Commands, // [Skotlex]
@@ -289,7 +248,21 @@ enum AtCommandType {
 	AtCommand_HomStats, //[Skotlex]
 	AtCommand_HomShuffle, //[Skotlex]
 	AtCommand_ShowMobs, //KarLaeda
-	// end <- Ahem, guys, don't place AtCommands after AtCommand_Unknown! [Skotlex]
+	AtCommand_FeelReset, //[HiddenDragon]
+	AtCommand_HappyHappyJoyJoy,
+	// SQL-only commands start
+#ifndef TXT_ONLY
+	AtCommand_CheckMail, // [Valaris]
+	AtCommand_ListMail, // [Valaris]
+	AtCommand_ListNewMail, // [Valaris]
+	AtCommand_ReadMail, // [Valaris]
+	AtCommand_SendMail, // [Valaris]
+	AtCommand_DeleteMail, // [Valaris]
+	AtCommand_SendPriorityMail, // [Valaris]
+	AtCommand_RefreshOnline, // [Valaris]
+	// SQL-only commands end
+#endif
+	// No more commands after this line
 	AtCommand_Unknown,
 	AtCommand_MAX
 };

ファイルの差分が大きいため隠しています
+ 471 - 345
src/map/charcommand.c


+ 43 - 13
src/map/charcommand.h

@@ -13,7 +13,6 @@ enum CharCommandType {
 	CharCommandStats,
 	CharCommandOption,
 	CharCommandSave,
-	CharCommandStatsAll,
 	CharCommandSpiritball,
 	CharCommandItemList,
 	CharCommandEffect,
@@ -34,18 +33,49 @@ enum CharCommandType {
 	CharCommandChangeSex,
 	CharCommandFeelReset, // Komurka
 	CharCommandHelp,
-
-#ifdef TXT_ONLY
-/* TXT_ONLY */
-
-/* TXT_ONLY */
-#else
-/* SQL-only */
-
-/* SQL Only */
-#endif
-	
-	// End. No more commans after this line.
+	CharCommandLoad,
+	CharCommandSpeed,
+	CharCommandStorage,
+	CharCommandGStorage,
+	CharCommandHide,
+	CharCommandAlive,
+	CharCommandHeal,
+	CharCommandItem2,
+	CharCommandItemReset,
+	CharCommandRefine,
+	CharCommandProduce,
+	CharCommandStrength,
+	CharCommandAgility,
+	CharCommandVitality,
+	CharCommandIntelligence,
+	CharCommandDexterity,
+	CharCommandLuck,
+	CharCommandGuildLevelUp,
+	CharCommandHatch,
+	CharCommandPetHungry,
+	CharCommandAllSkill,
+	CharCommandDye,
+	CharCommandHStyle,
+	CharCommandHColor,
+	CharCommandAllStats,
+	CharCommandMountPeco,
+	CharCommandDelItem,
+	CharCommandJailTime,
+	CharCommandDisguie,
+	CharCommandUnDisguise,
+	CharCommandCartList,
+	CharCommandKiller,
+	CharCommandKillable,
+	CharCommandRefresh,
+	CharCommandExp,
+	CharCommandMonsterIgnore,
+	CharCommandSize,
+	CharCommandHomLevel,
+	CharCommandHomEvolve,
+	CharCommandHomFriendly,
+	CharCommandHomHungry,
+	CharCommandHomInfo,
+	// No more commands after this line
 	CharCommand_Unknown,
 	CharCommand_MAX
 };

この差分においてかなりの量のファイルが変更されているため、一部のファイルを表示していません