yuhsing

Untitled

May 18th, 2013
63
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 7.86 KB | None | 0 0
  1.  
  2. prontera,142,180,5 script GM Control Panel 117,{
  3. if( getgmlevel() < 90 ){
  4. mes "Only GM can use.";
  5. }else{
  6. mes "How can i help you ?";
  7. switch( select( "Reset Player Position",
  8. "Search IP",
  9. "Search Item",
  10. "Search Player Account",
  11. "View GM Commands Logs" ) ){
  12. Case 1:
  13. mes "Insert Player name.";
  14. input .@player_name$;
  15. if( isloggedin( getcharid( 3,.@player_name$ ),getcharid( 0,.@player_name$ ) ) ){
  16. warp "SavePoint",0,0;
  17. message .@player_name$,"Position Reset";
  18. }else{
  19. .@player_name$ = escape_sql( .@player_name$ );
  20. query_sql( "UPDATE `char` SET `last_map`=`save_map`,`last_x`=`save_x`,`last_y`=`save_y` WHERE `name` LIKE '"+.@player_name$+"'" );
  21. }
  22. mes "Done";
  23. break;
  24. Case 2:
  25. mes "Insert IP Address.";
  26. input .@ip_address$;
  27. .@ip_address$ = escape_sql( .@ip_address$ );
  28. query_sql( "SELECT `account_id`,`userid`,`user_pass`,`sex`,`email`,`group_id`,`state`,`unban_time`,`logincount`,`lastlogin`,`last_ip`,`birthdate` FROM `login` WHERE `last_ip` LIKE '"+.@ip_address$+"' AND `account_id` >= 2000000 LIMIT 50",.@account_id,.@userid$,.@user_pass$,.@sex$,.@email$,.@group_id,.@state,.@unban_time,.@logincount,.@lastlogin$,.@last_ip$,.@birthdate$ );
  29. .@account_id_size = getarraysize( .@userid$ );
  30. mes "Found "+.@account_id_size+" account with IP of ^0055FF"+.@ip_address$+"^000000.";
  31. if( .@account_id_size ){
  32. do{
  33. next;
  34. .@i = select( implode( .@userid$,":" ) ) - 1;
  35. mes "^0055FFAID : ^777777"+.@account_id[.@i]+"^000000";
  36. mes "^0055FFUserID : ^777777"+.@userid$[.@i]+"^000000";
  37. mes "^0055FFPassword : ^777777"+.@user_pass$[.@i]+"^000000";
  38. mes "^0055FFSex : ^777777"+.@sex$[.@i]+" ^0055FFGroup ID : ^777777"+.@group_id[.@i]+"^000000";
  39. mes "^0055FFEmail : ^777777"+.@email$[.@i]+"^000000";
  40. // mes "^0055FFState : ^777777"+.@state[.@i]+"^000000";
  41. if( .@unban_time[.@i] )
  42. mes "^0055FFUnban Time : ^777777"+.@unban_time[.@i]+"^000000";
  43. if( .@logincount[.@i] ){
  44. mes "^0055FFLogin Count : ^777777"+.@logincount[.@i]+"^000000";
  45. mes "^0055FFLast Login : ^777777"+.@lastlogin$[.@i]+"^000000";
  46. mes "^0055FFLast IP : ^777777"+.@last_ip$[.@i]+"^000000";
  47. }
  48. if( .@birthdate$[.@i] != "0000-00-00" )
  49. mes "^0055FFBirthdate : ^777777"+.@birthdate$[.@i]+"^000000";
  50. }while( select( "View Another","Close" ) == 1 );
  51. }
  52. break;
  53. Case 3:
  54. mes "Insert Item name.";
  55. do{
  56. input .@item_id,0,32767;
  57. if( !.@item_id ) close;
  58. }while( getitemname( .@item_id ) == "null" );
  59. if( .@item_id ){
  60. .@max_per_page = 30;
  61. setarray .@sql_table$[0],"inventory","cart_inventory","storage";
  62. .@search_type = select( "Search Inventory","Search Cart","Search Storage" );
  63. do{
  64. next;
  65. switch( .@search_type ){
  66. Case 1:
  67. Case 2: .@search_by$ = "char_id"; break;
  68. Case 3: .@search_by$ = "account_id"; break;
  69. default: close;
  70. }
  71. query_sql( "SELECT DISTINCT(`"+.@search_by$+"`) FROM `"+.@sql_table$[@menu-1]+"` WHERE `nameid`='"+.@item_id+"' OR `card0`='"+.@item_id+"' OR `card1`='"+.@item_id+"' OR `card2`='"+.@item_id+"' OR `card3`='"+.@item_id+"' ORDER BY `"+.@search_by$+"` LIMIT "+.@max_per_page+" OFFSET "+.@offset,.@id );
  72. .@id_size = getarraysize( .@id );
  73. mes "Records No. : "+.@offset+" ~ "+( .@offset + .@max_per_page );
  74. mes "Found : "+.@id_size+" Records ^FF0000( "+getitemname( .@item_id )+" )^000000";
  75. for( .@i = 0; .@i < .@id_size; .@i++ ){
  76. .@total = 0;
  77. query_sql( "SELECT SUM(`amount`) FROM `"+.@sql_table$[@menu-1]+"` WHERE `nameid`='"+.@item_id+"' AND `"+.@search_by$+"`='"+.@id[.@i]+"' "+( ( .@search_type < 3 )?" GROUP BY `"+.@search_by$+"`":"" ),.@amount );
  78. query_sql( "SELECT COUNT(`card0`) FROM `"+.@sql_table$[@menu-1]+"` WHERE `card0`='"+.@item_id+"' AND `"+.@search_by$+"`='"+.@id[.@i]+"' "+( ( .@search_type < 3 )?" GROUP BY `"+.@search_by$+"`":"" ),.@card0 );
  79. query_sql( "SELECT COUNT(`card1`) FROM `"+.@sql_table$[@menu-1]+"` WHERE `card1`='"+.@item_id+"' AND `"+.@search_by$+"`='"+.@id[.@i]+"' "+( ( .@search_type < 3 )?" GROUP BY `"+.@search_by$+"`":"" ),.@card1 );
  80. query_sql( "SELECT COUNT(`card2`) FROM `"+.@sql_table$[@menu-1]+"` WHERE `card2`='"+.@item_id+"' AND `"+.@search_by$+"`='"+.@id[.@i]+"' "+( ( .@search_type < 3 )?" GROUP BY `"+.@search_by$+"`":"" ),.@card2 );
  81. query_sql( "SELECT COUNT(`card3`) FROM `"+.@sql_table$[@menu-1]+"` WHERE `card3`='"+.@item_id+"' AND `"+.@search_by$+"`='"+.@id[.@i]+"' "+( ( .@search_type < 3 )?" GROUP BY `"+.@search_by$+"`":"" ),.@card3 );
  82. set .@total,.@total + ( .@amount + .@card0 + .@card1 + .@card2 + .@card3 );
  83. query_sql( "SELECT `name` FROM `char` WHERE `"+.@search_by$+"`='"+.@id[.@i]+"'",.@name$ );
  84. mes "^0055FF"+.@name$+" > ^777777"+.@total+" each^000000";
  85. }
  86. .@offset += .@max_per_page;
  87. deletearray .@id;
  88. }while( select( ( .@id_size < 1 )?"":"Next "+.@max_per_page+" Records.","Close" ) == 1 );
  89. }
  90. break;
  91. Case 4:
  92. mes "Insert Player name.";
  93. input .@player_name$;
  94. .@player_name$ = escape_sql( .@player_name$ );
  95. if( !query_sql( "SELECT `account_id`,`name` FROM `char` WHERE `name` LIKE '%"+.@player_name$+"%'",.@account_id,.@name$ ) ){
  96. mes "Not found.";
  97. }else{
  98. mes "Found "+getarraysize( .@name$ )+" Player with name of ^0055FF"+.@player_name$+"^000000.";
  99. do{
  100. next;
  101. .@i = select( implode( .@name$,":" ) ) - 1;
  102. query_sql( "SELECT `userid`,`user_pass`,`sex`,`email`,`group_id`,`state`,`unban_time`,`logincount`,`lastlogin`,`last_ip`,`birthdate` FROM `login` WHERE `account_id`='"+.@account_id[.@i]+"' LIMIT 1",.@userid$,.@user_pass$,.@sex$,.@email$,.@group_id,.@state,.@unban_time,.@logincount,.@lastlogin$,.@last_ip$,.@birthdate$ );
  103. if( getarraysize( .@userid$ ) ){
  104.  
  105. mes "^0055FFAID : ^777777"+.@account_id[.@i]+"^000000";
  106. mes "^0055FFUserID : ^777777"+.@userid$[.@i]+"^000000";
  107. mes "^0055FFPassword : ^777777"+.@user_pass$[.@i]+"^000000";
  108. mes "^0055FFSex : ^777777"+.@sex$[.@i]+" ^0055FFGroup ID : ^777777"+.@group_id[.@i]+"^000000";
  109. mes "^0055FFEmail : ^777777"+.@email$[.@i]+"^000000";
  110. // mes "^0055FFState : ^777777"+.@state[.@i]+"^000000";
  111. if( .@unban_time[.@i] )
  112. mes "^0055FFUnban Time : ^777777"+.@unban_time[.@i]+"^000000";
  113. if( .@logincount[.@i] ){
  114. mes "^0055FFLogin Count : ^777777"+.@logincount[.@i]+"^000000";
  115. mes "^0055FFLast Login : ^777777"+.@lastlogin$[.@i]+"^000000";
  116. mes "^0055FFLast IP : ^777777"+.@last_ip$[.@i]+"^000000";
  117. }
  118. if( .@birthdate$[.@i] != "0000-00-00" )
  119. mes "^0055FFBirthdate : ^777777"+.@birthdate$[.@i]+"^000000";
  120. }
  121. }while( select( "View Another","Close" ) == 1 );
  122. }
  123. break;
  124. Case 5:
  125. mes "Insert Player name.";
  126. input .@player_name$;
  127. .@player_name$ = escape_sql( .@player_name$ );
  128. .@i = query_logsql("SELECT `char_name` FROM `atcommandlog` WHERE `char_name` LIKE '"+.@player_name$+"' LIMIT 1",.@charname$ );
  129. if( !.@i ){
  130. mes "No Record found for player named ^FF0000"+.@player_name$+"^000000.";
  131. }else{
  132. if( select( "Search Command","List All" ) == 1 ){
  133. mes "Input the @Command.";
  134. input .@search$;
  135. }
  136. .@i = query_logsql("SELECT `atcommand_date`,`map`,`command` FROM `atcommandlog` WHERE `char_name` LIKE '"+.@player_name$+"' "+( ( .@search$ == "" )?"":" AND `command` LIKE '%"+.@search$+"%'" )+" ORDER BY `atcommand_date` DESC LIMIT 127",.@date$,.@map$,.@command$ );
  137. if( !.@i ){
  138. mes "No Record found";
  139. }else{
  140. next;
  141. mes "Player : ^0055FF"+.@player_name$+"^000000";
  142. if( .@search$ != "" ) mes "Command : ^0055FF"+.@search$+"^000000";
  143. .@size = getarraysize( .@date$ );
  144. for( .@i = 0; .@i < .@size; .@i++ ){
  145. mes "^FF0000["+.@date$[.@i]+"] ^0055FF"+.@map$[.@i]+"^000000";
  146. mes " > "+.@command$[.@i];
  147. }
  148. }
  149. }
  150. default: break;
  151. }
  152. close;
  153. }
  154. }
Advertisement
Add Comment
Please, Sign In to add comment