Jump to content

fTakano

Members
  • Posts

    31
  • Joined

  • Last visited

  • Days Won

    4

Posts posted by fTakano

  1. Check `doc/script_commands.txt`.

    *vip_status(<type>,{"<character name>"})
    
    Returns various information about a player's VIP status.
    
    Valid types:
     VIP_STATUS_ACTIVE - VIP status: true if the player is a VIP or false if not
     VIP_STATUS_EXPIRE - VIP expire timestamp if the player is VIP or 0 if not
     VIP_STATUS_REMAINING - VIP time remaining in seconds
    
    NOTE: This command is only available if the VIP System is enabled.

     

  2. prontera,129,165,4	script	Test NPC#tst	100,{
        if( $lvl_rwrd_cnt < 50 ) {
          if( !#lvl_rwrd ) {
              if( (Class >= Job_Lord_Knight && Class <= Job_Paladin2) && BaseLevel == .max_blvl && JobLevel == .max_jlvl_t ) {
                  for( .@i=0; .@i<getarraysize(.rwrd); .@i+=2 )
                      getitem .rwrd[.@i], .rwrd[.@i+1];
                  set #lvl_rwrd, 1;
                  set $lvl_rwrd_cnt, $lvl_rwrd_cnt;
                  end;
              }
    
              if( (Class == Job_Ninja || Class == Job_Gunslinger || 
                  (Class >= Job_Star_Gladiator && Class <= Job_Soul_Linker)) &&
                  BaseLevel == .max_blvl && JobLevel == .max_jlvl_x ) {
                  for( .@i=0; .@i<getarraysize(.rwrd); .@i+=2 )
                      getitem .rwrd[.@i], .rwrd[.@i+1];
                  set #lvl_rwrd, 1;
                  set $lvl_rwrd_cnt, $lvl_rwrd_cnt;
                  end;
              }
          } else {
              mes "You have already received your reward.";
              end;
          }
        } else {
        	mes "Sorry, but the first 50 players who reached their max levels already received their reward.";
            end;
        }
    	
    	OnInit:
    		/* Just a note : variable #lvl_rwrd will be used in checking if the player already claimed their reward.
    		 You can change it to character-based by removing the prefix # of the variable. */
    		setarray .rwrd[0], 501, 10, 502, 10;		// Syntax : setarray .rwrd[0],<itm_id>, <amt>{, <itm_id>, <amt>, ...}
    		set .max_blvl, 99;							// Max Level of server
    		set .max_jlvl_t, 70;						// Max Job Level for Trans Class
    		set .max_jlvl_x, 50;						// Max Job Level for Extended Class
    		end;
    }

     

    • Upvote 1
  3. prontera,129,165,4	script	Test NPC#tst	100,{
    	if( !#lvl_rwrd ) {
    		if( (Class >= Job_Lord_Knight && Class <= Job_Paladin2) && BaseLevel == .max_blvl && JobLevel == .max_jlvl_t ) {
    			for( .@i=0; .@i<getarraysize(.rwrd); .@i+=2 )
    				getitem .rwrd[.@i], .rwrd[.@i+1];
    			set #lvl_rwrd, 1;
    			end;
    		}
    		
    		if( (Class == Job_Ninja || Class == Job_Gunslinger || 
    			(Class >= Job_Star_Gladiator && Class <= Job_Soul_Linker)) &&
    			BaseLevel == .max_blvl && JobLevel == .max_jlvl_x ) {
    			for( .@i=0; .@i<getarraysize(.rwrd); .@i+=2 )
    				getitem .rwrd[.@i], .rwrd[.@i+1];
    			set #lvl_rwrd, 1;
    			end;
    		}
    	} else {
    		mes "You have already received your reward.";
    		end;
    	}
    	
    	OnInit:
    		/* Just a note : variable #lvl_rwrd will be used in checking if the player already claimed their reward.
    		 You can change it to character-based by removing the prefix # of the variable. */
    		setarray .rwrd[0], 501, 10, 502, 10;		// Syntax : setarray .rwrd[0],<itm_id>, <amt>{, <itm_id>, <amt>, ...}
    		set .max_blvl, 99;							// Max Level of server
    		set .max_jlvl_t, 70;						// Max Job Level for Trans Class
    		set .max_jlvl_x, 50;						// Max Job Level for Extended Class
    		end;
    }

     

    • Upvote 1
    • MVP 1
  4. OOO   OOO   OOOOOOOOO   OOOOOOOOO   OOO   OOO 

    OOO   OOO         OOO         OOO   OOO   OOO   

    OOOOOOOOO   OOOOOOOOO   OOOOOOOOO   OOOOOOOOO 

          OOO         OOO         OOO         OOO 

          OOO   OOOOOOOOO         OOO         OOO 

  5. prontera,155,180,4	script	Gold Room#tst	100,{
    	mes "What do you want?";
    	next;
    	switch(select("Enter Gold Room.:Exchange Points:Cancel")) {
    		case 1:
    			@str$ = "";
    			mes "Make sure to type the strings correctly.";
    			mes "Fee: ^FF0000"+F_InsertComma(.zeny)+" Z^000000";
    			for( .@i=0; .@i<.strLen; .@i++ )
    				@str$ += charat(.charSet$, rand(0, getstrlen(.charSet$)));
    			mes "Passcode : ^FF0000"+@str$+"^000000";
    			next;
    			input .@txt$;
    			if( .@txt$ != @str$ ) {
    				mes "You will be kicked.";
    				close2;
    				atcommand "@kick "+strcharinfo(0);
    				end;
    			} else {
    				if( Zeny < .zeny ) {
    					mes "Sorry, but you can't enter the room.";
    					close;
    				} else {
    					@str$ = "";
    					Zeny -= .zeny;
    					warp "ordeal_1-1",0,0;
    					end;
    				}
    			}
    			break;
    			
    		case 2:
    			if( !#goldPoint ) {
    				mes "Don't have enough Gold Points to exchange.";
    				close;
    			}
    			mes "You currently have "+F_InsertPlural(#goldPoint, "Gold Point")+".";
    			mes "Do you want to exchange them all or decide on how many you will exchange?";
    			next;
    			switch(select("Exchange all of my Gold Points:Decide on how many will I exchange:Cancel")) {
    				case 1:
    					if(!checkweight(969,#goldPoint)) {
    						mes "Sorry, you can't carry these gold bars.";
    						close;
    					} else {
    						getitem 969,#goldPoint;
    						#goldPoint = 0;
    						mes "Here's your gold bars.";
    						mes "You currently have "+F_InsertPlural(#goldPoint, "Gold Point")+".";
    						close;
    					}
    					break;
    					
    				case 2:
    					mes "Input how many gold points will you get.";
    					next;
    					input .@gpoint,0,30000;
    					if( .@gpoint > #goldPoint ) {
    						mes "Sorry, you don't have enough gold points to exchange.";
    						close;
    					} else {
    						if(!checkweight(969,.@gpoint)) {
    							mes "Sorry, you can't carry these gold bars.";
    							close;
    						} else {
    							getitem 969, .@gpoint;
    							#goldPoint -= .@gpoint;
    							mes "Here's your gold bars.";
    							mes "You currently have "+F_InsertPlural(#goldPoint, "Gold Point")+".";
    							close;
    						}
    					}
    					break;
    					
    				default:
    					goto L_Quit;
    					break;
    			}
    			close;
    			break;
    			
    		default:
    			goto L_Quit;
    			break;
    	}
    	L_Quit:
    		close;
    		end;
    	
    	OnInit:
    		.charSet$ = "0123456789abcdefghijkmnopqrstuvwxyzABCDEFGHJKLMNOPQRSTUVWXYZ";
    		.strLen = 10;		// Sets how many characters for the generated confirmation code.
    		.zeny = 200000;		// Entrance fee for the room
    		end;
    }
    
    ordeal_1-1,150,150,4	script	Exit	100,{
    	mes "Want to go out?";
    	if( select("Yes:No") == 2 ) close;
    	else {
    		warp "SavePoint",0,0;
    		end;
    	}
    }
    
    
    -	script	gold_room	-1,{
    	OnInit:
    		.mob_id = 1002;		// Monster ID for the Gold Room mobs
    		monster "ordeal_1-1",0,0,"Golden Peco",.mob_id,100,strnpcinfo(0)+"::OnKilled";
    		end;
    		
    	OnKilled:
    		.ppk = rand(1,5);		// Points per kill
    		#goldPoint += .ppk;
    		dispbottom "-- Gold Point Information --";
    		dispbottom "You have acquired "+F_InsertPlural(.ppk,"Gold Point")+".";
    		dispbottom "You have currently have "+F_InsertPlural(#goldPoint,"Gold Point")+".";
    		monster "ordeal_1-1",0,0,"Golden Peco",.mob_id,1,strnpcinfo(0)+"::OnKilled";
    		end;
    		
    	OnPCDieEvent:
    		if( strcharinfo(3) == "ordeal_1-1" ) {
    			#goldPoint = 0;
    			dispbottom "Sorry, but all of the Gold Points you have earned has vanished.";
    		}
    		end;
    }
    
    ordeal_1-1	mapflag	pvp_noparty
    ordeal_1-1	mapflag	pvp_noguild
    ordeal_1-1	mapflag	nowarp
    ordeal_1-1	mapflag	noreturn
    ordeal_1-1	mapflag	noteleport

     

    • Upvote 2
  6. I'm using BrowEdit rev620

    When I create the map and applied to my test server, there's some glitch on the gat file.

    What should I do in order to align the gat on the map I created?

    Top View of the Map I created

    Spoiler

    QvZFulF.png

     
    Not signed in

    GAT Preview from WeeMapCache

    Spoiler

    E1ZHOf7.png

     
    Not signed in

    Thank you in advance,

×
×
  • Create New...