Jump to content

uDe

Members
  • Posts

    400
  • Joined

  • Last visited

  • Days Won

    1

Posts posted by uDe

  1.  

    This is your script?

     

    Thank you. But, I really need to use this script : http://rathena.org/board/topic/91969-itemizer-mod/#entry242083

     

    It has confirmation to before giving the item, player can view the list of item they received and also they can view the logs of item that has been given.

     

    And in your script, there's no announce at all..

     

     

    Which mean, there's no setting to allow or not allowing GM to announce or not. Every reward will be automatically announce to bc_all..

     

    If you look into the original script, there's an option to allow GM to choose to announce when they give the item or not.

     

    Line 61 ~ 65 :

    set @allow_announce,1;        // 1 == Yes | 0 == No (Let GM Choose If He/She Wants To Announce)
    setarray @announce_loc$,    // Possible Announce Locations
                "bc_all",
                "bc_map",
                "bc_area"; 
    

    So, I just want to remove this and make every item given by GM will be automatically announce to whole server (bc_all).

     

    For your script, it's so simple and easy to understand. But maybe you can insert the usefull function from Latheesan script into yours and it would be great.

  2. http://rathena.org/board/topic/78263-scripting-faqtipstricks/

    this topic show a way for you to calculate rate..

     

    I'm using eAthena.. Can I refer that tutorial also?

     

    Try use this:

    set .Random, rand(1,100);
    if( .Random <= 20 ) { getitem 31799, 1; announce "Congratulations ["+strcharinfo(0)+"] for getting ["+getitemname(31799)+"] from Gift Box!!",0; end; }
    if( .Random > 20 ) { getitem 31823, 1; announce "Congratulations ["+strcharinfo(0)+"] for getting ["+getitemname(31799)+"] from Gift Box!!",0; end; }
    

     

    Thank you. I will try this also..

    • Love 1
  3. Hello guys..

     

    Can you guys help me with this script..

    function	script	CustomBox	{
        setarray .BoxItems[0],
    	31799,
    	31823,
    	
    	set .Random, rand( getarraysize( .BoxItems ) );
    	getitem .BoxItems[ .Random ], 1;
    	announce "Congratulations ["+strcharinfo(0)+"] for getting ["+getitemname(.BoxItems[ .Random ])+"] from Gift Box!!",0;
    end;
    }
    
    

    I need to add rate for getting those item..

     

    Example :

     

    Item 31799 had 20% chance to get it; and Item 31823 had 70% chance to get it.

     

    EDIT : I'm using eAthena 3ceAM.

  4. yep, it should work properly. make sure to backup!

    I don't know what to use for item, item amount and map variable..

    For item, there's 3 different item will be given according the woe day.. Sunday item id is 11111, Wednesday item id is 11112 and Saturday item id is 11113. Amount of item is 1. For map, it should be new_zone02.

  5. /*
    CREATE TABLE reward_backup
    (
    char_id varchar(255),
    acc_id varchar(255),
    item_id varchar(255),
    amount varchar(255),
    time varchar(255),
    map varchar(255)
    );
    */
    
    map,x,y,4	script	reward_backup	111,{
    
    .....
    .....
    .....
    set .@Rew_CharID$,getcharid(0);
    set .@Rew_AccID$,getcharid(3);
    set .@Rew_ITEM??$;
    set .@Rew_ITEMAMOUNT$??;
    set .@Rew_Time$,gettimestr("%Y-%m/%d %H:%M:%S",21);
    set .@Rew_Map$,getmap??;
    query_sql "INSERT INTO `reward_backup` VALUES('"+@Rew_CharID$"','"+@Rew_AccID$+"','"+.@Rew_ITEM?$+"','"+@Rew_ITEMAMOUNT$?$+"','"+.@Rew_Time$+"','"+.@Rew_Map$+"')";
    getitem 11111,10;
    close;
    }
    

    Like this? I want to combine it with my personal WoE Reward script. I'm so sorry for not share the whole WOE Reward Script. I can't do that..

    But, I had give some example like above..

  6. Hello guys..

     

    May I request a sql command to save Players info into sql table (create new table) after they received items from NPC?

     

    Example of SQL table :

     

    - Char ID

    - Account ID

    - Item

    - Time

    - Date

    - Map

     

    I'm using eAthena 3ceAM

  7. Hello guys..

     

    Can someone help me on this?

     

    I need :

     

    - check weight function

    - only selected ID will get the reward

     

    Thank you for your help.. /ok

     

    I'm using eAthena 3ceAM

    prontera,151,159,5	script	WOE Reward	114,{
    mes " ^00FF00=======================^000000";
    mes " ";
    mes "	^7B68EEMaintenance Gift^000000	";
    mes " ";
    mes " ^00FF00=======================^000000";
    next;
    if( Weight > ( MaxWeight / 2 ) ){
    	mes "Please make sure you are not Over Weight.";
    	close;
    }
    if(#WOEPastReward01 == 1) goto L_1;
    if(getcharid(3) == 2000002 || getcharid(3) == 2014412 ) {
    
    mes "[WOE Manager]";
    mes " ";
    	mes "Greetings "+strcharinfo(0)+"!!!";
    	mes " ";
    	mes "Thank you for you patience for the Emergency Maintenance..";
    	mes "We would like to thank you by giving some gifts..";
    	mes "But, the NPC that will giving you the presents will only available at 05.00PM on January 22 until 05.00PM on January 24 which mean, only for ^FF000048 HOURS!^000000";
    	mes "So, DO NOT miss your chance to get some rare gifts form the NPC.";
    next;
    mes "[WOE Manager]";
    mes " ";
    mes "Oh ya! Do not forget to tell all your friends about this. They cannot miss this!! ;D";
    next;
    set #CASHPOINTS,#CASHPOINTS+0;
    dispbottom "You have currently " +#CASHPOINTS +" Cash Points!";
    getitem 0,0;
    npctalk "Thank you and enjoy the game "+strcharinfo(0)+"!";
    emotion e_thx;
    set #WOEPastReward01,1;
    close;
    
    L_1:
    mes "[WOE Manager]";
    mes "Sorry I can't give you more.";
    mes " ";
    mes "^FF0000Maintenance Gift has been given to this ID..^000000";
    mes " ";
    mes "Please check your inventory to see the  items..";
    emotion e_bzz;
    close;
    
    OnInit:
    
    	waitingroom "Maintenance Gift!!",0,0;
    	end;
    }
    
  8. I want, if select NO > no changes made.

     

     

    I don't see your point why putting a goto to open the menu where you are not creating another line where it needs to go back on menu selection btw.

    // ----	Base que_qaru05
    
    que_qaru05,132,120,4	script	Base Information#001	837,{
    
    if (getgmlevel() >= 99) {
    	mes "[^00ff00Base Information Board^000000]";
    	mes " ";
    	mes "Hello Admin, do you want to configure this information board now?";
    	goto TOP;
    	
    TOP:
    	menu "Yes",Config,"No. Thank you.",NOPE;
    	
    Config:
    	next;
    	mes "[^00ff00Base Information Board^000000]";
    	mes " ";
    	mes "Please insert the Guild Name.";
    	input $GBGuild$[0]; //Remember to change index when using on a different NPC or else it will overwrite.
    	next;
    	mes "[^00ff00Base Information Board^000000]";
    	mes " ";
    	mes "Please insert the Base Owner Name.";
    	input $GBOwner$[0];
    	next;
    	mes "[^00ff00Base Information Board^000000]";
    	mes " ";
    	mes "Please check the configuration below :";
    	mes " ";
    	mes "Guild Name : ^00FFFF"+ $GBGuild$ +"^000000 "; 
    	mes "Base Owner : ^4B088A"+ $GBOwner$ +"^000000 ";
    	next;
    	mes "[^00ff00Base Information Board^000000]";
    	mes " ";
    	mes "Everything perfect?";
    	next;
    //	if(select("Yes:No") - 1) close;
    	menu "Yes",Config2,"No",NOPE;
    	
    Config2:
    	mes "[^00ff00Base Information Board^000000]";
    	mes " ";
    	mes "This board will be update immediately."; 
    	close;
    	} else {
    	mes "[^00ff00Base Information Board^000000]";
    	mes " ";
    	mes "Hello..";
    	mes "This base officially made for ^00FFFF"+$GBGuild$[0]+"^000000 Guild, and the owner of this base is ^4B088A"+$GBOwner$[0]+"^000000.";
    	next;
    	mes "[^00ff00Base Information Board^000000]";
    	mes " ";
    	mes "Please don't disturb others base!";
    	mes " ";
    	mes "If there's any report that you're";
    	mes "disturbing others base, you will be jailed!";
    	close;
    	}
    	
    NOPE:
    	next;
    	mes "[^00ff00Base Information Board^000000]";
    	mes " ";
    	mes "I will always be right here Admin.";
    	mes "See you again.";
    	close;
    
    OnInit:
    	waitingroom "Base Information",0,0;
    	end;
    }
    
    // ----
    

    I'll try to change it. But it's seem weird.. If I'm doing like above, normal player can't read the else { at line 45 ?

     

     

    Or should I do it like this?

    // ----	Base que_qaru05
    
    que_qaru05,132,120,4	script	Base Information#001	837,{
    
    if (getgmlevel() >= 99) {
    	mes "[^00ff00Base Information Board^000000]";
    	mes " ";
    	mes "Hello Admin, do you want to configure this information board now?";
    	goto TOP;
    	} else {
    	mes "[^00ff00Base Information Board^000000]";
    	mes " ";
    	mes "Hello..";
    	mes "This base officially made for ^00FFFF"+$GBGuild$[0]+"^000000 Guild, and the owner of this base is ^4B088A"+$GBOwner$[0]+"^000000.";
    	next;
    	mes "[^00ff00Base Information Board^000000]";
    	mes " ";
    	mes "Please don't disturb others base!";
    	mes " ";
    	mes "If there's any report that you're";
    	mes "disturbing others base, you will be jailed!";
    	close;
    	}
    	
    TOP:
    	menu "Yes",Config,"No. Thank you.",NOPE;
    	
    Config:
    	next;
    	mes "[^00ff00Base Information Board^000000]";
    	mes " ";
    	mes "Please insert the Guild Name.";
    	input $GBGuild$[0]; //Remember to change index when using on a different NPC or else it will overwrite.
    	next;
    	mes "[^00ff00Base Information Board^000000]";
    	mes " ";
    	mes "Please insert the Base Owner Name.";
    	input $GBOwner$[0];
    	next;
    	mes "[^00ff00Base Information Board^000000]";
    	mes " ";
    	mes "Please check the configuration below :";
    	mes " ";
    	mes "Guild Name : ^00FFFF"+ $GBGuild$ +"^000000 "; 
    	mes "Base Owner : ^4B088A"+ $GBOwner$ +"^000000 ";
    	next;
    	mes "[^00ff00Base Information Board^000000]";
    	mes " ";
    	mes "Everything perfect?";
    	next;
    //	if(select("Yes:No") - 1) close;
    	menu "Yes",Config2,"No",NOPE;
    	
    Config2:
    	mes "[^00ff00Base Information Board^000000]";
    	mes " ";
    	mes "This board will be update immediately."; 
    	close;
    	
    NOPE:
    	next;
    	mes "[^00ff00Base Information Board^000000]";
    	mes " ";
    	mes "I will always be right here Admin.";
    	mes "See you again.";
    	close;
    
    OnInit:
    	waitingroom "Base Information",0,0;
    	end;
    }
    
    // ----
    
  9. I don't get what you meant here.. Chosing no will jump to NOPE: and would end the script, what's the problem?

    if(select("Yes:No") - 1) close;
    

    It didn't go to NOPE:

     

    It will just close;

     

    But, it still save the input that I've just insert..

  10. I need some correction for this script :

    que_qaru05,132,120,4	script	Base Information#001	837,{
    
    if (getgmlevel() >= 99) {
    	mes "[^00ff00Base Information Board^000000]";
    	mes " ";
    	mes "Hello Admin, do you want to configure this information board now?";
    	goto TOP;
    	
    TOP:
    	menu "Yes",Config,"No. Thank you.",NOPE;
    	
    Config:
    	next;
    	mes "[^00ff00Base Information Board^000000]";
    	mes " ";
    	mes "Please insert the Guild Name.";
    	input $GBGuild001$[0]; //Remember to change index when using on a different NPC or else it will overwrite.
    	next;
    	mes "[^00ff00Base Information Board^000000]";
    	mes " ";
    	mes "Please insert the Base Owner Name.";
    	input $GBOwner001$[0];
    	next;
    	mes "[^00ff00Base Information Board^000000]";
    	mes " ";
    	mes "Please check the configuration below :";
    	mes " ";
    	mes "Guild Name : ^00FFFF"+ $GBGuild$ +"^000000 "; 
    	mes "Base Owner : ^4B088A"+ $GBOwner$ +"^000000 ";
    	next;
    	mes "[^00ff00Base Information Board^000000]";
    	mes " ";
    	mes "Everything perfect?";
    	next;
    	if(select("Yes:No") - 1) close;
    	mes "[^00ff00Base Information Board^000000]";
    	mes " ";
    	mes "This board will be update immediately."; 
    	close;
    	} else {
    	mes "[^00ff00Base Information Board^000000]";
    	mes " ";
    	mes "Hello..";
    	mes "This base officially made for ^00FFFF"+$GBGuild$[0]+"^000000 Guild, and the owner of this base is ^4B088A"+$GBOwner$[0]+"^000000.";
    	next;
    	mes "[^00ff00Base Information Board^000000]";
    	mes " ";
    	mes "Please don't disturb others base!";
    	mes " ";
    	mes "If there's any report that you're";
    	mes "disturbing others base, you will be jailed!";
    	close;
    	}
    	
    NOPE:
    	next;
    	mes "[^00ff00Base Information Board^000000]";
    	mes " ";
    	mes "I will always be right here Admin.";
    	mes "See you again.";
    	close;
    
    OnInit:
    	waitingroom "Base Information",0,0;
    	end;
    }
    

    - At line 7, if I choose "No", I need the NPC cancel the input that I've just do. Currently, "Yes" or "No" is no different.

    - If you can make this script more simpler?

     

    Thank you very much.

  11.  

    Oh, so that was what you wanted... Well you can use a permanent variable, since it must be manually provided by the GMs..

     

    You can work on this.. Remember to add additional checking if the guild matches the leader, etc..

    geffen,195,72,3	script	Guild Base Info	563,{
    
    
    if(getgmlevel() > 1) {
    	mes "Input Guild";
    	input $GBGuild$[0]; //Remember to change index when using on a different NPC or else it will overwrite.
    	next;
    	mes "Input Owner";
    	input $GBOwner[0];
    	close;
    	}
    
    else {
    	mes "Hello.. This base officially made for "+$GBGuild$[0]+" and the Guild Leader is "+$GBOwner$[0];
    	close;
    	}
    
    
    }
    

     

     

    i think you missed $ on line 9 and 14. But I've fixed it and it's working.

     

    So, every scripts need different index if I want to make it for other base.. Right?

×
×
  • Create New...