Jump to content

caspa

Members
  • Posts

    499
  • Joined

  • Last visited

Everything posted by caspa

  1. Here's the script sir, but i'm pretty sure this is not a script thing and more of a source thing because there's no error on whatsoever on the script. the debug always happen whenever the downrefitem func executes.
  2. sl_mall01,103,175,3 script Thor [Blacksmith] 826,{ //------------------------------ getmapxy( .@npc_map$,.@npc_x,.@npc_y,1 ); getmapxy( .@player_map$,.@player_x,.@player_y,0 ); //------------------------------ if( distance( .@npc_x,.@npc_y,.@player_x,.@player_y ) > 6 ){ message strcharinfo(0),"Thor : I can't refine your item if you're too far away, Please come closer!"; close; }else{ disable_items; mes "[ Thor ]"; mes "Hello ^0000ff"+strcharinfo(0)+"^000000,"; mes "I am Thor, a blacksmith who"; mes "has a special ability."; mes "I can refine items that even if"; mes "it fails, you don't lose the"; mes "equipment at all."; next; mes "[ Thor ]"; mes "However, the refinement level decreases by ^0000ff1^000000, and i can only"; mes "refine items that are ^CC0000+7 to +9^000000."; next; mes "[ Thor ]"; mes "So, what'd ya think?"; mes "Do you have something you'd"; mes "like me to refine?"; next; setarray .@position$[1],"Head","Body","Left Hand","Right Hand","Robe","Shoes","Accessory 1","Accessory 2","Head 2","Head 3"; set .@menu$,""; for(set .@i,1; .@i<=10; set .@i,.@i+1) set .@menu$,.@menu$+"^0000ff"+((getequipisequiped(.@i))?getequipname(.@i):"^000000"+.@position$[.@i]+"-[^ff0000Not Equipped^000000]")+":"; set .@part, select(.@menu$); if (!getequipisequiped(.@part)) { mes "[ Thor ]"; switch(.@part) { case 1: mes "I'm a blacksmith, not a hairstylist."; break; case 2: mes "With my hammer, I will make you a star of the sky."; break; case 3: case 4: mes "Making artificial hands is not my specialty."; break; case 5: mes "Bring out the item so I can refine it!"; break; case 6: mes "Where is this foot odor coming from?"; break; case 7: case 8: mes "Where is the accessory?"; break; case 9: mes "What do you want me to refine?"; break; case 10: mes "Huh? What do you want me to do?"; break; } close; } if (!getequipisenableref(.@part)) { mes "[ Thor ]"; mes "This item can't be refined."; close; } if (getequiprefinerycnt(.@part) < 7 || getequiprefinerycnt(.@part) > 9) { mes "[ Thor ]"; mes "I only handle items with refine level from +7 to +9."; close; } switch(getequipweaponlv(.@part)) { default: case 0: set .@price,20000; set .@material,6241; //HD_Elunium break; case 1: case 2: case 3: case 4: set .@price,20000; set .@material,6240; //HD_Oridecon break; } mes "[ Thor ]"; mes "In order to refine the item"; mes "you selected, I'm gonna need"; mes "^0000ff1x "+getitemname(.@material)+"^000000"; mes "and ^ff000020,000 zeny^000000 as a fee."; mes "Do you have them now?"; next; if(select("Yes:No") == 2) { mes "[ Thor ]"; mes "Okay, i will wait until you're ready."; close; } if (getequippercentrefinery(.@part) < 100) { mes "[ Thor ]"; mes "I can feel that this item will likely fail when refined!"; mes "Oh well! even if it fails."; mes "It will only downgrades"; mes "by 1 refine level..."; mes "Do you want to continue refining?"; next; if(select("Yes:No") == 2) { mes "[ Thor ]"; mes "Haha!! I don't blame you."; mes "Only those who overcome fear of failure will obtain a masterpiece."; close; } } if (countitem(.@material) == 0 || Zeny < .@price) { mes "[ Thor ]"; mes "Hmmm, didn't you just say you have the purified stones right now?"; close; } delitem .@material,1; set Zeny, Zeny-.@price; mes "[ Thor ]"; mes "^0000ffClanG, ClAnG, CLaNG!!!"; if (getequippercentrefinery(.@part) > rand(100) || getequippercentrefinery(.@part) > rand(100)) { successrefitem .@part; next; emotion e_no1; mes "[ Thor ]"; mes "Ahhhhh!! the sound of success refreshes my mind"; mes "everytime i hear it."; mes "Here you go!!"; mes "I have refined it flawlessly..."; close; } downrefitem .@part,1; next; emotion e_omg; mes "[ Thor ]"; mes "Oops!! looks like i failed."; next; mes "[ Thor ]"; mes "However, do not be discourage!"; mes "The item is still there."; mes " "; mes "Just try your luck next time..."; close; } }
  3. hi guys... sorry for being persistent but i really need the source w/o any form of error.. i'm willing to pay even atleast 10$+ just for somebody to put some time into it.. /*========================================== * Downgrades an Equipment Part by -1 . [Masao] *------------------------------------------*/ BUILDIN_FUNC(downrefitem) { short i = -1, down = 1; int pos; TBL_PC *sd; sd = script_rid2sd(st); if( sd == NULL ) return 0; pos = script_getnum(st,2); if (script_hasdata(st, 3)) down = script_getnum(st, 3); if (pos > 0 && pos <= ARRAYLENGTH(equip)) i = pc_checkequip(sd,equip[pos-1]); if (i >= 0) { unsigned int ep = sd->status.inventory[i].equip; //Logs items, got from (N)PC scripts [Lupus] log_pick_pc(sd, "N", sd->status.inventory[i].nameid, -1, &sd->status.inventory[i]); pc_unequipitem(sd,i,2); // status calc will happen in pc_equipitem() below sd->status.inventory[i].refine -= down; sd->status.inventory[i].refine = cap_value( sd->status.inventory[i].refine, 0, MAX_REFINE); clif_refine(sd->fd,2,i,sd->status.inventory[i].refine); clif_delitem(sd,i,1,3); //Logs items, got from (N)PC scripts [Lupus] log_pick_pc(sd, "N", sd->status.inventory[i].nameid, -1, &sd->status.inventory[i]); clif_additem(sd,i,1,0); pc_equipitem(sd,i,ep); clif_misceffect(&sd->bl,2); script_pushint(st, sd->status.inventory[i].refine); return 1; } ShowError("buildin_downrefitem: No item equipped at pos %d (CID=%d/AID=%d).\n", pos, sd->status.char_id, sd->status.account_id); script_pushint(st, -1); return 0; } here's the source code from 15peaces.... its for 3ceAm by the way and i know this is rathena but i don't know any forum i can go now for 3ceAm.... everytime the downrefitem excutes from the script. this debug something always appear (refer on the picture)
  4. mes "[ Donation Girl ]"; mes "Select equipment."; mes "^00ff00______________________^000000"; setarray .@position$[0], "Head","Body","Left hand","Right hand","Robe","Shoes"; for( set .@i,1; .@i <= 10; set .@i,.@i + 1 ) set .@Menu$,.@Menu$ + (( getarg(1) & pow( 2,(.@i-1 ) ) && getequipisequiped( .@i) )? .@position$[.@i-1]+" - ["+getequipname( .@i )+"]":"" )+":"; select( .@Menu$ ); mes "Upgrade to +"+ (getequiprefinerycnt(@menu)+1) +" "+getequipname( @menu )+"["+getitemslots(getequipid( @menu ))+"] ??"; mes "^00ff00______________________^000000"; switch ( select ( "Yes","No" ) == 2 ) { if(getequiprefinerycnt(@menu) >= 10 ) mes "^ff0000ERROR^000000 : ^777777"+getequipname( @menu )+"["+getitemslots(getequipid( @menu ))+"] is already +10."; else if ( getarg(3) == 1 && !getequipisenableref( @menu ) ) mes "^ff0000ERROR^000000 : ^777777"+getequipname( @menu )+"["+getitemslots(getequipid( @menu ))+"] is not refinable."; else { if( getarg(4) ) while( getequiprefinerycnt( @menu ) < getarg(2) ) successrefitem ( @menu ); else successrefitem ( @menu ); delitem getarg(0),1; mes "^0000ffClanG, ClAnG, CLaNG!!!"; dispbottom "[Donation Girl] : You have "+countitem(21013)+" "+getitemname(21013)+" left."; } close; } does anybody know why everytime i try to refine the shoes or the garment the headgear is being refined? i just want the code to make a confimation yes or no first if you decide to proceed with the refining T_T
  5. hi guys, can anybody tell me what causes this behavior from the source modification downrefitem? here's the code i've added to my src. /*========================================== * Downgrades an Equipment Part by -1 . [Masao] *------------------------------------------*/BUILDIN_FUNC(downrefitem) { short i = -1, down = 1; int pos; TBL_PC *sd; sd = script_rid2sd(st); if( sd == NULL ) return 0; pos = script_getnum(st,2); if (script_hasdata(st, 3)) down = script_getnum(st, 3); if (pos > 0 && pos <= ARRAYLENGTH(equip)) i = pc_checkequip(sd,equip[pos-1]); if (i >= 0) { unsigned int ep = sd->status.inventory[i].equip; //Logs items, got from (N)PC scripts [Lupus] log_pick_pc(sd, "N", sd->status.inventory[i].nameid, -1, &sd->status.inventory[i]); pc_unequipitem(sd,i,2); // status calc will happen in pc_equipitem() below sd->status.inventory[i].refine -= down; sd->status.inventory[i].refine = cap_value( sd->status.inventory[i].refine, 0, MAX_REFINE); clif_refine(sd->fd,2,i,sd->status.inventory[i].refine); clif_delitem(sd,i,1,3); //Logs items, got from (N)PC scripts [Lupus] log_pick_pc(sd, "N", sd->status.inventory[i].nameid, -1, &sd->status.inventory[i]); clif_additem(sd,i,1,0); pc_equipitem(sd,i,ep); clif_misceffect(&sd->bl,2); script_pushint(st, sd->status.inventory[i].refine); return 1; } ShowError("buildin_downrefitem: No item equipped at pos %d (CID=%d/AID=%d).\n", pos, sd->status.char_id, sd->status.account_id); script_pushint(st, -1); return 0;}/*========================================== * *------------------------------------------*/ BUILDIN_FUNC(statusup)@@ -15157,6 +15202,7 @@ struct script_function buildin_func[] = { BUILDIN_DEF(getequippercentrefinery,"i"), BUILDIN_DEF(successrefitem,"i"), BUILDIN_DEF(failedrefitem,"i"), BUILDIN_DEF(downrefitem,"i?"), BUILDIN_DEF(statusup,"i"), BUILDIN_DEF(statusup2,"ii"), BUILDIN_DEF(bonus,"iv"), now, every time i the refine is successful it does nothing. however every time the item refine fails it gives me this debug error. can somebody Please check the source above?
  6. Hi guys.. this is my dice event and its working perfectly fine however sometimes when there's only 2 people that joins the event, the npc sometimes pick a number that the players are not choosing, like if player A choose number 1 and player B choose number 3. the npc sometimes choose number 4 which makes the dice event no winner at all. how do i make this script to make sure that there's a winner regarding the numbers of the player Like if there is 3 player left and 2 people choose number 1 and the other player choose number 4, the NPC should or would make sure that the only number it rolls will only be between 1 and 4 so that there's a definitive winner. thank you in advance guys. - script Dice#announcer -1,{ OnInit: disablenpc "diceevent"; hideonnpc "Dice#evnt1"; end; OnMinute30: announce "[Dice Event] : We are going to have a dice event.",0,0x00FFFF; sleep2 10000; announce "[Dice Event] : The prize for the winner will be 1 million zeny and 20 event cards.",0,0x00FFFF; sleep2 10000; announce "[Dice Event] : For those who wants to join, click the event area warper.",0,0x00FFFF; sleep2 10000; announce "[Dice Event] : The portal will close after one minute.",0,0x00FFFF; sleep2 10000; announce "[Dice Event] : Proceed to the event area now if you want to join.",0,0x00FFFF; enablenpc "diceevent"; initnpctimer; end; OnTimer30000: announce "[Dice Event] : Last 30 seconds.",0,0x00FFFF; sleep2 5000; announce "[Dice Event] : Please hurry, if you want to join.",0,0x00FFFF; end; OnTimer50000: announce "[Dice Event] : Last 10 seconds.",0,0x00FFFF; end; OnTimer55000: announce "[Dice Event] : 5",0,0x00FFFF; end; OnTimer56000: announce "[Dice Event] : 4",0,0x00FFFF; end; OnTimer57000: announce "[Dice Event] : 3",0,0x00FFFF; end; OnTimer58000: announce "[Dice Event] : 2",0,0x00FFFF; end; OnTimer59000: announce "[Dice Event] : 1",0,0x00FFFF; end; OnTimer60000: announce "[Dice Event] : Time's up.",0,0x00FFFF; end; OnTimer61000: disablenpc "diceevent"; donpcevent "Dice#evnt1::OnEnable"; stopnpctimer; end; OnTimer62000: announce "[Dice Event] : The next dice event will begin later.",0,0x00FFFF; end; } //-------------------------------------------------- poring_c01,111,93,3 script diceevent 546,{ menu "Join",godice,"^ff0000Exit^000000",nodice; nodice: close; godice: warp "quiz_01",204,90; end; } //-------------------------------------------------- quiz_01,204,93,3 script Dice#evnt1 546,{ //-------------------------------------------------- mes "[ Dice ]"; mes " "; mes "• ^0000ffInput Name^000000"; next; input .@desyo$; if(.@desyo$ != strcharinfo(0)) { mes "[ Dice ]"; mes "Are you sure that's your character's name?"; close; } mes "[ Dice ]"; announce "[Dice Event] : Congratulations to '"+.@desyo$+"' for winning the event.",0,0x00FFFF; mes "Congratulation on winning"; mes "the event!"; set Zeny,zeny+1000000; getitem 21017,20; // next; warp "poring_c01",108,107; hideonnpc "Dice#evnt1"; end; OnEnable: mapannounce "quiz_01","[Dice Event] : Alright, we are about to start the dice event.",bc_map,0x00FFFF; sleep2 10000; mapannounce "quiz_01","[Reminder] : Before anything else, just a quick reminder.",bc_map,0x00FFFF; sleep2 5000; mapannounce "quiz_01","[Reminder] : When choosing a number, make sure that you are inside the BOX. otherwise you will be disqualifed immediately!",bc_map,0x00FFFF; sleep2 10000; mapannounce "quiz_01","[Dice Event] : Alright, let's play the game.",bc_map,0x00FFFF; sleep2 10000; goto L_Start2; end; L_Start2: if(getmapusers("quiz_01") == 1) goto L_Champ; if(getmapusers("quiz_01") == 0) goto L_None; if(getmapusers("quiz_01") > 1) { mapannounce "quiz_01","(*Rolling the DICE*). . . . .",bc_map,0x00FFFF; set $@number, rand(1,4); sleep2 10000; mapannounce "quiz_01","[Dice Event] : I have a number now, Please go to the box number you want.",bc_map,0x00FFFF; sleep2 10000; mapannounce "quiz_01","[Dice Event] : 5",bc_map,0x00FFFF; sleep2 5000; mapannounce "quiz_01","[Dice Event] : 4",bc_map,0x00FFFF; sleep2 4000; mapannounce "quiz_01","[Dice Event] : 3",bc_map,0x00FFFF; sleep2 3000; mapannounce "quiz_01","[Dice Event] : 2",bc_map,0x00FFFF; sleep2 2000; mapannounce "quiz_01","[Dice Event] : 1",bc_map,0x00FFFF; sleep2 1000; mapannounce "quiz_01","[Dice Event] : Time's up.",bc_map,0x00FFFF; donpcevent "evnt#1::OnEnable"; mapannounce "quiz_01","[Dice Event] : The winning number is "+$@number+".",bc_map,0x00FFFF; if(($@number != 1) && ($@number != 2) && ($@number != 3)) goto L_Lose1; if(($@number != 1) && ($@number != 2) && ($@number != 4)) goto L_Lose2; if(($@number != 1) && ($@number != 3) && ($@number != 4)) goto L_Lose3; if(($@number != 2) && ($@number != 3) && ($@number != 4)) goto L_Lose4; end; } L_Lose1: areawarp "quiz_01",183,81,191,60,"poring_c01",106,96; areawarp "quiz_01",195,81,203,60,"poring_c01",106,96; areawarp "quiz_01",207,81,215,60,"poring_c01",106,96; goto L_Start2; end; L_Lose2: areawarp "quiz_01",183,81,191,60,"poring_c01",106,96; areawarp "quiz_01",195,81,203,60,"poring_c01",106,96; areawarp "quiz_01",219,81,227,60,"poring_c01",106,96;; goto L_Start2; end; L_Lose3: areawarp "quiz_01",183,81,191,60,"poring_c01",106,96; areawarp "quiz_01",207,81,215,60,"poring_c01",106,96; areawarp "quiz_01",219,81,227,60,"poring_c01",106,96; goto L_Start2; end; L_Lose4: areawarp "quiz_01",195,81,203,60,"poring_c01",106,96; areawarp "quiz_01",207,81,215,60,"poring_c01",106,96; areawarp "quiz_01",219,81,227,60,"poring_c01",106,96; goto L_Start2; end; L_Champ: mapannounce "quiz_01","[Dice Event] : Well done, please come here and tell me your name.",bc_map,0x00FFFF; hideoffnpc "Dice#evnt1"; end; L_None: announce "[Dice Event] : The event has ended, nobody wins.",0,0x00FFFF; hideonnpc "Dice#evnt1"; end; } - script evnt#1 -1,{ OnEnable: areawarp "quiz_01",182,94,228,88,"poring_c01",106,96; areawarp "quiz_01",185,87,188,82,"poring_c01",106,96; areawarp "quiz_01",197,87,200,82,"poring_c01",106,96; areawarp "quiz_01",209,87,212,82,"poring_c01",106,96; areawarp "quiz_01",221,87,224,82,"poring_c01",106,96; end; } // -- Mapflags quiz_01 mapflag nowarp quiz_01 mapflag nowarpto quiz_01 mapflag noteleport quiz_01 mapflag nosave quiz_01 mapflag nomemo quiz_01 mapflag nobranch quiz_01 mapflag noloot quiz_01 mapflag noskill quiz_01 mapflag nopenalty
  7. How do you increase the chance rate to get the reward on the cluckers npc event? if (.startcluck) { specialeffect2 EF_HIT3; switch(rand(15)) { case 0: npctalk "CLUUUUUUCK!!!"; sc_start SC_Sleep,10000,0; emotion e_gg; break; case 1: npctalk "Cluuuuuck!~"; break; case 2: sc_start SC_Sleep,10000,0; emotion e_omg;break; case 3: sc_start SC_Freeze,10000,0; break; case 4: npctalk "CLUUUUUUUUUCK!!!"; sc_start SC_Freeze,10000,0; break; emotion e_omg; break; case 5: sc_start SC_Sleep,10000,0; break; case 6: sc_start SC_Stone,10000,0; emotion e_gg; break; case 7: npctalk "CLUUUUUUCK!!!"; sc_start SC_Sleep,10000,0; emotion e_gg; break; case 8: npctalk "Cluck! CLUUUCK!!"; sc_start SC_Sleep,10000,0; emotion e_gg; break; case 9: sc_start SC_Stun,10000,0; break; case 10: sc_start SC_Sleep,10000,0; emotion e_gg; break; case 11: npctalk "Cluck! Cluck!"; emotion e_omg; break; case 12: sc_start SC_Stun,10000,0; break; case 13: npctalk "Cluuuuuck!~"; sc_start SC_Stun,10000,0; break; default: if (rand(50) < 4) { npctalk "Woof!... Wooff!..."; specialeffect2 EF_SPHERE; announce "[Cluck Cluck Boom] : '" + strcharinfo(0) + "' squeezed out the prize, Well done!",bc_map,0x00FFFF; getitem $cluck_item_id,$cluck_item_amount; set .startcluck,0; } else { npctalk "Cluck! CLUUUCK!!"; sc_start SC_Freeze,10000,0; emotion e_omg; } break; } end; i don't understand the rand(50) < 4 part.. what does it mean? does it mean that in random number from 1 to 50 i have 4% chance of getting the item? or what? LOL! i don't understand T_T
  8. [SOLVED] thank you so much ms. annie LOVE LOTS!!
  9. hi guys i just want to ask what causes this type of behavior to my script? can't seem to find out.. by the way some of this script were modified based on the original poster and so if the script doesnt have any script creator name. its because i copied it like that already and just modified the npc names and etc. fast type event poring_c01,107,90,3 script Fast-Type Event 488,{ if(getgmlevel() >= 60) callsub L_GM; if( !.Event ) { mes "[ Fast-Type Event ]"; mes "^777777Status^000000 : ^ff0000OFFLINE^000000"; mes " "; mes "^777777Event Info^000000 :"; mes "Whoever enters the highlighted code first, wins the prize."; mes "^777777Event Rounds^000000 : ^0000ff5^000000"; mes "^777777Event Prize^000000 : ^0000ff4x Event Cards^000000"; } else if ( .String$ == "A" ) { mes "[ Fast-Type Event ]"; mes "^ff0000The round has already ended.^000000"; } else { mes "[ Fast-Type Event ]"; mes " "; mes "Input ^0000ffCode Strings^000000 :"; mes " • ^CC00CC" + .String$ + "^000000 •"; mes "^ffac26¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯^000000"; input .@Type$; if( .String$ == "A" ) { mes "^ff0000ERROR^000000 : You were too slow."; close; } if ( .String$ == .@Type$ && .Event ) { mes "^00cc40Code Strings Correct^000000"; getitem 21017, 4; npctalk "'"+strcharinfo(0)+"' typed the correct strings!"; set .String$, "A"; set .typeround, .typeround + 1; donpcevent "Fast-Type Event::OnStart2"; } else { mes "^ff0000Code Strings Incorrect^000000"; } } close; OnMinute15: if(.Event) end; donpcevent "Fast-Type Event::OnStart"; end; OnStart: announce "[Fast-Type Event] : Fast-Type Event will be starting in 10 seconds.",0,0x00FFFF; sleep2 3000; announce "[Fast-Type Event] : Click the event area warper, if you want to participate.",0,0x00FFFF; sleep2 7000; goto L_Begin; end; L_Begin: set .Event, 1; set .String$, "A"; while( getstrlen( .String$ ) < .Length ){ set .String$,.String$ + .List$[ rand( getarraysize( .List$ ) ) ]; } announce "[Fast-Type Event] : The event has started.",0,0x00FFFF; end; OnStart2: sleep2 5000; if(.typeround == .Rounds) { if(!.Event) end; announce "[Fast-Type Event] : The event has ended.",bc_map,0x00FFFF; set .Event, 0; set .typeround, 0; end; } if(!.Event) end; announce "[Fast-Type Event] : Next round starts in 5 seconds.",bc_map,0x00FFFF; sleep2 5000; if(!.Event) end; goto L_Begin; L_GM: mes "[ Fast-Type Event ]"; mes "Fast-Type Event :" + (.Event?"^009900 ON^000000":"^FF0000 OFF^000000"); mes "Turn it" + (!.Event?"^009900 ON^000000":"^FF0000 OFF^000000") +"?"; next; if(select((!.Event?"Turn ^009900ON^000000":"Turn ^ff0000OFF^000000") + " Event^000000","Normal Player") == 2) return; switch(.Event) { case 1: set .Event, 0; set .typeround, 0; set .String$, "A"; announce "[Fast-Type Event] : A GM has ended the event.",0,0x00FFFF; break; default: donpcevent "Fast-Type Event::OnStart"; } close; OnInit: set .Length,10; set .Rounds,5; setarray .List$,"a","B","c","D","e","F","g","H","i","J","k","L","m","N","o","P","q","R","s","T","u","V","w","X","y","Z","1","2","3","4","5","6","7","8","9","0"; end; } find the mushroom event (original) find the plants event ( modified ) //===== rAthena Script ======================================= //= Find the Mushroom //===== By: ================================================== //= Mysterious //===== Current Version: ===================================== //= 3.6a //===== Compatible With: ===================================== //= rAthena Project //===== Description: ========================================= //= Find the Mushroom - random amount of Mushrooms spawns in random maps. //= Players need to find these mushrooms and kill them to gain prizes! //===== Additional Comments: ================================= //= 3.0 Fully Functional with Rewritten script. [Mysterious] //= 3.6a Slightly edited. [Euphy] //============================================================ poring_c01,101,114,5 script Find the Plant#plant 524,{ if ( .plantstatus ) end; else { mes "[ Find the Plant ]"; mes "^777777Status^000000 : ^ff0000OFFLINE^000000"; mes " "; mes "^777777Event Info^000000 :"; mes "Find and kill the plants to win the prize."; mes "^777777Event Prize^000000 : ^0000ff5x Event Card"; } if (.plantstatus || getgmlevel() < .GM) close; next; mes "[ Find the Plant ]"; mes "Start the event?"; next; if(select("No:Yes") == 1) close; donpcevent strnpcinfo(0)+"::OnMinute22"; mes "[ Find The Plants ]"; mes " "; mes "^009900*Event Started*^000000"; close; OnInit: set .Prize,21017; // Reward item ID set .Amount,5; // Reward item amount set .GM,80; // GM level required to access NPC setarray .Maps$[0],"poring_c01"; // Possible maps end; OnMinute22: // Start time (every hour) if ( .plantstatus ) end; announce "[Minor Event] : Find the Plant event is starting within 1 minute in the event area.",0,0x00FFFF; sleep 30000; announce "[Minor Event] : Find the Plant event is starting within 30 seconds in the event area.",0,0x00FFFF; sleep 20000; announce "[Minor Event] : Find the Plant event is starting within 10 seconds, Please hurry if you want to join.",0,0x00FFFF; sleep 10000; announce "[Minor Event] : Find the Plant event has started.",0,0x00FFFF; set .plantstatus,1; set .spawnplant,rand(2,3); // How many Mushrooms should spawn? set .Map$,.Maps$[rand(getarraysize(.Maps$))]; killmonster .Map$,"All"; monster .Map$,0,0,"[Event] Plant",1083,.spawnplant,strnpcinfo(0)+"::OnMobKilled"; announce "[Find the Plant] : "+.spawnplant+" plants have been spawned in the event area.",bc_map,0x00FFFF; sleep 5000; announce "[Find the Plant] : Every plants you kill will give you 5x "+getitemname(.Prize)+".",bc_map,0x00FFFF; end; OnMobKilled: set .spawnplant, .spawnplant - 1; getitem .Prize, .Amount; if (.spawnplant) announce "[Find the Plants] : '"+strcharinfo(0)+"' has killed a plant, "+.spawnplant+" more to go.",bc_map,0x00FFFF; else { announce "[Minor Event] : Find the Plant event has ended, All the plants have been killed.",bc_map,0x00FFFF; set .plantstatus,0; } end; }
  10. caspa

    CTP event?

    as usual... perfect script... thank you ms. annie...
  11. caspa

    CTP event?

    thank you so much for the reply ms annie.. hahaha yes i'm using eamod and yeah.. i dont have the getwatingroomuser and the bindatcmd.... is there any way to convert both of them?
  12. caspa

    CTP event?

    yes ms annieruru... its a simple event which start every OnMinute** .... first player to click the PUB wins the prize... the game reset then start again on the specified OnMinute.....
  13. so what are the things i must do so i can view the skills on the misc tab? or extra skill tree tab. like if i'm wearing a vitata clip or smokie clip? how do i make the hiding and heal lvl 1 be in the misc tab? what lua files do i need?
  14. caspa

    CTP event?

    does anybody have a working click the pub event? the one modified that has OnMinute and not the one that has the Set .Repeat and Set .AM something?
  15. hi guys, i'm using an older client 2010-07-30 and was wondering what client does the misc skill tree tab appear? or is it possible to manually put the lua files necessary so that i can separate the misc skill from from the 1st and 2nd skill tree... please reply asap need ur help.. T.Y in advanced!
  16. - script custom_bg#control -1,{ OnInit: set .minplayer2start, 2; // minimum player to start setarray .rewarditem, 23108,20, // reward to the winning team 23108,10; // reward to the losing team set .startingscore, 99; // score at start set .eventlasting, 120; // event last 100 seconds end; OnStart: if ( getwaitingroomstate( 0, ".red1npcname$" ) < .minplayer2start || getwaitingroomstate( 0, ".blue1npcname$" ) < .minplayer2start ) end; set .red1, waitingroom2bg( "endless_war",64,86, strnpcinfo(0)+"::OnredQuit", strnpcinfo(0)+"::OnredDead", ".red1npcname$" ); copyarray .team11aid[.@i], $@arenamembers[.@i], $@arenamembersnum; set .blue1, waitingroom2bg( "endless_war",191,86, strnpcinfo(0)+"::OnblueQuit", strnpcinfo(0)+"::OnblueDead", ".blue1npcname$" ); copyarray .team22aid[.@i], $@arenamembers[.@i], $@arenamembersnum; delwaitingroom ".red1npcname$"; delwaitingroom ".blue1npcname$"; disablenpc .red1npcname$; disablenpc .blue1npcname$; bg_warp .red1, "endless_war", 64,86; bg_warp .blue1, "endless_war", 191,86; sleep2 3000; mapannounce "endless_war", "[Clan War] : Clan with most kills within 2 mins wins!",0; set .score[1], .startingscore; set .score[2], .startingscore; bg_updatescore "endless_war", .score[1], .score[2]; sleep .eventlasting * 1000; if ( .score[1] == .score[2] ) mapannounce "endless_war", "[Clan War] : The war has been declared draw!",0; else if ( .score[1] > .score[2] ) { mapannounce "endless_war", "[Clan War] : The Troll Clan has won the war!", 0; callsub L_reward, 1, 0; callsub L_reward, 2, 2; } else if ( .score[1] < .score[2] ) { mapannounce "endless_war", "[Clan War] : The Fairy Clan has won the war!", 0; callsub L_reward, 2, 0; callsub L_reward, 1, 2; } bg_warp .red1, "crystilia" ,68,77; bg_warp .blue1, "mellina", 70,72; bg_destroy .red1; bg_destroy .blue1; enablenpc .red1npcname$; enablenpc .blue1npcname$; donpcevent ".red1npcname$::OnStart"; donpcevent ".blue1npcname$::OnStart"; end; L_reward: set .@size, getarraysize( getd(".team"+ getarg(0) +"aid") ); for ( set .@i, 0; .@i < .@size; set .@i, .@i +1 ) if ( isloggedin( getd(".team"+ getarg(0) +"aid["+ .@i +"]" ) ) ) getitem .rewarditem[ getarg(1) ], .rewarditem[ getarg(1) +1 ], getd(".team"+ getarg(0) +"aid["+ .@i +"]" ); return; OnredDead: callsub L_dead, 1; OnblueDead: callsub L_dead, 2; L_dead: set .score[ getarg(0) ], .score[ getarg(0) ] -1; bg_updatescore "endless_war", .score[1], .score[2]; if ( .score[ getarg(0) ] == 0 ) awake strnpcinfo(0); end; OnredQuit: callsub L_quit, 1, .red1; OnblueQuit: callsub L_quit, 2, .blue1; L_quit: if ( bg_get_data( getarg(1), 0) ) end; set .score[ getarg(0) ], 0; awake strnpcinfo(0); end; } crystilia,62,87,5 script Troll Clan #custom_bg 468,{ end; OnInit: sleep 1; set getvariableofnpc( .red1npcname$, "custom_bg#control" ), strnpcinfo(0); OnStart: waitingroom "Kill War", getvariableofnpc( .minplayer2start, "custom_bg#control" ), strnpcinfo(0)+"::OnJoin",1; end; OnJoin: announce "[Clan War] : Troll Clan side has ["+ getwaitingroomstate(0) +"/"+ getvariableofnpc( .minplayer2start, "custom_bg#control" ) +"] Users. ( Kill War )",0; donpcevent "custom_bg#control::OnStart"; end; //OnInit: // waitingroom "Kill War", getvariableofnpc( .minplayer2start, "custom_bg#control" ), "custom_bg#control::OnStart", getvariableofnpc( .minplayer2start, "custom_bg#control" ); // end; } mellina,63,74,5 script Fairy Clan #custom_bg 435,{ end; OnInit: sleep 1; set getvariableofnpc( .blue1npcname$, "custom_bg#control" ), strnpcinfo(0); OnStart: waitingroom "Kill War", getvariableofnpc( .minplayer2start, "custom_bg#control" ), strnpcinfo(0)+"::OnJoin",1; end; OnJoin: announce "[Clan War] : Fairy Clan side has ["+ getwaitingroomstate(0) +"/"+ getvariableofnpc( .minplayer2start, "custom_bg#control" ) +"] Users. ( Kill War )",0; donpcevent "custom_bg#control::OnStart"; end; //OnInit: // waitingroom "Kill War", getvariableofnpc( .minplayer2start, "custom_bg#control" ), "custom_bg#control::OnStart", getvariableofnpc( .minplayer2start, "custom_bg#control" ); // end; } endless_war mapflag battleground 2 endless_war mapflag nosave SavePoint endless_war mapflag nowarp endless_war mapflag nowarpto endless_war mapflag noteleport endless_war mapflag nomemo endless_war mapflag nopenalty endless_war mapflag nobranch endless_war mapflag noicewall does anybody have any idea why this script it not working? or is there any some kind of mistake here? when the minimum required player is set like 2/2 and the other side has 2/2 also... it doesnt do anything.. like the it doesn't warp me to the endless_war area?
  17. @functor .... i do not? why? does it affect?
  18. hi guys... i cant find a solution to my problem.. i'm getting gravity error (image provided) this always happens whenever i enter a map but always gets resolved whenever i reset the position of the character that was stuck.. and the weird thing is it does not happen to a specific map only... it happens when you log in to the game.. it happens when your warp to a pvp map.. it happens sometimes when you go to a field... it happens also when you go to dungeons.. it doesnt have a specific map that errors... the errors seems to always occur whenever the loading of a map finishes....
  19. caspa

    R> GM SING

    where can i find this headgear?
×
×
  • Create New...