Pārlūkot izejas kodu

[Fixed]:
- Latest client support completed!

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@6880 54d463be-8e91-2dee-dedb-b68131a5f0ec

Lance 19 gadi atpakaļ
vecāks
revīzija
7cebf95264
2 mainītis faili ar 8 papildinājumiem un 7 dzēšanām
  1. 3 3
      npc/scripts_custom.conf
  2. 5 4
      src/login/login.c

+ 3 - 3
npc/scripts_custom.conf

@@ -36,7 +36,7 @@ npc: npc/custom/adoption.txt
 // -- Reset NPC
 //npc: npc/custom/jobs/reset.txt
 // -- Job Changer
-//npc: npc/custom/jobs/jobmaster.txt
+npc: npc/custom/jobs/jobmaster.txt
 // -- Healer(s)
 //npc: npc/custom/healers/heal.txt
 //npc: npc/custom/healers/heal_payment.txt
@@ -90,8 +90,8 @@ npc: npc/custom/adoption.txt
 //npc: npc/custom/Lance/FR_WeatherController.c
 //npc: npc/custom/Lance/FR_MailSystem.c
 //npc: npc/sample/npc_dynamic_shop.txt
-//npc: npc/sample/monster_controller.cpp
-//npc: npc/custom/Lance/Sentry.cpp
+npc: npc/sample/monster_controller.cpp
+npc: npc/custom/Lance/Sentry.cpp
 // --------------------------------------------------------------
 
 // --------------------------------------------------------------

+ 5 - 4
src/login/login.c

@@ -3112,6 +3112,7 @@ int parse_login(int fd) {
 				memcpy(account.passwd, RFIFOP(fd,30), NAME_LENGTH);
 				account.passwd[23] = '\0';
 				remove_control_chars((unsigned char *)account.passwd);
+				ShowInfo("Login packet %s and %s  with version %d\n", account.userid, account.passwd, account.version);
 			} else {
 				login_log("Request for connection (encryption mode) of %s (ip: %s)." RETCODE, account.userid, ip);
 				 // If remove control characters from received password encrypted by md5,
@@ -3120,18 +3121,18 @@ int parse_login(int fd) {
 				account.passwd[16] = '\0';
 			}
 #ifdef PASSWORDENC
-			account.passwdenc = (RFIFOW(fd,0) == 0x64) ? 0 : PASSWORDENC;
+			account.passwdenc = (RFIFOW(fd,0) != 0x01dd) ? 0 : PASSWORDENC;
 #else
 			account.passwdenc = 0;
 #endif
 
 			if (!check_ip(session[fd]->client_addr.sin_addr.s_addr)) {
 				login_log("Connection refused: IP isn't authorised (deny/allow, ip: %s)." RETCODE, ip);
-                                WFIFOHEAD(fd, 23);
+                WFIFOHEAD(fd, 23);
 				WFIFOW(fd,0) = 0x6a;
 				WFIFOB(fd,2) = 3; // 3 = Rejected from Server
 				WFIFOSET(fd,23);
-				RFIFOSKIP(fd,(RFIFOW(fd,0) == 0x64) ? 55 : 47);
+				RFIFOSKIP(fd,packet_len);
 				break;
 			}
 
@@ -3141,7 +3142,7 @@ int parse_login(int fd) {
 				if (min_level_to_connect > gm_level) {
 					login_log("Connection refused: the minimum GM level for connection is %d (account: %s, GM level: %d, ip: %s)." RETCODE,
 					          min_level_to_connect, account.userid, gm_level, ip);
-                                        WFIFOHEAD(fd, 3);
+                    WFIFOHEAD(fd, 3);
 					WFIFOW(fd,0) = 0x81;
 					WFIFOB(fd,2) = 1; // 01 = Server closed
 					WFIFOSET(fd,3);