summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--Changelog.txt2
-rw-r--r--src/map/clif.c25
-rw-r--r--src/map/guild.c14
3 files changed, 25 insertions, 16 deletions
diff --git a/Changelog.txt b/Changelog.txt
index 42438081a..6c019b932 100644
--- a/Changelog.txt
+++ b/Changelog.txt
@@ -1,5 +1,7 @@
Date Added
01/13
+ * Added and testing support for 2004-12-06Sakexe [celest]
+ * Removed emblem changing requiring Glory of Guild limited to TXT only [celest]
* Corrected a typo preventing Plagiarism to work, thanks to orn [celest]
* Fixed Berzebub card and other 'reduce cast delays' equipment not working
[celest]
diff --git a/src/map/clif.c b/src/map/clif.c
index 3bd0ceab5..b72192690 100644
--- a/src/map/clif.c
+++ b/src/map/clif.c
@@ -7318,8 +7318,12 @@ void clif_parse_WantToConnection(int fd, struct map_session_data *sd)
account_id = RFIFOL(fd,12);
else if (RFIFOREST(fd) >= 32 && (RFIFOB(fd,31) == 0 || RFIFOB(fd,31) == 1)) // 00 = Female, 01 = Male
account_id = RFIFOL(fd,10);
- else // 29 28 28
- account_id = RFIFOL(fd,5);
+ else { // 29 28 28
+ if (RFIFOW(fd,1) == 0) // testing ^^;
+ account_id = RFIFOL(fd,3);
+ else
+ account_id = RFIFOL(fd,5);
+ }
// 0x9B
} else {
account_id = RFIFOL(fd,3);
@@ -7374,8 +7378,13 @@ void clif_parse_WantToConnection(int fd, struct map_session_data *sd)
sd->packet_ver = 11; // 5: old, 6: 7july04, 7: 13july04, 8: 26july04, 9: 9aug04/16aug04/17aug04, 10: 6sept04, 11: 21sept04, 12: 18oct04, 13: 25oct04 (by [Yor])
pc_setnewpc(sd, account_id, RFIFOL(fd,17), RFIFOL(fd,23), RFIFOL(fd,27), RFIFOB(fd,31), fd);
} else { // 29
- sd->packet_ver = 13; // 5: old, 6: 7july04, 7: 13july04, 8: 26july04, 9: 9aug04/16aug04/17aug04, 10: 6sept04, 11: 21sept04, 12: 18oct04, 13: 25oct04 (by [Yor])
- pc_setnewpc(sd, account_id, RFIFOL(fd,14), RFIFOL(fd,20), RFIFOL(fd,24), RFIFOB(fd,28), fd);
+ if (RFIFOW(fd,1) == 0) {
+ sd->packet_ver = 15; // 5: old, 6: 7july04, 7: 13july04, 8: 26july04, 9: 9aug04/16aug04/17aug04, 10: 6sept04, 11: 21sept04, 12: 18oct04, 13: 25oct04 (by [Yor])
+ pc_setnewpc(sd, account_id, RFIFOL(fd,10), RFIFOL(fd,20), RFIFOL(fd,24), RFIFOB(fd,28), fd);
+ } else {
+ sd->packet_ver = 13; // 5: old, 6: 7july04, 7: 13july04, 8: 26july04, 9: 9aug04/16aug04/17aug04, 10: 6sept04, 11: 21sept04, 12: 18oct04, 13: 25oct04 (by [Yor])
+ pc_setnewpc(sd, account_id, RFIFOL(fd,14), RFIFOL(fd,20), RFIFOL(fd,24), RFIFOB(fd,28), fd);
+ }
}
// 0x9B
} else {
@@ -10587,8 +10596,12 @@ static int clif_parse(int fd) {
packet_ver = 12; // 12: 18oct04
else if (RFIFOREST(fd) >= 32 && (RFIFOB(fd,31) == 0 || RFIFOB(fd,31) == 1)) // 00 = Female, 01 = Male
packet_ver = 11; // 11: 21sept04
- else if (RFIFOREST(fd) >= 29 && (RFIFOB(fd,28) == 0 || RFIFOB(fd,28) == 1)) // 00 = Female, 01 = Male
- packet_ver = 13; // 13: 25oct04 (by [Yor])
+ else if (RFIFOREST(fd) >= 29 && (RFIFOB(fd,28) == 0 || RFIFOB(fd,28) == 1)) { // 00 = Female, 01 = Male
+ if (RFIFOW(fd,1) == 0) // testing ^^;
+ packet_ver = 15;
+ else
+ packet_ver = 13; // 13: 25oct04 (by [Yor])
+ }
// -- some way to identify version 14 and 15? --
// else probably incomplete packet
else if (RFIFOREST(fd) < 29)
diff --git a/src/map/guild.c b/src/map/guild.c
index ddaa05999..5f9e31794 100644
--- a/src/map/guild.c
+++ b/src/map/guild.c
@@ -890,16 +890,10 @@ int guild_change_emblem(struct map_session_data *sd,int len,const char *data)
nullpo_retr(0, sd);
- /* Temporarily only for TXT until there's proper char server support [Celest] */
- #ifdef TXT_ONLY
- if ((g = guild_search(sd->status.guild_id)) && guild_checkskill(g, GD_GLORYGUILD)>0)
- return intif_guild_emblem(sd->status.guild_id,len,data);
-
- clif_skill_fail(sd,GD_GLORYGUILD,0,0);
- #else
- if ((g = guild_search(sd->status.guild_id)))
- return intif_guild_emblem(sd->status.guild_id,len,data);
- #endif
+ if ((g = guild_search(sd->status.guild_id)) && guild_checkskill(g, GD_GLORYGUILD)>0)
+ return intif_guild_emblem(sd->status.guild_id,len,data);
+
+ clif_skill_fail(sd,GD_GLORYGUILD,0,0);
return 0;
}
// ギルドエンブレム変更通知