Emistry icon

[RO] Verification Code - Authorize Account Login

Emistry | PRO | 02/18/17 08:12:11 AM UTC | 0 ⭐ | 788 👁️ | Never ⏰ | []
text |

1.22 KB

|

None

|

0 👍

/

0 👎

// https://rathena.org/board/topic/109442-sql-to-npc-how/
 /*
 ALTER TABLE `login` ADD `code` VARCHAR(50) NOT NULL DEFAULT '';
 CREATE TABLE IF NOT EXISTS `e_code_list` (
  `id` INT(11) UNSIGNED NOT NULL AUTO_INCREMENT,
  `code` VARCHAR(50) NOT NULL DEFAULT '',
  PRIMARY KEY (`id`),
  UNIQUE KEY `code` (`code`)
) ENGINE=MyISAM; 
 */
  -	script	sample	-1,{
 	OnPCLoginEvent:
		.@aid = getcharid(3);
		query_sql( "SELECT `code` FROM `login` WHERE `account_id` = "+.@aid, .@code$ );
		if ( .@code$ == "" ) {
			mes "Please enter your verification code.";
			input .@input_code$;
			query_sql( "SELECT `id` FROM `e_code_list` WHERE `code` = '"+escape_sql( .@input_code$ )+"' LIMIT 1",.@code_id );
			if ( .@code_id ) {
				query_sql( "SELECT `account_id` FROM `login` WHERE `code` = '"+escape_sql( .@input_code$ )+"'", .@account_id );
				if ( .@account_id ) {
					mes "Someone already used this code.";
				}
				else {
					query_sql( "UPDATE `login` SET `code` = '"+escape_sql( .@input_code$ )+"' WHERE `account_id` = "+.@aid, .@code$ );
					mes "Verification completed.";
					close;
				}
			}
			else {
				mes "Invalid code.";
			}
			sleep2 5000;
			atcommand "@kick "+strcharinfo(0);
		}
		end;
 }

Comments

  •  icon
    01/01/70 12:00:00 AM UTC
    Plain Text |

    0 B

    |

    👍

    /

    👎