summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorbrianluau <brianluau@54d463be-8e91-2dee-dedb-b68131a5f0ec>2012-04-21 08:26:58 +0000
committerbrianluau <brianluau@54d463be-8e91-2dee-dedb-b68131a5f0ec>2012-04-21 08:26:58 +0000
commit4f68a6ef917b92df214a12dcef09cffdfa1e80ff (patch)
tree98bf244c38b10dfbd244ad78e2c638270285d1e0
parent3726e00c073550558fa9b954e1fd2b854bc787e3 (diff)
downloadhercules-4f68a6ef917b92df214a12dcef09cffdfa1e80ff.tar.gz
hercules-4f68a6ef917b92df214a12dcef09cffdfa1e80ff.tar.bz2
hercules-4f68a6ef917b92df214a12dcef09cffdfa1e80ff.tar.xz
hercules-4f68a6ef917b92df214a12dcef09cffdfa1e80ff.zip
- Fixed emperium coordinates in Payon Holy Shadow (payg_cas03).
- Also enforce sd->emotionlasttime for pet emotions. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@15901 54d463be-8e91-2dee-dedb-b68131a5f0ec
-rw-r--r--doc/script_commands.txt8
-rw-r--r--npc/guild/agit_template.txt4
-rw-r--r--src/map/atcommand.c7
-rw-r--r--src/map/clif.c6
4 files changed, 17 insertions, 8 deletions
diff --git a/doc/script_commands.txt b/doc/script_commands.txt
index 002ca62d4..da23ff918 100644
--- a/doc/script_commands.txt
+++ b/doc/script_commands.txt
@@ -3360,12 +3360,14 @@ Return values for 'checkvending' are
'checkchatting' returns 1 if they are in a chat room, 0 if they are not.
Example(s):
-if (checkVending("Aaron")) mes "Aaron is currently vending!";
//This will check if Aaron is vending, and if so, put a message in front
//of the attached player saying Aaron is vending.
+ if (checkvending("Aaron"))
+ mes "Aaron is currently vending!";
-if (checkChatting()) mes "You are currently chatting!";
- //This will check if you're in a chat room or not
+ //This will check if the attached player in a chat room or not.
+ if (checkchatting())
+ mes "You are currently in a chat room!";
---------------------------------------
diff --git a/npc/guild/agit_template.txt b/npc/guild/agit_template.txt
index 8381f9ca3..21563adf9 100644
--- a/npc/guild/agit_template.txt
+++ b/npc/guild/agit_template.txt
@@ -78,7 +78,7 @@ OnStartArena:
else if (strnpcinfo(2) == "gefg_cas05") { setarray .@emproom[0],194,184; }
else if (strnpcinfo(2) == "payg_cas01") { setarray .@emproom[0],139,139; }
else if (strnpcinfo(2) == "payg_cas02") { setarray .@emproom[0],38,25; }
- else if (strnpcinfo(2) == "payg_cas03") { setarray .@emproom[0],268,264; }
+ else if (strnpcinfo(2) == "payg_cas03") { setarray .@emproom[0],269,265; }
else if (strnpcinfo(2) == "payg_cas04") { setarray .@emproom[0],270,28; }
else if (strnpcinfo(2) == "payg_cas05") { setarray .@emproom[0],30,30; }
else if (strnpcinfo(2) == "prtg_cas01") { setarray .@emproom[0],197,197; }
@@ -235,7 +235,7 @@ OnRecvCastle:
// Set Emperium room spawn coordinates and spawn monsters.
if (strnpcinfo(2) == "payg_cas01") { setarray .@emproom[0],139,139; }
else if (strnpcinfo(2) == "payg_cas02") { setarray .@emproom[0],38,25; }
- else if (strnpcinfo(2) == "payg_cas03") { setarray .@emproom[0],268,264; }
+ else if (strnpcinfo(2) == "payg_cas03") { setarray .@emproom[0],269,265; }
else if (strnpcinfo(2) == "payg_cas04") { setarray .@emproom[0],270,28; }
else if (strnpcinfo(2) == "payg_cas05") { setarray .@emproom[0],30,30; }
monster strnpcinfo(2),.@emproom[0],.@emproom[1],"Moonlight Flower",1150,1;
diff --git a/src/map/atcommand.c b/src/map/atcommand.c
index c19164d1a..c339407dc 100644
--- a/src/map/atcommand.c
+++ b/src/map/atcommand.c
@@ -6177,6 +6177,13 @@ ACMD_FUNC(pettalk)
ARR_FIND( 0, ARRAYLENGTH(emo), i, stricmp(message, emo[i]) == 0 );
if( i < ARRAYLENGTH(emo) )
{
+ if (sd->emotionlasttime + 1 >= time(NULL)) { // not more than 1 per second
+ sd->emotionlasttime = time(NULL);
+ clif_skill_fail(sd, 1, 0, 1);
+ return 0;
+ }
+ sd->emotionlasttime = time(NULL);
+
clif_emotion(&pd->bl, i);
return 0;
}
diff --git a/src/map/clif.c b/src/map/clif.c
index bfe78a58d..b969624df 100644
--- a/src/map/clif.c
+++ b/src/map/clif.c
@@ -9611,12 +9611,12 @@ void clif_parse_Emotion(int fd, struct map_session_data *sd)
return;
}
// fix flood of emotion icon (ro-proxy): flood only the hacker player
- if (sd->emotionlasttime >= time(NULL)) {
- sd->emotionlasttime = time(NULL) + 1; // not more than 1 per second (using /commands the client can spam it)
+ if (sd->emotionlasttime + 1 >= time(NULL)) { // not more than 1 per second
+ sd->emotionlasttime = time(NULL);
clif_skill_fail(sd, 1, USESKILL_FAIL_LEVEL, 1);
return;
}
- sd->emotionlasttime = time(NULL) + 1; // not more than 1 per second (using /commands the client can spam it)
+ sd->emotionlasttime = time(NULL);
if(battle_config.client_reshuffle_dice && emoticon>=E_DICE1 && emoticon<=E_DICE6)
{// re-roll dice