summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authormc_cameri <mc_cameri@54d463be-8e91-2dee-dedb-b68131a5f0ec>2004-12-21 22:44:37 +0000
committermc_cameri <mc_cameri@54d463be-8e91-2dee-dedb-b68131a5f0ec>2004-12-21 22:44:37 +0000
commit98c2c3c621f32fdf36f23cfd09565f8af7753e7d (patch)
tree690421a25fb99ba752bcad32621efa2aed3830b1 /src
parentf58657930161cc0dc3f1f74d0c0ed99c6a0c8829 (diff)
downloadhercules-98c2c3c621f32fdf36f23cfd09565f8af7753e7d.tar.gz
hercules-98c2c3c621f32fdf36f23cfd09565f8af7753e7d.tar.bz2
hercules-98c2c3c621f32fdf36f23cfd09565f8af7753e7d.tar.xz
hercules-98c2c3c621f32fdf36f23cfd09565f8af7753e7d.zip
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/branches/stable@714 54d463be-8e91-2dee-dedb-b68131a5f0ec
Diffstat (limited to 'src')
-rw-r--r--src/map/atcommand.c47
-rw-r--r--src/map/atcommand.h2
-rw-r--r--src/map/charcommand.c47
-rw-r--r--src/map/charcommand.h1
-rw-r--r--src/map/npc.c9
5 files changed, 56 insertions, 50 deletions
diff --git a/src/map/atcommand.c b/src/map/atcommand.c
index afc752d2e..b530376a1 100644
--- a/src/map/atcommand.c
+++ b/src/map/atcommand.c
@@ -131,7 +131,6 @@ ACMD_FUNC(charreset);
ACMD_FUNC(charstpoint);
ACMD_FUNC(charmodel);
ACMD_FUNC(charskpoint);
-ACMD_FUNC(charzeny);
ACMD_FUNC(agitstart);
ACMD_FUNC(agitend);
ACMD_FUNC(reloaditemdb);
@@ -379,7 +378,6 @@ static AtCommandInfo atcommand_info[] = {
{ AtCommand_CharModel, "@charmodel", 50, atcommand_charmodel },
{ AtCommand_CharSKPoint, "@charskpoint", 60, atcommand_charskpoint },
{ AtCommand_CharSTPoint, "@charstpoint", 60, atcommand_charstpoint },
- { AtCommand_CharZeny, "@charzeny", 60, atcommand_charzeny },
{ AtCommand_MapInfo, "@mapinfo", 99, atcommand_mapinfo },
{ AtCommand_Dye, "@dye", 40, atcommand_dye }, // by fritz
{ AtCommand_Dye, "@ccolor", 40, atcommand_dye }, // by fritz
@@ -5391,51 +5389,6 @@ int atcommand_charstpoint(
}
/*==========================================
- * Character Zeny Point (Rewritten by [Yor])
- *------------------------------------------
- */
-int atcommand_charzeny(
- const int fd, struct map_session_data* sd,
- const char* command, const char* message)
-{
- struct map_session_data *pl_sd;
- char character[100];
- int zeny = 0, new_zeny;
- nullpo_retr(-1, sd);
-
- memset(character, '\0', sizeof(character));
-
- if (!message || !*message || sscanf(message, "%d %99[^\n]", &zeny, character) < 2 || zeny == 0) {
- clif_displaymessage(fd, "Please, enter a number and a player name (usage: @charzeny <zeny> <name>).");
- return -1;
- }
-
- if ((pl_sd = map_nick2sd(character)) != NULL) {
- new_zeny = pl_sd->status.zeny + zeny;
- if (zeny > 0 && (zeny > MAX_ZENY || new_zeny > MAX_ZENY)) // fix positiv overflow
- new_zeny = MAX_ZENY;
- else if (zeny < 0 && (zeny < -MAX_ZENY || new_zeny < 0)) // fix negativ overflow
- new_zeny = 0;
- if (new_zeny != pl_sd->status.zeny) {
- pl_sd->status.zeny = new_zeny;
- clif_updatestatus(pl_sd, SP_ZENY);
- clif_displaymessage(fd, msg_table[211]); // Character's number of zenys changed!
- } else {
- if (zeny < 0)
- clif_displaymessage(fd, msg_table[41]); // Impossible to decrease the number/value.
- else
- clif_displaymessage(fd, msg_table[149]); // Impossible to increase the number/value.
- return -1;
- }
- } else {
- clif_displaymessage(fd, msg_table[3]); // Character not found.
- return -1;
- }
-
- return 0;
-}
-
-/*==========================================
* Recall All Characters Online To Your Location
*------------------------------------------
*/
diff --git a/src/map/atcommand.h b/src/map/atcommand.h
index a6c0a5e9e..0458c8ae1 100644
--- a/src/map/atcommand.h
+++ b/src/map/atcommand.h
@@ -115,7 +115,7 @@ enum AtCommandType {
AtCommand_CharModel,
AtCommand_CharSKPoint,
AtCommand_CharSTPoint,
- AtCommand_CharZeny,
+// AtCommand_CharZeny, //now #zeny
AtCommand_RecallAll,
AtCommand_ReloadItemDB,
AtCommand_ReloadMobDB,
diff --git a/src/map/charcommand.c b/src/map/charcommand.c
index 893266396..b5a3ba2f1 100644
--- a/src/map/charcommand.c
+++ b/src/map/charcommand.c
@@ -48,6 +48,7 @@ CCMD_FUNC(effect);
CCMD_FUNC(storagelist);
CCMD_FUNC(item);
CCMD_FUNC(warp);
+CCMD_FUNC(zeny);
#ifdef TXT_ONLY
/* TXT_ONLY */
@@ -84,6 +85,7 @@ static CharCommandInfo charcommand_info[] = {
{ CharCommandWarp, "#warp", 60, charcommand_warp },
{ CharCommandWarp, "#rura", 60, charcommand_warp },
{ CharCommandWarp, "#rura+", 60, charcommand_warp },
+ { CharCommandZeny, "#zeny", 60, charcommand_zeny },
#ifdef TXT_ONLY
/* TXT_ONLY */
@@ -1131,3 +1133,48 @@ int charcommand_warp(
return 0;
}
+
+/*==========================================
+ * #zeny <charname>
+ *------------------------------------------
+ */
+int charcommand_zeny(
+ const int fd, struct map_session_data* sd,
+ const char* command, const char* message)
+{
+ struct map_session_data *pl_sd;
+ char character[100];
+ int zeny = 0, new_zeny;
+ nullpo_retr(-1, sd);
+
+ memset(character, '\0', sizeof(character));
+
+ if (!message || !*message || sscanf(message, "%d %99[^\n]", &zeny, character) < 2 || zeny == 0) {
+ clif_displaymessage(fd, "Please, enter a number and a player name (usage: #zeny <zeny> <name>).");
+ return -1;
+ }
+
+ if ((pl_sd = map_nick2sd(character)) != NULL) {
+ new_zeny = pl_sd->status.zeny + zeny;
+ if (zeny > 0 && (zeny > MAX_ZENY || new_zeny > MAX_ZENY)) // fix positiv overflow
+ new_zeny = MAX_ZENY;
+ else if (zeny < 0 && (zeny < -MAX_ZENY || new_zeny < 0)) // fix negativ overflow
+ new_zeny = 0;
+ if (new_zeny != pl_sd->status.zeny) {
+ pl_sd->status.zeny = new_zeny;
+ clif_updatestatus(pl_sd, SP_ZENY);
+ clif_displaymessage(fd, msg_table[211]); // Character's number of zenys changed!
+ } else {
+ if (zeny < 0)
+ clif_displaymessage(fd, msg_table[41]); // Impossible to decrease the number/value.
+ else
+ clif_displaymessage(fd, msg_table[149]); // Impossible to increase the number/value.
+ return -1;
+ }
+ } else {
+ clif_displaymessage(fd, msg_table[3]); // Character not found.
+ return -1;
+ }
+
+ return 0;
+}
diff --git a/src/map/charcommand.h b/src/map/charcommand.h
index de7e83680..0bc3b3f8a 100644
--- a/src/map/charcommand.h
+++ b/src/map/charcommand.h
@@ -17,6 +17,7 @@ enum CharCommandType {
CharCommandStorageList,
CharCommandItem, // by MC Cameri
CharCommandWarp,
+ CharCommandZeny,
#ifdef TXT_ONLY
/* TXT_ONLY */
diff --git a/src/map/npc.c b/src/map/npc.c
index 43b97b055..4a7704740 100644
--- a/src/map/npc.c
+++ b/src/map/npc.c
@@ -1605,7 +1605,12 @@ static int npc_parse_script(char *w1,char *w2,char *w3,char *w4,char *first_line
// 引数の個数チェック
if (sscanf(w1,"%[^,],%d,%d,%d",mapname,&x,&y,&dir) != 4 ||
( strcmp(w2,"script")==0 && strchr(w4,',')==NULL) ) {
- printf("bad script line : %s\n",w3);
+ if (strlen(current_file)) {
+ printf("\n");
+ sprintf(tmp_output,"Bad script on line '"CL_WHITE"%s"CL_RESET"' fro"
+ "m file '"CL_WHITE"%s"CL_RESET"'.\n",w3,current_file);
+ ShowError(tmp_output);
+ }
return 1;
}
m = map_mapname2mapid(mapname);
@@ -2411,7 +2416,7 @@ int do_init_npc(void)
add_timer_func_list(npc_event_timer,"npc_event_timer");
add_timer_func_list(npc_event_do_clock,"npc_event_do_clock");
add_timer_func_list(npc_timerevent,"npc_timerevent");
-
+ memset(current_file,'\0',sizeof(current_file));
//exit(1);
return 0;