Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- /*
- // Load this SQL script.
- ALTER TABLE `guild` ADD COLUMN `gpack` DATETIME NOT NULL DEFAULT '0000-00-00 00:00:00' AFTER `emblem_data`;
- CREATE TABLE IF NOT EXISTS `gpacks_record` (
- `id` int(11) unsigned NOT NULL auto_increment,
- `guild_id` int(11) unsigned NOT NULL default '0',
- `account_id` int(11) unsigned NOT NULL default '0',
- `char_id` int(11) unsigned NOT NULL default '0',
- `ip` varchar(24) NOT NULL default '',
- `time` datetime NOT NULL default '0000-00-00 00:00:00',
- PRIMARY KEY (`id`)
- ) ENGINE=MyISAM AUTO_INCREMENT=1;
- */
- prontera,155,181,5 script Sample 757,{
- .@guild_id = getcharid(2);
- if( !.@guild_id ){
- mes "You didnt have a guild.";
- }else{
- query_sql( "SELECT `char_id`,`connect_member`,`gpack` FROM `guild` WHERE `guild_id` = "+.@guild_id,.@master,.@online,.@gpack$ );
- if( getcharid(0) != .@master ){
- mes "You're not guild master of this guild.";
- }else if( .@online < .min_online_member ){
- mes "You need to have minimum "+.min_online_member+" member to online before you can take this.";
- }else if( .@gpack$ != "0000-00-00 00:00:00" ){
- mes "Your Guild already claimed this since ^FF0000"+.@gpack$+"^000000";
- }else{
- mes "Do you want to claim GPack...?";
- mes "You got "+.@online+" member online.";
- mes "are you sure to claim it now ?? you can only claim once.";
- mes "^FF0000Same IP users wont be able to get rewards.^000000";
- next;
- if( select( "Yes, claim it","Close" ) == 1 ){
- if( !query_sql( "SELECT `time` FROM `gpacks_record` WHERE `account_id` = "+getcharid(3)+" OR `char_id` = "+getcharid(0)+" OR `ip` = '"+escape_sql( getcharip() )+"' ",.@time$ ) ){
- while( .@reward < .master_reward_size ){
- getitem .master_reward[.@reward],.master_reward_qty[.@reward];
- .@reward++;
- }
- query_sql( "INSERT INTO `gpacks_record` ( `guild_id`,`account_id`,`char_id`,`ip`,`time` ) VALUES ( "+.@guild_id+","+getcharid(3)+","+getcharid(0)+",'"+escape_sql( getcharip() )+"',NOW() )" );
- }else{
- message strcharinfo(0),"You already take the guild rewards or someone who have similar IP already took it since "+.@time$+".";
- }
- query_sql( "SELECT `account_id`,`char_id`,`name` FROM `guild_member` WHERE `guild_id` = "+.@guild_id,.@acc_id,.@char_id,.@name$ );
- .@size = getarraysize( .@acc_id );
- while( .@member < .@size ){
- if( .@char_id[.@member] != .@master ){
- query_sql( "SELECT `last_ip` FROM `login` WHERE `account_id` = "+.@acc_id[.@member],.@ip$ );
- if( query_sql( "SELECT `time` FROM `gpacks_record` WHERE `account_id` = "+.@acc_id[.@member]+" OR `char_id` = "+.@char_id[.@member]+" OR `ip` = '"+escape_sql( .@ip$ )+"' ",.@time$ ) ){
- message .@name$[.@member],"You already take the guild rewards or someone who have similar IP already took it since "+.@time$+".";
- }else{
- .@reward = 0;
- while( .@reward < .member_reward_size ){
- getitem .member_reward[.@reward],.member_reward_qty[.@reward],.@account_id[.@member];
- .@reward++;
- }
- query_sql( "INSERT INTO `gpacks_record` ( `guild_id`,`account_id`,`char_id`,`ip`,`time` ) VALUES ( "+.@guild_id+","+.@acc_id[.@member]+","+.@char_id[.@member]+",'"+escape_sql( .@ip$ )+"',NOW() )" );
- }
- }
- .@member++;
- }
- query_sql( "UPDATE `guild` SET `gpack` = NOW() WHERE `guild_id` = "+.@guild_id );
- mes "Rewards has been assigned to all users...users who didnt received the rewards are most probably having the similar IP with other users.";
- dispbottom "Member who didnt get the rewards are most probably they have similar IP with other users within the Guild.";
- }
- }
- }
- close;
- OnInit:
- // minimum member to online and get the rewards.
- .min_online_member = 2;
- // reward for guild master
- setarray .master_reward,512,607,608;
- setarray .master_reward_qty,10,20,30;
- // reward for member master
- setarray .member_reward,512,607,608;
- setarray .member_reward_qty,1,2,3;
- .master_reward_size = getarraysize( .master_reward );
- .member_reward_size = getarraysize( .member_reward );
- end;
- }
Advertisement
Add Comment
Please, Sign In to add comment