Jump to content

Valiente

Members
  • Posts

    132
  • Joined

  • Last visited

Posts posted by Valiente

  1. I haven't tested it yet, but I'm pretty sure that it'll work just fine.

    zhakastia,85,57,6 script Freebies Giver 790,{
      if( !Freebies ){
      set Freebies,1;
      mes "Welcome...this is your gift...";
      getitem .@Item[ rand( getarraysize( .@Item ) ) ],1;
      }
      else{
      mes "You have claim the Reward already.";
      }
    close;
    
    OnInit:
    	 waitingroom "Get your freebies here!!!",0;
    	 setarray .@Item[0],2357,2524,2421,5171;
    }
    
    

    Oh, you also have to restart your map server to give chance for the waiting room command and array declaration to load.

    • Upvote 1
  2. getgroupid() is the new getgmlevel as the gm level system has been rewritten to fit for group id's.

    Just change getgmlevel to getgroupid() since the getgmlevel command is only compatible with eathena.

    • Upvote 1
  3. Look for elemental enchantment scripts, such as enchant poison, I'm pretty sure it does pretty much the same thing you want when you remove the enchanted weapon in your equipment.

    Try to look for it in the skills database. And see if you can integrate it with the bard/dancer songs.

    Based on Euphy's reply, check if that matches your configuration, change it to no before doing my solution. lol

  4. Euphy's does not seem to have a conditional statement for gender based classes. Well, you should use his if you know how to correct it. XD

    Mine is just an old school scripting version and easier to understand, but lacks the classes that you want.

    I can make you a full version of my script or his once I get home, unless someone here corrects it for you before I can get the chance. lol

    • Upvote 1
  5. This is a modified script, made by premiumRO. I modified it a bit since you're looking for one, here it is.

    prontera,161,187,4 script 3rd Job Changer 419,{
    //** Configuration **//
    .Class = 0; // Required Base Level.
    .npc$ = "[Dr. Ibarra]"; // NPC name.
    //** End of Configuration **//
    if(Class == .Class) // Check if Novice
    {
    mes .npc$;
           mes "I'm sorry, only Novice class allowed to use this service.";
           mes "You seem to have been unconsiouse for a while now, together";
           mes "with a lot of other people. Do you remember what happened?";
    next;
    mes "By looking at you, you seemed to have gone through a lot.";
    mes "Forgive me for asking such question, let me ask you some";
    mes "of your basic information, please try to remember them all.";
    next;
    mes "What's your job class, you seem to be a soldier of some sort.";
    switch(select("Rune Knight:Warlock:Ranger:Mechanic:Guillotine Cross:Arch Bishop:Royal Guard:Sorcerer:Wanderer/Maestro:Genetic:Shadow Chaser:Sura"))
    {
     case 1:
      callsub S_Change,"4060","Rune Knight";
     break;
     case 2:
      callsub S_Change,"4061","Warlock";
     break;
     case 3:
      callsub S_Change,"4062","Ranger";
     break;
     case 4:
      callsub S_Change,"4063","Mechanic";
     break;
     case 5:
      callsub S_Change,"4064","Guillotine Cross";
     break;
     case 6:
      callsub S_Change,"4065","Arch Bishop";
     break;
     case 7:
      callsub S_Change,"4073","Royal Guard";
     break;
     case 8:
      callsub S_Change,"4074","Sorcerer";
     break;
     case 9:
      if(Sex == 0)
       callsub S_Change,"4075","Minstrel";
      else
       callsub S_Change,"4076","Wanderer";
     break;
     case 10:
      callsub S_Change,"4078","Genetic";
     break;
     case 11:
      callsub S_Change,"4077","Sura";
     break;
    }
    else
    {
     mes .npc$;
     mes "I'm sorry, but you seem to be healthy.";
     close;
    }
    S_Change:
    next;
    mes .npc$;
    mes "Are you sure you wish to become "+ getarg(1) +"?";
    switch(select("Yes:No"))
    {
     case 1:
      resetlvl 1;
      jobchange getarg(0);
      skill "NV_Basic",9,0;
      BaseLevel = 90;
      JovLevel = 70;
      SkillPoint = 118;
      specialeffect2 413;
      mes .npc$;
      mes "Congratulations!";
      close;
      end;
      break;
     case 2:
      close;
     break;
    }
    }
    

    This is understandable enough, try adding taekwon, Soul Linker, Ninja, Gunslinger and baby jobs. I'm at work atm, won't be able to do it all. lol

    • Upvote 1
  6. Are you using the new svn? Or using an old one that was taken from a different source?

    Those flags should be enabled by default, if not - they are disabled in purpose. That's the only possible reason why they won't show up.

  7. http://www.eathena.ws/board/index.php?showtopic=236030&hl=lms+event

    Got it from the old eathena board. It's up to you to modify it further. I only modifited it for Assassin Cross' only.

    - script LMS#disable -1,{
    OnInit:
    disablenpc "Mr. Banker";
    disablenpc "All Job Manager";
    disablenpc "Baby Manager";
    disablenpc "Novice Manager";
    end;
    }
    - script LMS -1,{
    OnClock000:
    OnClock0300:
    OnClock0600:
    OnClock0900:
    OnClock1200:
    OnClock1500:
    OnClock1800:
    OnClock2100:// Edit this to what ever you want. note : OnClock0000 is 12 midnight and OnClock1200 is 12 Noon
    goto startlmsevent;
    startlmsevent:
    announce "Mr. Manager: The Last Man Standing event will be starting shortly.",0;
    sleep2 10000;
    announce "Mr. Manager: Those who want to play, please proceed to Prontera and Register.",0;
    sleep2 10000;
    announce "Mr. Manager: After 1 Minute the Registration will close.",0;
    sleep2 10000;
    announce "Mr. Manager: Please go to Prontera and Register now if you want to join.",0;
    enablenpc "All Job Manager";
    initnpctimer;
    end;
    OnTimer30000:
    announce "Mr. Manager: Last 30 seconds.",0;
    sleep2 5000;
    announce "Mr. Manager: If you want to join please Register in Prontera.",0;
    end;
    OnTimer50000:
    announce "Mr. Manager: Last 10 seconds.",0;
    end;
    OnTimer55000:
    announce "Mr. Manager: 5.",0;
    end;
    OnTimer56000:
    announce "Mr. Manager: 4.",0;
    end;
    OnTimer57000:
    announce "Mr. Manager: 3.",0;
    end;
    OnTimer58000:
    announce "Mr. Manager: 2.",0;
    end;
    OnTimer59000:
    announce "Mr. Manager: 1.",0;
    end;
    OnTimer60000:
    announce "Mr. Manager: Time's up.",0;
    end;
    OnTimer61000:
    disablenpc "All Job Manager";
    donpcevent "Mr. Banker::OnEnable";
    stopnpctimer;
    end;
    }
    //---------All Job Registration---------------
    prontera,147,172,5 script All Job Manager 106,{
    mes "[Mr. Manager]";
    mes "Hello What can I do for you?";
    next;
    menu "Register",-,"What is LMS?",what,"Leave",leave;
    next;
    if(Class != 4013){
    mes "Only Assassin Cross' can join this event";
    close;
    }
    mes "[Mr. Manager]";
    mes "Thankyou for registering Mr. " + strcharinfo(0) + ", Have fun!";
    warp "rwc03",0,0;
    end;
    what:
    mes "[Mr. Manager]";
    mes "LMS is also known as Last Man Standing Event";
    next;
    mes "[Mr. Manager]";
    mes "LMS is also like a PvP.";
    mes "The only difference is at LMS you will get 50 HPRO Point if you are the Last Man Standing at the arena.";
    next;
    mes "[Mr. Manager]";
    mes "That's all";
    close;
    leave:
    mes "[Mr. Manager]";
    mes "I hope you will register next time";
    close;
    
    }
    //--------------------------
    //--------------------------
    rwc03,49,49,6 script Mr. Banker 56,{
    mes "[banker]";
    mes "Congrats. You've won.";
    next;
    announce "Mr. Manager: We have a winner! well done "+strcharinfo(0)+".",0;
    set #CASHPOINTS, #CASHPOINTS + 50; // Change This item id to what ever you want . item id,amount
    dispbottom "+50 HPRO Point";
    mes "You will return now";
    warp "prontera",155,182;
    disablenpc "Mr. Banker";
    close;
    end;
    OnEnable:
    pvpoff "rwc03";
    mapannounce "rwc03","Mr. Manager:The Last Man Standing Event will start shortly",0;
    sleep2 10000;
    mapannounce "rwc03","Mr. Manager:But before we start this is just a few reminders..",0;
    sleep2 10000;
    mapannounce "rwc03","Mr. Manager:Using Cloaking , Hiding is strictly not allowed..",0;
    sleep2 10000;
    mapannounce "rwc03","Mr. Manager: Only the Last Man Standing will win this event!!",0;
    sleep2 10000;
    mapannounce "rwc03","Mr. Manager: What are we waiting for?..Let's Get Ready to Rumble!!...",0;
    sleep2 10000;
    goto L_Start;
    end;
    L_Start:
    if(getmapusers("rwc03") == 1) goto L_Champ;
    if(getmapusers("rwc03") == 0) goto L_None;
    if(getmapusers("rwc03") > 1) {
    mapannounce "rwc03","Mr. Manager: Get ready at the count of 5 we will start!....",0;
    sleep2 10000;
    mapannounce "rwc03","Mr. Manager: 5",0;
    sleep2 5000;
    mapannounce "rwc03","Mr. Manager: 4",0;
    sleep2 4000;
    mapannounce "rwc03","Mr. Manager: 3",0;
    sleep2 3000;
    mapannounce "rwc03","Mr. Manager: 2",0;
    sleep2 2000;
    mapannounce "rwc03","Mr. Manager: 1",0;
    sleep2 1000;
    pvpon "rwc03";
    goto timer;
    end;
    }
    timer:
    initnpctimer;
    end;
    OnTimer1000:
    end;
    OnTimer1100:
    if(getmapusers("rwc03") == 1) goto L_Champ;
    if(getmapusers("rwc03") > 2) goto timer;
    if(getmapusers("rwc03") == 2) goto champ;
    stopnpctimer;
    end;
    champ:
    announce "Mr. Manager: Last 2 Brave warriors are still alive!",0;
    sleep2 10000;
    if(getmapusers("rwc03") == 1) goto L_Champ;
    if(getmapusers("rwc03") > 1) goto timer;
    end;
    L_Champ:
    mapannounce "quiz_02","Mr. Banker: Please talk to me to get your prize..",0;
    pvpoff "rwc03";
    enablenpc "Mr. Banker";
    end;
    L_None:
    disablenpc "Banker";
    pvpoff "rwc03";
    end;
    }
    //----- Die = warp prt -----
    - script Killa_warp -1,{
    OnPCDieEvent:
    getmapxy(.@map$,.@x,.@y,0);
    if(.@map$=="rwc03")
    {
     set #kill_point, 0;
     announce ""+strcharinfo(0)+" died, and out of the game!.",bc_all;
     warp "prontera",0,0;
     end;
    }
    OnPCKillEvent:
    getmapxy(.@map$,.@x,.@y,0);
    if(.@map$=="rwc03")
    {
    set #kill_point,#kill_point+1;
    if ( #kill_point % 4 == 0) {
    announce ""+strcharinfo(0)+" have made 4 Consecutive Kills!!He will be granted an item",bc_all;
    getitem 607, 50;
    end;
    }
    }
    }
    
    // == Mapflags
    rwc03 mapflag nowarp
    rwc03 mapflag nowarpto
    rwc03 mapflag noteleport
    rwc03 mapflag nosave
    rwc03 mapflag nomemo
    rwc03 mapflag nobranch
    rwc03 mapflag pvp_noparty
    rwc03 mapflag restricted 1
    

  8. Well if you can give the item ID of those Coupons, then the chances of someone helping you will become higher.

    And why would you want a ygg to coupons exchanger? or do you mean the other way around?

    if so, here's the script:

    prontera,154,189,4	script	Ygg Exchanger   767,{
    mes "Hi, how many Yggs would you like to exchange for coupons?";
    set .amt,0;
    input .amt;
    if (checkweight(607,.amt) == 0 || countitem(100) == .amt){
      /*Change 100 to your Coupon Item ID*/
      mes "Sorry, but you cannot carry all of these or you don't have any coupons with you.";
      close;
    }
    delitem 100,.amt;
    getitem 607,.amt;
    close;
    }

  9. I'm pretty sure you'd be able to understand her script if you'd take more time reading the script_commands txt located in the doc folder of your athena.

    Anyway, if you already have custom maps named like that, ranging from Room_01 - Room 10, then you can just simply rename it like that and change .@i <=8 to .@<=10

    eg. ( "Room_0"+ .@i ) will equal to Room_01 if the value of .@i is 1. Since the (+) sign concatenates both the scope variable (.@i) and the string ("Room_0").

    OR, you can have that string replaced with an array (with index of the map names you want to go), eg. setarray Rooms[.@i],"gld_dun02",gld_dun04;

    while (.@i <= 10){

    if(getmapusers(Rooms[.@i]) == 0 )

    .password$[.@i] = "";

    }

    if .@i happens to be equal to 1, then the password of gld_dun04 will be erased.

  10. I have worked in a lot of servers, who actually use the money for their own personal gain.

    Well, we're all not the same. A lot of RO server owners usually abuse the "Donation" term.

    It really does make me sick, those servers are down now due to greediness and corruption.

    And not trying to be rude, but most of them are Filipino servers.

  11. @Will

    Made it now (just adapted v1.2b): http://rafaworks.zzl...ib/v1.2b.eA.txt

    Use VipAdmin v1.1 instead of v1.2: http://rafaworks.zzl...in/en.v1.1a.txt

    Didn't test, if you find any bug please report.

    @Valiente

    What? O.o

    I mean it's like you are trying to encourage server owners to earn money from players by giving them VIP/Special Player status in exchange, which really does violate the copyright law (RO franchisers are the only ones, who are allowed to gain income from players). Having to earn money through this script really does violate it.

    Anyway, it's not that I'm trying to scare you or anything, most of server owners do this anyway.

×
×
  • Create New...