celeron0134
-
Posts
194 -
Joined
-
Last visited
Content Type
Profiles
Forums
Downloads
Jobs Available
Server Database
Third-Party Services
Top Guides
Store
Crowdfunding
Posts posted by celeron0134
-
-
Hello good day ,, can i trigger this?
setarray .@indices[1], EQI_HEAD_TOP, EQI_ARMOR, EQI_HAND_L, EQI_HAND_R, EQI_GARMENT, EQI_SHOES, EQI_ACC_L, EQI_ACC_R, EQI_HEAD_MID, EQI_HEAD_LOW; for(.@i = 1; .@i<getarraysize(.@indices); ++.@i) { if(getequipisequiped(.@indices[.@i])) { .@menu$ = .@menu$ + F_getpositionname(.@indices[.@i]) + "-[" + getequipname(.@indices[.@i]) + "]"; .@equipped = 1; } .@menu$ = .@menu$ + ":"; }
how can i trigger EQI_HEAD_TOP or EQI_SHOES
if(getequipisequiped(.@indices[EQI_HEAD_TOP])) {
mes "Yup this is the headgear";
close;
}if(getequipisequiped(.@indices[EQI_SHOES])) {
mes "Yup this is the Footgear";
close;
}so when i picked any headgear it will go to their respective ifs
-
Bump for this.. as i tried and failed =D
- ID: 230201 Group: "AG_BATTLE" Name: "Exploring Poring's life (1)" Reward: TitleID: 1029 Target: - Id: 0 MobID: 1002 Count: 10 Score: 10
but no rewards can be seen on the achievement window nothing to collect..
-
Hello good day..
setarray .@indices[1], EQI_HEAD_TOP, EQI_ARMOR, EQI_HAND_L, EQI_HAND_R, EQI_GARMENT, EQI_SHOES, EQI_ACC_L, EQI_ACC_R, EQI_HEAD_MID, EQI_HEAD_LOW;
Case 1:
switch select .@headstones
Case 2:
switch select .@armorstones
Case 3:
Switch select .@weaponstones
like this..
-
hello ,will there be a support for this script? got errors on src/custom after compiling.. if no kindly tell so that we stop hoping for support and try to fix it ourselves or find solutions for the error
@Emistry i have errors when recompiling.. same as the rest.. mind if you fix your script so we can use it? thanks
-
bump please - tried making 7 NPCS for it to work.. i need them to be on 1 NPC
-
12199,Rice_Scroll,Scroll of Magic,2,0,,0,,,,,0xFFFFFFFF,7,2,,,,,,{ callfunc "soullink"; },{},{}
put this on your itemdb.txt
function script soullink { switch ( basejob ) { case Job_Alchemist: set .@spirit, 445; break; case Job_Monk: set .@spirit, 447; break; case Job_Star_Gladiator: set .@spirit, 448; break; case Job_Sage: set .@spirit, 449; break; case Job_Crusader: set .@spirit, 450; break; case Job_SuperNovice: set .@spirit, 451; break; case Job_Knight: set .@spirit, 452; break; case Job_Wizard: set .@spirit, 453; break; case Job_Priest: set .@spirit, 454; break; case Job_Bard: case Job_Dancer: set .@spirit, 455; break; case Job_Rogue: set .@spirit, 456; break; case Job_Assassin: set .@spirit, 457; break; case Job_Blacksmith: set .@spirit, 458; break; case Job_Hunter: set .@spirit, 460; break; case Job_Soul_Linker: set .@spirit, 461; break; default: if ( upper == 1 && baselevel < 70 ) set .@spirit, 494; } if ( .@spirit ) { sc_start4 sc_spirit, 360000, 5, .@spirit,0,0; skilleffect .@spirit, 5; } end; }
add this to your npc/custom/ .. ...
- 1
-
prontera,156,178,5 script ldfhsdfkljs 100,{ if ( getpetinfo(PET_CLASS) ) { mes "please return your pet into egg state to continue"; close; } getinventorylist; for ( .@i = 0; .@i < @inventorylist_count; .@i++ ) { if ( @inventorylist_card1[.@i] == -256 ) { query_sql "select intimate, class, level, equip, name from pet where pet_id = "+( .@id = @inventorylist_card2[.@i] + ( ( @inventorylist_card2[.@i] >= 0 )? 0 : 1 << 16 ) + @inventorylist_card3[.@i] * ( 1 << 16 ) ), .@intimate, .@class, .@level, .@equipped, .@name$; if ( .@intimate > .pet_min_friendly ) { .@menu$ = .@menu$ +"^0000FF"+ .@name$ +" ^00CC00{"+ getmonsterinfo( .@class, 0 ) +"} ^000000["+ .@level +"] ^FF0000"+( ( .@equipped )? "*equipped" : "" )+":"; .@pet_id[.@c] = .@id; .@egg_id[.@c] = @inventorylist_id[.@i]; .@pet_name$[.@c] = .@name$; .@pet_class[.@c] = .@class; .@pet_level[.@c] = .@level; .@pet_equipped[.@c] = .@equipped; .@c++; } } } if ( !.@c ) { mes "your inventory doesn't have any pet egg that intimate enough"; close; } mes "select which pet that you want it to evolve"; next; .@s = select( .@menu$ ) -1; mes "selected : "+ .@pet_name$[.@s]; mes "level : "+ .@pet_level[.@s]; mes "equipped : "+( ( .@pet_equipped[.@s] )? "Yes" : "No" ); if ( getd( ".petr"+ .@pet_class[.@s] ) ) { mes "require :-"; .@size = getarraysize( getd( ".petr"+ .@pet_class[.@s] ) ); for ( .@i = 0; .@i < .@size; .@i += 2 ) mes getd( ".petr"+ .@pet_class[.@s] +"["+( .@i +1 )+"]" )+"x "+ getitemname( getd( ".petr"+ .@pet_class[.@s] +"["+ .@i +"]" ) ); } next; if ( !getd( ".pet"+ .@pet_class[.@s] ) ) { mes "this pet cannot evolve any further"; close; } if ( .@pet_level[.@s] < .min_level ) { mes "this pet doesn't meet the level requirement"; close; } if ( .@pet_equipped[.@s] ) { mes "please unequip this pet accesory to continue"; close; } if ( getd( ".petr"+ .@pet_class[.@s] ) ) { .@size = getarraysize( getd( ".petr"+ .@pet_class[.@s] ) ); for ( .@i = 0; .@i < .@size; .@i += 2 ) { if ( countitem( getd( ".petr"+ .@pet_class[.@s] +"["+ .@i +"]" ) ) < getd( ".petr"+ .@pet_class[.@s] +"["+( .@i +1 )+"]" ) ) { mes "you need "+ getd( ".petr"+ .@pet_class[.@s] +"["+( .@i +1 )+"]" ) +"x "+ getitemname( getd( ".petr"+ .@pet_class[.@s] +"["+ .@i +"]" ) ) +" to evolve this pet"; close; } } for ( .@i = 0; .@i < .@size; .@i += 2 ) delitem getd( ".petr"+ .@pet_class[.@s] +"["+ .@i +"]" ), getd( ".petr"+ .@pet_class[.@s] +"["+( .@i +1 )+"]" ); } delitem2 .@egg_id[.@s], 1, 1, 0, 0, -256, ( .@pet_id[.@s] % ( 1 << 16 ) - ( .@remainder15 = .@pet_id[.@s] % ( 1 << 15 ) ) < ( 1 << 15 ) )? .@remainder15 : ( .@remainder15 - ( 1 << 15 ) ), .@pet_id[.@s] >> 16, 0; makepet .@get_pet_id = getd( ".pet"+ .@pet_class[.@s] +"["+ rand( getarraysize( getd( ".pet"+ .@pet_class[.@s] ) ) ) +"]" ); mes "your "+ .@pet_name$[.@c] +" has reborn into "+ getmonsterinfo( .@get_pet_id, 0 ); mes "please rename your pet ~"; close; OnInit: .min_level = 80; // minimum level 80 to change pet egg .pet_min_friendly = 900; // setarray getd( ".petr"+ <require pet egg> ), <require itemID 1>, <require item require 1>, <require itemID 2>, <require item require 2>, ... setarray getd( ".petr"+ 1031 ), 501,1, 502,2, 503,10; // setarray getd( ".pet"+ <require pet egg> ), <random pet egg 1>, <random pet egg 2> .... setarray getd( ".pet"+ 1031 ), 1063; // poring pet(1002) can evolve into drops(1113) or poporing(1031) // add more as needed end; }
used @AnnieRuru's script but it always says your inventory doesn't have any pet egg that intimate enough how to fix this?
-
-
setarray .@indices[1], EQI_HEAD_TOP, EQI_ARMOR, EQI_HAND_L, EQI_HAND_R, EQI_GARMENT, EQI_SHOES, EQI_ACC_L, EQI_ACC_R, EQI_HEAD_MID, EQI_HEAD_LOW;
like the script of the refining NPC where the menu will be your current equipment..
when EQI_HEAD_TOP is picked = only STR runes are available on headgears,,
when EQI_ARMOR is picked = only AGI runes are available on armors
when EQI_HAND_L (SHIELD) only VIT runes are available on shield -- and checks if the equipped is shield and not weapons
-
1 hour ago, botka4aet said:
Case 1: -> Case 7:
you can add
Strength(old case!) to EQI_ARMOR (7<-----) - Armor (jackets, robes)
can you show me the full script? i tried it but the cases are dependent on the setarray .EquipID[0] which means if i put armor on the 7th slot on .EquipID[0] it will work.. but the prob is its limited on 1 armor only ( cotton shirts) and can't add more..
what i need is.. when you talked to the NPC.. switch(select your current equipment . and when you pick like example a headgear.. it will go case 1 of the rune.. if shield it will go case 2; .. id like to enchant any armors too and not dependent on the setarray
-
1 hour ago, botka4aet said:
switch( select( "Strength:Intelligent:Dexterity:Agility:Vitality:Luck" )){
to
switch( getiteminfo(.EquipID[.@Equip],10)){
And change case to correct number according this
EQI_COMPOUND_ON (-1) - Item slot that calls this script (In context of item script) EQI_ACC_L (0) - Accessory 1 EQI_ACC_R (1) - Accessory 2 EQI_SHOES (2) - Footgear (shoes, boots) EQI_GARMENT (3) - Garment (mufflers, hoods, manteaux) EQI_HEAD_LOW (4) - Lower Headgear (beards, some masks) EQI_HEAD_MID (5) - Middle Headgear (masks, glasses) EQI_HEAD_TOP (6) - Upper Headgear EQI_ARMOR (7) - Armor (jackets, robes) EQI_HAND_L (8) - Left hand (weapons, shields) EQI_HAND_R (9) - Right hand (weapons) EQI_COSTUME_HEAD_TOP (10) - Upper Costume Headgear EQI_COSTUME_HEAD_MID (11) - Middle Costume Headgear EQI_COSTUME_HEAD_LOW (12) - Lower Costume Headgear EQI_COSTUME_GARMENT (13) - Costume Garment EQI_AMMO (14) - Arrow/Ammunition EQI_SHADOW_ARMOR (15) - Shadow Armor EQI_SHADOW_WEAPON (16) - Shadow Weapon EQI_SHADOW_SHIELD (17) - Shadow Shield EQI_SHADOW_SHOES (18) - Shadow Shoes EQI_SHADOW_ACC_R (19) - Shadow Accessory 2 EQI_SHADOW_ACC_L (20) - Shadow Accessory 1
this one?
setarray .EquipID[0],2301,2302,2303,2304,2305,2306,2307,2308,2309,2310;
or this one?
switch( getiteminfo(.EquipID[.@Equip],10)){ Case 1: setarray .RuneID[0],4700,4701,4702,4703,4704,4705,4706,4707,4708,4709; break; Case 2: setarray .RuneID[0],4710,4711,4712,4713,4714,4715,4716,4717,4718,4719; break; Case 3: setarray .RuneID[0],4720,4721,4722,4723,4724,4725,4726,4727,4728,4729; break; Case 4: setarray .RuneID[0],4730,4731,4732,4733,4734,4735,4736,4737,4738,4739; break; Case 5: setarray .RuneID[0],4740,4741,4742,4743,4744,4745,4746,4747,4748,4749; break; Case 6: setarray .RuneID[0],4750,4751,4752,4753,4754,4755,4756,4757,4758,4759; break;
-
i tried this and having the same results.. can someone fix this script? or explain how to use it
-
@Haruka Mayumi if you have time to spare kindly check this thanks
prontera,155,181,5 script Sample 757,{ mes "Which Armor you want to Enchant ?"; mes "Make sure there is no Card / Rune in it."; next; setarray .EquipID[0],2301,2302,2303,2304,2305,2306,2307,2308,2309,2310; for( set .@i,0; .@i < getarraysize( .EquipID ); set .@i,.@i + 1 ) set .@EquipMenu$,.@EquipMenu$ + getitemname( .EquipID[.@i] )+( !getitemslots(.EquipID[.@i])?"":"["+getitemslots(.EquipID[.@i])+"]" )+":"; set .@Equip,select( .@EquipMenu$ ) - 1; if( !countitem( .EquipID[.@Equip] ) ){ mes "You didnt have this Equipment with you."; close; } mes "Equipment : ^FF0000"+getitemname( .EquipID[.@Equip] )+"^000000"; switch( select( "Strength:Intelligent:Dexterity:Agility:Vitality:Luck" )){ Case 1: setarray .RuneID[0],4700,4701,4702,4703,4704,4705,4706,4707,4708,4709; break; Case 2: setarray .RuneID[0],4710,4711,4712,4713,4714,4715,4716,4717,4718,4719; break; Case 3: setarray .RuneID[0],4720,4721,4722,4723,4724,4725,4726,4727,4728,4729; break; Case 4: setarray .RuneID[0],4730,4731,4732,4733,4734,4735,4736,4737,4738,4739; break; Case 5: setarray .RuneID[0],4740,4741,4742,4743,4744,4745,4746,4747,4748,4749; break; Case 6: setarray .RuneID[0],4750,4751,4752,4753,4754,4755,4756,4757,4758,4759; break; } for( set .@i,0; .@i < getarraysize( .RuneID ); set .@i,.@i + 1 ) set .@RuneMenu$,.@RuneMenu$ + getitemname( .RuneID[.@i] )+":"; set .@Rune,select( .@RuneMenu$ ) - 1; mes "Rune : ^FF0000"+getitemname( .RuneID[.@Rune] )+"^000000"; next; if( select("Confirm:Cancel") == 1 ){ if( !countitem( .RuneID[.@Rune] ) ){ mes "Sorry you didnt have the "+getitemname( .RuneID[.@Rune] )+" with you."; }else{ delitem .EquipID[.@Equip],1; delitem .RuneID[.@Rune],1; getitem2 .EquipID[.@Equip],1,1,0,0,0,0,0,.RuneID[.@Rune]; mes "Done."; mes "^0000FF"+getitemname( .EquipID[.@Equip] )+"^000000"; mes "Enchanted with ^FF0000"+getitemname( .RuneID[.@Rune] )+"^000000"; } } close; }
what i need now is the seperation from equips.. example the setarray on case 1 runes can only be inserted on shields..
case 2 setarray can only be inserted on footgears and so on.. also i need a enchant remover that gives back the enchant runes and cards inserted on the equipment
thankyou
-
a NPC that enchants orbs depending on equipment..
you need a specific orb on a specific armor..
example : Armor - only STR orbs can be inserted ( Str + 1 to Str + 10) there will be a menu here
Garment - only DEX orbs can be inserted
with Zeny cost and 100% success rate,,
Armor,Shield,garment,footgears,accessories,upper,middle,lower and lvl 4 weapons only
and retains refine equips
orrr -- if its possible let's say Str + 1 Orb can be doubled click and a function will pop up.. on which armor do you want to insert?
thankyou in advance
-
9 hours ago, TheDerpySupport said:
Sadly not, You could simply use the shadow equipment headgear slots for this though.
oh i see.. thanks anyways.. ill just use HAT_EF for this
-
is there a way to show sprites on equiping accessories?? example lhz_aura
i tried using its sprite id
24369,S_Restore_Pendant,Restore Shadow Pendant,12,0,,0,,,,0,0xFFFFFFFE,63,2,2097152,,1,1,2069,{},{},{}
didnt work
-
Character Name Change Coupon Item ID# 12790
Use this item to change your character's name on the Character Select menu.
After using this item you must logout to the Character Select menu and Right-Click on your character and choose 'Change Name'
You can then enter a new name as long as it is not already taken.
You must leave your current guild and/or party before changing your name.
You can use this item once and it is account boundcan we use this for title purposes
example: killing 100 porings will give you a title of Poringslayer
there would be a dialogue : mes "do you want to use the title Poringslayer? , you'll be logged out of the game if you click OK"
then copies strcharinfo.. - [PoringSlayer]"+strcharinfo+" idunno if this will do.. bc as said on the item description you must leave guild and party
-
it will be a huge help if you plan to release this .. thanks in advance if you changed your mind..
bro .. i hope you'll release it.. sooner =(
if not.. maybe someone can do this for free
-
Emp break = 5 apples
all Players inside the setarray of castles ( active castles ) - (except the castle owner) recieves 1 apple per minute ( configurable )
all players on the guild that owns the castle will recieve 2 apples per minute
onAgitEnd .. after a countdown of 5 secs will recall the guild who owns the castle and gives them a reward of 10apples per player..
and summons 5 MVPs on the castle at random coordinates ( MVP auto dies 1minute before next WOE session )
add a checker for non guild owners who enter's the active castle and kick them out of the castle ( effective till next WOE session )
add a @command like example @guild with switch select from the setarray of castles.. ( you can only warp on the castle your guild owns ) ( add ownership on the menu )
example : kriemhild - apple guild
: castle 2 - poring guild
staying on the castle you owned after WOE .. gives you guildpoints .. this will be used to buy something from a shop
that all thankyou so much in advance!! keep up the good work rathena , more power and god bless
-
22 minutes ago, Haruka Mayumi said:
*checkoption(<option number>{,<char_id>}) *checkoption1(<option number>{,<char_id>}) *checkoption2(<option number>{,<char_id>}) *setoption <option number>{,<flag>{,<char_id>}}; The 'setoption' series of functions check for a so-called option that is set on the invoking character. 'Options' are used to store status conditions and a lot of other non-permanent character data of the yes-no kind. For most common cases, it is better to use 'checkcart','checkfalcon','checkriding' and other similar functions, but there are some options which you cannot get at this way. They return 1 if the option is set and 0 if the option is not set. Option numbers valid for the first (option) version of this command are: 0x1 - Sight in effect. 0x2 - Hide in effect. 0x4 - Cloaking in effect. 0x8 - Cart number 1 present. 0x10 - Falcon present. 0x20 - Peco Peco present. 0x40 - GM Perfect Hide in effect. 0x80 - Cart number 2 present. 0x100 - Cart number 3 present. 0x200 - Cart number 4 present. 0x400 - Cart number 5 present. 0x800 - Orc head present. 0x1000 - The character is wearing a wedding sprite. 0x2000 - Ruwach is in effect. 0x4000 - Chasewalk in effect. 0x8000 - Flying or Xmas suit. 0x10000 - Sighttrasher. 0x100000 - Warg present. 0x200000 - The character is riding a warg.
Grandcross is an AoE skill will most likely fail if it doesn't have stats not like sight thrasher.. you need target skills
orayt thanks again.. ill just add targeted skills .. muaaaah
-
@Haruka Mayumi how to make it so. that it detects a player cloaking or hiding or in chase walk.. so it will cast ruwach and heaven's drive.. tried adding ruwach and heavens drive.. but heaven's drive misses
maybe the npc has to have stats ..
grandcross skill doesnt work also
-
4 hours ago, Haruka Mayumi said:
prontera,155,170,3 script Tamadora 10110,3,3,{ end; OnTouch_: if(gettime(DT_HOUR) < 7) end; // 7AM Onwards if(!.Active){ initnpctimer; .Active = 1; .CFail = 0; } end; OnTimer1000: getmapxy(.@map$,.@x,.@y,BL_NPC); .@c = getareaunits(BL_PC,.@map$,[email protected],[email protected],.@x+.Cells,.@y+.Cells,.@aid); if(!.@c){ if(++.CFail>=.Fail){ stopnpctimer; .Active = 0; end; } initnpctimer; end; } if(.CurrentCD >= .Countdown){ .@idx = rand(getarraysize(.ItemDrop)); makeitem .ItemDrop[.@idx],.ItemAmt[.@idx],.@map$,rand([email protected],.@x+.Cells),rand([email protected],.@y+.Cells); } if(.Countdown-.CurrentCD <= 0) .CurrentCD = 0; if(.CurrentCD%3==0){ for(.@i=0;.@i<.@c;.@i++){ .@idx2 = rand(getarraysize(.SkillID)); unitskilluseid getnpcid(0),.SkillID[.@idx2],.SkillLV[.@idx2],.@aid[.@i],-1; } showscript "~ < "+(.Countdown-.CurrentCD++)+" > ~",getnpcid(0),AREA; sleep 1000; } showscript "~ < "+(.Countdown-.CurrentCD++)+" > ~",getnpcid(0),AREA; npcwalkto rand(.XY[0],.XY[2]),rand(.XY[1],.XY[3]); initnpctimer; end; OnInit: .Countdown = 120; //seconds .Fail = 3; //3 seconds .Cells = 5; //3 Cells Away npcspeed 150; setarray .XY[0],150,175,160,165; setarray .ItemDrop[0],7929; setarray .ItemAmt[0],1; setarray .SkillID[0],489,16,29,30,34; setarray .SkillLV[0],15,20,10,10,10; end; }
this is better than i expected.. love it.. !! thanks a lot
EDIT:
Cute NPC sprite and name !! =D
-
@Haruka Mayumi here's the request - the concept is like when players are on the PVP room.. they have to defend the NPC spot like maybe 3 cells SQUARE . if there are no players on the 3 cells square.. the countdown timer will stop..
2minutes = countdown
noplayer near the npc = countdown stops
on2minutes - 1 7929 will drop ( configurable on how many pcs will drop )
and if it's possible ,, The NPC casts Tarot Card of fate on the nearby players on the 3cell square every 3secs
-
How to trigger this setarray?
in Scripting Support
Posted
setarray .@indices[1], EQI_HEAD_TOP, EQI_ARMOR;
i tried but failed
setarray .@indices[1], ""+EQI_HEAD_TOP+"::OnHead", ""+EQI_ARMOR+"::OnArmor";
so it when a headgear is picked it will go on the OnHead Label.. if Armor is picked it will go OnArmor Label