Jump to content

Yoona

Members
  • Posts

    567
  • Joined

  • Last visited

Everything posted by Yoona

  1. Hello, I hope Annie can read this post since it's her script. All i want to do is, Every game has 3 Rounds. So if the Player Died they will be teleported but can't move and cannot be hit by other team. until the round is done. then with a timer after they can start fighting. and change the place into bat_b01. thanks! - script custom_bg#control -1,{ OnInit: set .minplayer2start, 7; // minimum player to start ... please do not set to 1 setarray .rewarditem, 22001, 200, // reward to the winning team 22001, 50; // reward to the losing team set .startingscore, 30; // score at start set .eventlasting, 20*60; // event last 20 minutes or the system abort itself set .red_cloth, 1; // color value from red clothing set .blue_cloth, 2; // color value from blue clothing set .grey_cloth, 3; // color value from grey clothing end; OnStart: if ( getwaitingroomstate( 0, .rednpcname$ ) < .minplayer2start || getwaitingroomstate( 0, .bluenpcname$ ) < .minplayer2start ) { announce " [ Battle Ground DeathMatch System ] Blue Team : "+ getwaitingroomstate( 0, .bluenpcname$ ) + "/" + .minplayer2start + ". Red Team : "+ getwaitingroomstate( 0, .rednpcname$ ) + "/" + .minplayer2start,bc_all,0x00CED1; end; } .red = waitingroom2bg( "guild_vs3", 13,50, strnpcinfo(0)+"::OnredQuit", strnpcinfo(0)+"::OnredDead", .rednpcname$ ); copyarray .team1aid, $@arenamembers, $@arenamembersnum; .team1count = .minplayer2start; .blue = waitingroom2bg( "guild_vs3", 86,50, strnpcinfo(0)+"::OnblueQuit", strnpcinfo(0)+"::OnblueDead", .bluenpcname$ ); copyarray .team2aid, $@arenamembers, $@arenamembersnum; .team2count = .minplayer2start; delwaitingroom .rednpcname$; delwaitingroom .bluenpcname$; bg_warp .red, "guild_vs3", 13,50; bg_warp .blue, "guild_vs3", 86,50; .score[1] = .score[2] =.startingscore; bg_updatescore "guild_vs3", .score[1], .score[2]; callsub L_setleader, 1; callsub L_setleader, 2; for ( .@i = 0; .@i < .minplayer2start; .@i++ ) { attachrid .team1aid[.@i]; @clotes_color = getlook( look_clothes_color ); setlook look_clothes_color, ( .leader_aid[1] == getcharid(3) )? .grey_cloth : .red_cloth; } for ( .@i = 0; .@i < .minplayer2start; .@i++ ) { attachrid .team2aid[.@i]; @clotes_color = getlook( look_clothes_color ); setlook look_clothes_color, ( .leader_aid[2] == getcharid(3) )? .grey_cloth : .blue_cloth; } sleep .eventlasting * 1000; if ( .score[1] > .score[2] ) { mapannounce "guild_vs3", "red side wins !", 0; callsub L_reward, 1, 0; callsub L_reward, 2, 2; } else if ( .score[1] < .score[2] ) { mapannounce "guild_vs3", "blue side wins !", 0; callsub L_reward, 2, 0; callsub L_reward, 1, 2; } else { mapannounce "guild_vs3", "Draw !", 0; callsub L_reward, 1, 2; callsub L_reward, 2, 2; } bg_warp .red, "prontera",152,178; bg_warp .blue, "prontera",154,178; bg_destroy .red; bg_destroy .blue; donpcevent .rednpcname$ +"::OnStart"; donpcevent .bluenpcname$ +"::OnStart"; .leader_aid[1] = .leader_aid[2] = 0; for ( .@i = 0; .@i < .team1count; .@i++ ) { attachrid .team1aid[.@i]; setlook look_clothes_color, @clotes_color; @clotes_color = 0; } for ( .@i = 0; .@i < .team2count; .@i++ ) { attachrid .team2aid[.@i]; setlook look_clothes_color, @clotes_color; @clotes_color = 0; } end; L_reward: for ( .@i = 0; .@i < getd(".team"+ getarg(0) +"count"); .@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: if ( .leader_aid[ getarg(0) ] != getcharid(3) ) .score[ getarg(0) ]--; else { callsub L_setleader, getarg(0); .score[ getarg(0) ] -= 2; } bg_updatescore "guild_vs3", .score[1], .score[2]; if ( .score[ getarg(0) ] <= 0 ) awake strnpcinfo(0); sleep2 1250; percentheal 100,100; end; OnredQuit: callsub L_quit, 1, .red; OnblueQuit: callsub L_quit, 2, .blue; L_quit: percentheal 100, 100; while ( getd( ".team"+ getarg(0) +"aid["+ .@i +"]" ) != getcharid(3) && .@i < getd(".team"+ getarg(0) +"count") ) .@i++; deletearray getd( ".team"+ getarg(0) +"aid["+ .@i +"]" ), 1; setd ".team"+ getarg(0) +"count", getd(".team"+ getarg(0) +"count") -1; if ( .leader_aid[ getarg(0) ] == getcharid(3) ) callsub L_setleader, getarg(0); setlook look_clothes_color, @clotes_color; @clotes_color = 0; if ( bg_get_data( getarg(1), 0 ) > 1 ) end; .score[ getarg(0) ] = 0; awake strnpcinfo(0); end; L_setleader: while ( ( .@tmp = getd( ".team"+ getarg(0) +"aid["+ rand( getd(".team"+ getarg(0) +"count") ) +"]" ) ) == playerattached() ); .leader_aid[ getarg(0) ] = .@tmp; .@origin = playerattached(); attachrid .leader_aid[ getarg(0) ]; addtimer 1, strnpcinfo(0) +"::Onteam"+ getarg(0) +"leader"; attachrid .@origin; return; Onteam1leader: callsub L_lead, 1, 548; Onteam2leader: callsub L_lead, 2, 549; L_lead: while ( .leader_aid[ getarg(0) ] == getcharid(3) ) { specialeffect2 getarg(1); sleep2 1000; } end; } turbo_room,106,117,3 script Red Team 733,{ end; OnInit: sleep 50; set getvariableofnpc( .rednpcname$, "custom_bg#control" ), strnpcinfo(0); OnStart: waitingroom "Red Team", getvariableofnpc( .minplayer2start, "custom_bg#control" ) +1, "custom_bg#control::OnStart", 1; end; } turbo_room,93,117,5 script Blue Team 734,{ end; OnInit: sleep 50; set getvariableofnpc( .bluenpcname$, "custom_bg#control" ), strnpcinfo(0); OnStart: waitingroom "Blue Team", getvariableofnpc( .minplayer2start, "custom_bg#control" ) +1, "custom_bg#control::OnStart", 1; end; } guild_vs3 mapflag battleground 2 guild_vs3 mapflag nosave SavePoint guild_vs3 mapflag nowarp guild_vs3 mapflag nowarpto guild_vs3 mapflag noteleport guild_vs3 mapflag nomemo guild_vs3 mapflag nopenalty guild_vs3 mapflag nobranch guild_vs3 mapflag noicewall
  2. yeah ... probably.... npc/instances/EndlessTower.txt | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/npc/instances/EndlessTower.txt b/npc/instances/EndlessTower.txt index ace43e6..0710ad5 100644 --- a/npc/instances/EndlessTower.txt +++ b/npc/instances/EndlessTower.txt @@ -231,6 +231,10 @@ e_tower,81,105,0 script Tower Protection Stone 406,{ mes "After making a reservation, you have to talk to NPC behind and select the menu 'Enter the Dungeon' to enter the dungeon."; close; case 2: + if ( upper != 2 ) { + mes "3rd job only"; + close; + } callsub L_Enter,0,1; case 3: mes "I will move you to Alberta."; @@ -243,6 +247,10 @@ e_tower,81,105,0 script Tower Protection Stone 406,{ } switch(select("Enter the "+.@md_name$+":Return to Alberta:Cancel")) { case 1: + if ( upper != 2 ) { + mes "3rd job only"; + close; + } callsub L_Enter,1,1; case 2: mes "I will move you to Alberta."; @@ -1327,6 +1335,7 @@ OnEnable: OnTouch_: getitem 6000,1; //Dark_Ashes + etower_points += 100; warp instance_mapname("2@tower"),52,354; end; @@ -1482,6 +1491,7 @@ OnEnable: end; OnTouch_: + etower_points += 100; warp instance_mapname("3@tower"),52,354; end; } @@ -1576,6 +1586,7 @@ OnEnable: OnTouch_: getitem 6000,1; //Dark_Ashes + etower_points += 100; warp instance_mapname("4@tower"),52,354; end; @@ -1691,6 +1702,7 @@ OnEnable: OnTouch_: getitem 6000,1; //Dark_Ashes + etower_points += 100; warp instance_mapname("5@tower"),101,72; end; @@ -2172,6 +2184,7 @@ OnMyMobDead: mes "[Lost Souls]"; mes "Farewell, young adventurer. I wish you good luck."; close2; + etower_points += 100; warp "alberta",223,36; end; I didn't test, just based on my understandingfor no.3 .... has lots of point currency shop lying around ... Annie should i change this one if ( upper != 2 ) { into if ( upper != 3 ) { ? because i tried it and trans can enter but 3rd job class can't.
  3. @Patskie so im just gonna paste it on my Endless Tower script?
  4. Hi Sonic, How can you make this event to be automated? Should it be look like this right? OnMinute5: sonicxxx: announce "[ Poring Hoster ]: Poring Soccer Event has just started!!!",bc_all; sleep 3000; announce "[ Poring Hoster ]: For those who wants to register, please make two party of 5 players each.",bc_all; sleep 2500; announce "[ Poring Hoster ]: After ready then go to the left portal near Stylist NPC! ",bc_all; enablenpc "poringballwarp"; initnpctimer; end;
  5. @Patskie sorry but still new with scripting. where should i add those?
  6. Hey Guys! How's everything going here at rAthena! Can i request something ? What I'm Looking for is : First : Endless Tower Job Restrictions ( Below 3rd Jobs can't enter ) Second : Each Floor they Finish. Party Members will receive 10 Endless Tower Points. Third : A shop that only Endless Tower Points are allowed. Thanks in Advance Have a Safe Day ahead !
  7. Ohh, i see silly me sorry i didn't see that Thanks Emistry!
  8. While i was adding more maps this error pops out. Help? [Error]: Loading NPC file: npc/custom/classrestriction.txt script error on npc/custom/classrestriction.txt line 84 script:add_word: invalid word. A word consists of undercores and/or alphanumeric characters, and valid variable prefixes/postfixes. 79 : "prtg_cas01","63", 80 : "prtg_cas02","64", 81 : "prtg_cas03","3", 82 : "prtg_cas04","2", 83 : "prtg_cas05","1"; * 84 : '"'prtg_cas02","64",
  9. go to trunk/conf/battle/monster.conf then find // The HP rate of MVPs. (Note 2) mvp_hp_rate: 100 // The HP rate of normal monsters (that is monsters that are not MVP's) (Note 2) monster_hp_rate: 100 Replace each by your desired Percentage ( this one is x3 ) // The HP rate of MVPs. (Note 2) mvp_hp_rate: 300 // The HP rate of normal monsters (that is monsters that are not MVP's) (Note 2) monster_hp_rate: 300
  10. Remove menu "Convert ^ff0000"+getitemname(9524)+"^000000 to ^ff0000"+getitemname(7179)+"^000000", L_PODS, "Nevermind", L_Cancel; Add menu "Convert ^ff0000"+getitemname(9524)+"^000000 to ^ff0000"+getitemname(7179)+"^000000", L_PODS, "Convert ^ff0000"+getitemname(7179)+"^000000 to ^ff0000"+getitemname(9524)+"^000000", L_PODS2, "Nevermind", L_Cancel; Then add this Line L_PODS2: next; mes "[Trader]"; mes "How many you want to exchange?"; mes "^ff0000Note^000000: 1 "+getitemname(7179)+" is 1,000 "+getitemname(9524)+""; input .@count; if (.@count == 0) close; if (countitem(7179) < .@count*1) goto L_Noitem; delitem 7179,.@count*1; getitem 9524,.@count*1000; specialeffect2 248; close; Whole Script didn't test it =) prontera,147,157,5 script BC - PODS 100,{ mes "[Trader]"; mes "You currently have ^ff0000"+countitem(9524)+"^000000 "+getitemname(9524)+""; menu "Convert ^ff0000"+getitemname(9524)+"^000000 to ^ff0000"+getitemname(7179)+"^000000", L_PODS, "Convert ^ff0000"+getitemname(7179)+"^000000 to ^ff0000"+getitemname(9524)+"^000000", L_PODS2, "Nevermind", L_Cancel; L_PODS: next; mes "[Trader]"; mes "How many you want to exchange?"; mes "^ff0000Note^000000: 1,000 "+getitemname(9524)+" is 1 "+getitemname(7179)+""; input .@count; if (.@count == 0) close; if (countitem(9524) < .@count*1000) goto L_Noitem; delitem 9524,.@count*1000; getitem 7179,.@count*1; specialeffect2 248; close; L_PODS2: next; mes "[Trader]"; mes "How many you want to exchange?"; mes "^ff0000Note^000000: 1 "+getitemname(9524)+" is 1,000 "+getitemname(7179)+""; input .@count; if (.@count == 0) close; if (countitem(7179) < .@count*1) goto L_Noitem; delitem 7179,.@count*1; getitem 9524,.@count*1000; specialeffect2 248; close; L_Noitem: next; mes "[Trader]"; mes "[ ^ff0000X^000000 ] Insufficient "+getitemname(9524)+""; close; L_Cancel: mes "[Trader]"; mes "Feel free to use my service anytime!"; close; end; }
  11. go to your trunk/npc/custom/.. paste it inside the custom folder then open.. which you can see that inside npc folder. scripts_custom or try this one " Click Me "
  12. Can anyone help me with this please? i just want to add require items to change their Headgear into Costume HG. please Here the script // ------------------------------------------------------------------------------- // Script Name : Headgear to Costume converter >> Costume to Headgear converter // ------------------------------------------------------------------------------- // Description : // - Allows a user to convert the equipped headgear (on Top, Mid or Low) into a // costume item. It will remove any card and refine of the Item. // - Allows a user to restore the equipped costume headgear (on Top, Mid or Low) // into its original form. It will not return any card or refine of the item. // ------------------------------------------------------------------------------- - script Costume Clown -1,{ mes "[Clown]"; mes "Here you can convert your headgears into a Costume Headgear or restore to its Original form."; switch(select("I want to convert.:I want to restore.:No thanks.")) { case 1: next; mes "Please, select what to convert."; mes "Remember, cards and refine will be removed."; next; setarray .@Position$[1],"Top","Mid","Low"; setarray .@Position[1], 1, 9, 10; set .@Menu$,""; for( set .@i, 1; .@i < 5; set .@i, .@i + 1 ) { if( getequipisequiped(.@Position[.@i]) ) set .@Menu$, .@Menu$ + .@Position$[.@i] + "-" + "[" + getequipname(.@Position[.@i]) + "]"; set .@Menu$, .@Menu$ + ":"; } set .@Part, .@Position[ select(.@Menu$) ]; if( !getequipisequiped(.@Part) ) { mes "[Clown]"; mes "Your not wearing anything there..."; close; } mes "[Clown]"; mes "You want to Costume your " + getitemname(getequipid(.@Part)) + "?"; next; if( select("Yes, proceed:No, I am sorry.") == 2 ) { mes "[Clown]"; mes "Need some time to think about it, huh?"; mes "Alright, I can understand."; close; } costume .@Part; // Convert the Headgear mes "[Clown]"; mes "Done, enjoy your costume headgear."; close; case 2: next; mes "Please, select what to restore."; mes "Remember, I will only restore it back without refine and cards."; next; setarray .@Position$[1],"Top","Mid","Low"; setarray .@Position[1], 13, 12, 11; set .@Menu$,""; for( set .@i, 1; .@i < 5; set .@i, .@i + 1 ) { if( getequipisequiped(.@Position[.@i]) ) set .@Menu$, .@Menu$ + .@Position$[.@i] + "-" + "[" + getequipname(.@Position[.@i]) + "]"; set .@Menu$, .@Menu$ + ":"; } set .@Part, .@Position[ select(.@Menu$) ]; if( !getequipisequiped(.@Part) ) { mes "[Clown]"; mes "Your not wearing anything there..."; close; } mes "[Clown]"; mes "You want to restore your " + getitemname(getequipid(.@Part)) + "?"; next; if( select("Yes, proceed:No, I am sorry.") == 2 ) { mes "[Clown]"; mes "Need some time to think about it, huh?"; mes "Alright, I can understand."; close; } a = getequipid(.@Part); delitem a,1; getitem a,1; mes "[Clown]"; mes "Done, enjoy your restored headgear."; close; case 3: mes "[Clown]"; mes "Very well. Return at once if you seek my services."; close; } } // -------------------------------------------------------------------------- // Use duplicates to put your npc on different cities // -------------------------------------------------------------------------- prontera,155,181,4 duplicate(Costume Clown) Costume Clown#1 715
  13. as you can see, on the description. it will add stats but instead it deduct the stats. example on the picture Str 50 + -24 Agi 1 + - 1 How can, I correct this one?
  14. What should be the problem with this? i've tried any job that needs to use arrow. Problem Solve! Thanks!
  15. @Topic Creator can you put a required item to change the item into a costume item? please
  16. @Bump! can anyone help me? @bump!
  17. I would suggest that look for a Restrict Job, i think i saw that here at rAthena.
  18. you need source modification.
  19. Hello can someone help me out with this script? What i want is to put a required item to change the item into a costume item that can be configurable thanks! // ------------------------------------------------------------------------------- // Script Name : Headgear to Costume converter >> Costume to Headgear converter // ------------------------------------------------------------------------------- // Description : // - Allows a user to convert the equipped headgear (on Top, Mid or Low) into a // costume item. It will remove any card and refine of the Item. // - Allows a user to restore the equipped costume headgear (on Top, Mid or Low) // into its original form. It will not return any card or refine of the item. // ------------------------------------------------------------------------------- - script Costume Clown -1,{ mes "[Clown]"; mes "Here you can convert your headgears into a Costume Headgear or restore to its Original form."; switch(select("I want to convert.:I want to restore.:No thanks.")) { case 1: next; mes "Please, select what to convert."; mes "Remember, cards and refine will be removed."; next; setarray .@Position$[1],"Top","Mid","Low"; setarray .@Position[1], 1, 9, 10; set .@Menu$,""; for( set .@i, 1; .@i < 5; set .@i, .@i + 1 ) { if( getequipisequiped(.@Position[.@i]) ) set .@Menu$, .@Menu$ + .@Position$[.@i] + "-" + "[" + getequipname(.@Position[.@i]) + "]"; set .@Menu$, .@Menu$ + ":"; } set .@Part, .@Position[ select(.@Menu$) ]; if( !getequipisequiped(.@Part) ) { mes "[Clown]"; mes "Your not wearing anything there..."; close; } mes "[Clown]"; mes "You want to Costume your " + getitemname(getequipid(.@Part)) + "?"; next; if( select("Yes, proceed:No, I am sorry.") == 2 ) { mes "[Clown]"; mes "Need some time to think about it, huh?"; mes "Alright, I can understand."; close; } costume .@Part; // Convert the Headgear mes "[Clown]"; mes "Done, enjoy your costume headgear."; close; case 2: next; mes "Please, select what to restore."; mes "Remember, I will only restore it back without refine and cards."; next; setarray .@Position$[1],"Top","Mid","Low"; setarray .@Position[1], 13, 12, 11; set .@Menu$,""; for( set .@i, 1; .@i < 5; set .@i, .@i + 1 ) { if( getequipisequiped(.@Position[.@i]) ) set .@Menu$, .@Menu$ + .@Position$[.@i] + "-" + "[" + getequipname(.@Position[.@i]) + "]"; set .@Menu$, .@Menu$ + ":"; } set .@Part, .@Position[ select(.@Menu$) ]; if( !getequipisequiped(.@Part) ) { mes "[Clown]"; mes "Your not wearing anything there..."; close; } mes "[Clown]"; mes "You want to restore your " + getitemname(getequipid(.@Part)) + "?"; next; if( select("Yes, proceed:No, I am sorry.") == 2 ) { mes "[Clown]"; mes "Need some time to think about it, huh?"; mes "Alright, I can understand."; close; } a = getequipid(.@Part); delitem a,1; getitem a,1; mes "[Clown]"; mes "Done, enjoy your restored headgear."; close; case 3: mes "[Clown]"; mes "Very well. Return at once if you seek my services."; close; } } // -------------------------------------------------------------------------- // Use duplicates to put your npc on different cities // -------------------------------------------------------------------------- prontera,155,181,4 duplicate(Costume Clown) Costume Clown#1 715
  20. The latest revision at Github is different. i wish someone can help me about this one. I got this error 1>..\src\map\atcommand.c(1204): error C2059: syntax error : 'if'
  21. will this diff costume item compatible with the latest GIT ?
  22. I got this error Im using the latest Revision now 1>..\src\map\vending.c(240): warning C4020: 'pc_paycash' : too many actual parameters 1>..\src\map\vending.c(241): warning C4020: 'pc_getcash' : too many actual parameters
×
×
  • Create New...