Jump to content

vijay

Members
  • Content Count

    76
  • Joined

  • Last visited

  • Days Won

    1

Everything posted by vijay

  1. Okay ill give it a try. Winterfox i did add the bindatcmd from a diff now. bindatcmd diff: http://pastebin.com/5TqdF1pn After when i load up your npc, i'm not even able to @monster any of monsters(which are not on the mob_restriction). Map server says [Warning]: script:implode: array length = 0 How to fix this issue?
  2. Thanks for helping Winterfox. Here are the error when i load the npc: [Error]: script error on npc/wowro/mobrestriction.txt line 5 parse_line: expect command, missing function name or calling undeclared func tion 1 : { 2 : OnInit: 3 : setarray .mob_restriction$, 1646, 1647, 1648, 1649, 1650 , 1651, 1751, 1708; 4 : set .size, getarraysize( .mob_restriction$ ); * 5 : 'b'indatcmd "monster", strnpcinfo( 3 ) + "::OnExe", 0, 9 9; 6 : end; 7 : 8 : OnExe: 9 : if ( compare( implode( .@mob_restriction$, ":" ), .@atc md_parameters$[0] ) || getgmlevel() < 90 ) { 10 : dispbottom "You cannot summon this monster";
  3. Can anyone please help by converting the script below to work on eAthena 3CeAm! - script Strict -1,{ OnInit: setarray .mob_restriction[0],1646,1647,1648,1649,1650,1651,1751,1708; .size = getarraysize(.mob_restriction); bindatcmd "monster",strnpcinfo(3)+"::OnExe",0,99; end; OnExe: .monster_id = atoi( .@atcmd_parameters$[0] ); for ( .@i = 0; .@i < .size; .@i++ ) { if ( .monster_id == .mob_restriction[.@i] || getgmlevel() < 90 ) { dispbottom "You cannot summon this monster"; end; } } if ( getmonsterinfo( .monster_id, 0 ) != "null" ) { .@amount = atoi( .@atcmd_parameters$[1] ); atcommand "@monster " +.monster_id+ " " +(!.@amount?1:.@amount); } end;}
  4. I found a way myself! function script RefineScroll { set .@menu$,""; for( set .@i,1; .@i <= 10; set .@i,.@i+1 ) { if( getequipisequiped(.@i) ) set .@menu$, .@menu$ + .@position$[.@i] + "-" + "[" + getequipname(.@i) + "]"; set .@menu$, .@menu$ + ":"; } set .@part,select(.@menu$); // ========================= if(!getequipisequiped(.@part)) { getitem 542,1; dispbottom "You're not wearing anything there that refines!"; close; } //Check if the item is refinable... if(!getequipisenableref(.@part)) { getitem 542,1; dispbottom "There is no way that this item could be refined!"; close; } //Check if the item is identified... (Don't know why this is in here... but kept it anyway) if(!getequipisidentify(.@part)) { getitem 542,1; dispbottom "You can't refine this if you haven't appraised it first. Make sure your stuff is identified before refining it."; close; } //Check to see if the items is already +10 if(getequiprefinerycnt(.@part) >= 10) { getitem 542,1; dispbottom "I can't refine this any more. This is as refined as it gets!"; close; } successrefitem .@part; dispbottom "There you go, Refine Scroll works like a charm :D"; close; }}
  5. Hello Hercules. I'm requesting for a item script. It should be a usable item, when we consume, it much show the refineable items such as: Only these items.Head gear.Top gear.Left/Right hand.Boots.Armors.Mufflers. The usable scroll item must refine +1 until the item is +10. If anyone knows a way, please do comment. Thanks!
  6. @@Oxxy thanks, but i wanna do like 100+ items. Here is the full code. UPDATE `storage` SET `nameid`=18546 WHERE `nameid` IN ('22556','3300','3301','3250','3251','22564','22565','22566','22567','22568','22569','22570','22571','22573','22574','22575','22576','22577','22578','22579','22580','22581','22582','22583','22584','22585','22586','22587','22588','22589','22590','22591','22592','22593','22594','22595','22596','22597','22598','22599','22600','22601','22602','22603','22604','22605','22606','22607','22608','22610','22611','22612','22613','22614','22615','22616','22617','22618','22619','22620','22621','22622','22623','22624','22625','22626','22627','22628','22629','22630','22631','22632','22633','22634','22635','22636','22637','22638','22639','22640','22641','22642','22643','22644','22645','22646','22647','22648','22649','22650','22651','22652','22653','22654','22655','22656','22657','22658','22659','22660','22661','22662','22663','22664','22665','22666','22667','22668','22669','22670','22671','22672','22673','22674','22675','22676','22677','22678','22679','22680','22681','22682','22683','22684','22685','22686','22687','22688','22689','22690','22691','22692','22693','22694','22695','22696','22697','22698','22699','22701','22702','22703','22704','3400','3401','3403','3404','3405','3406','3407','3408','3409','3410','3411','3412','3413','3414','3415','3416','3417','3418','3419','3420','3421','3422','3423','3424','3425','3426','3427','3428','3429','3430','3431','3432','3433','3434','3435','3436','3437','3438','3439','3440','3441','3442','3443','3444','3450','3451','3452','3453','3454','3455','3456','3457','3458','3459','3460','3461','3462','3463','3464','3465','3466','3467','3468','3469','3470','3471','3472','3473','3474','3475','3476','3477','3478','3479','3480','3481','3482','3483','3484','3485','3486','3487','3488','3340','3341','3342','3343','3344','3345','3347','3348','3349','3350','3351','3352','3353','3354','3355','3321','3322','3323','3324','3325','3326','3327','3328','3356','3357','3358','3359','3360','3361','3362','3363','3364','3365','3366','3367','3368','3369','3370','3371','18076','18077','18078','18079','18080','18081','3346'); I hope you get my point!
  7. UPDATE `storage` SET `nameid`=18546 WHERE `nameid` IN ('22556','3300','3301','3250','3251','22564'); The above code is not working. I just want to replace 22556','3300','3301','3250','3251','22564 items with 18546. Any help would be grate, thanks!
  8. Fixed by Stolao! - script RoyalWeapon -1,{ OnPCKillEvent: set .@e,getequipid(EQI_HAND_R); if(.@e >= 25621 && .@e <= 25633 && @kill < 10){ set @kill,@kill + 1; message strcharinfo(0),"You got "+@kill+" Kills"; unequip EQI_HAND_R; equip .@e; } end; OnPCDieEvent: set .@e,getequipid(EQI_HAND_R); if(.@e >= 25621 && .@e <= 25633 && @kill < 10){ set @kill, @kill/2; message strcharinfo(0),"You got "+@kill+" Kills"; unequip EQI_HAND_R; equip .@e; } end; } and a suggestion should sinx be able to duel wild any of these gear, i recommend adding a check to the item bonus so if its on the left hand it wont function eg: 1201,Knife,Knife,5,50,,400,17,,1,3,0xFE9F7EEF,7,2,2,1,1,1,1,{ if(getequipid(EQI_HAND_R) >= 25621 && getequipid(EQI_HAND_R) <= 25633 && getequipid(EQI_HAND_L) >= 25621 && getequipid(EQI_HAND_L) <= 25633){ message strcharinfo(0),"Duel Wielding Royal Weapons Disables all Effects"; } else { bonus bStr,1; } },{},{}
  9. I'm really bad with scripts. - script RoyalWeapon -1,{ OnInit: setarray( .@royalWeaponIds, 25621, 25622, 25623, 25624, 25625, 25626, 25627, 25628, 25629, 25630, 25631, 25632, 25633 ); end; OnPCDieEvent: set .@died,1; OnPCKillEvent: for( set .@i,0; .@i < getarraysize( .@royalWeaponIds ); set .@i,.@i + 1 ) { if( getequipid( EQI_HAND_L ) == .@royalWeaponIds[ .@i ] || getequipid( EQI_HAND_R ) == .@royalWeaponIds[ .@i ] ) { .@royalWeaponIds[ .@i ] set .@royalWeaponEquipped,1; break; } } .@royalWeaponEquipped if( !.@royalWeaponEquipped ) end; if( .@died ) if ( @kill > 0 ) set @kill, @kill/2; if( !.@died ) if ( @kill < 10 ) set @kill,@kill + 1; message( strcharinfo(0), "You got " + @kill + " Kills" ); end;} Not working still.
  10. Nothing happens. I dint' even get message( strcharinfo(0), "You got " + @kill + " Kills" ); After killing using the weapon.
  11. Thanks for the script Winterfox. I'm using eAthena 3CeAm final version. I ported to eathena(im not sure if its correct) but idk whats wrong the stats is not adding. - script RoyalWeapon -1,{ OnInit: setarray( .@royalWeaponIds, 25621, 25622, 25623, 25624, 25625, 25626, 25627, 25628, 25629, 25630, 25631, 25632, 25633 ); end; OnPCDieEvent: set .@died,1; OnPCKillEvent: for( set .@i,0; .@i < getarraysize( .@royalWeaponIds ); set .@i,.@i + 1 ) { if( getequipid( EQI_HAND_L ) == .@royalWeaponIds[ .@i ] || getequipid( EQI_HAND_R ) == .@royalWeaponIds[ .@i ] ) { set .@royalWeaponEquipped,1; break; } } if( !.@royalWeaponEquipped ) end; if( .@died == 1 ) if ( @kill > 0 ) set @kill, @kill/2; if( !.@died ) if ( @kill < 10 ) set @kill,@kill + 1; message( strcharinfo(0), "You got " + @kill + " Kills" ); end;} This is the weapon script. 25627,Royal_Deathspade,Royal_Deathspade,4,1000000,10,5,250,,1,4,0x000444A2,7,2,2,4,1,1,7,{ bonus bStr,10+(@kill*7); bonus bAllStats,1+(@kill); bonus2 bIgnoreDefRate,RC_DemiHuman,20+@kill; },{ dispbottom "[Royal Weapon] Your power is strong. Power:"+@kill; misceffect 182; misceffect 190; specialeffect2 543; },{}
  12. Hi Winterfox, I'm using this script! - script RoyalWeapon -1,{ OnPCKillEvent:if(isequipped(25621) || isequipped(25622) || isequipped(25623) || isequipped(25624) || isequipped(25625) || isequipped(25626) || isequipped(25627) || isequipped(25628) || isequipped(25629) || isequipped(25630) || isequipped(25631) || isequipped(25632) || isequipped(25633)) {if ( @kill < 10 ) { set @kill,@kill + 1; message strcharinfo(0),"You got "+@kill+" Kills";}}end; OnPCDieEvent:if(isequipped(25621) || isequipped(25622) || isequipped(25623) || isequipped(25624) || isequipped(25625) || isequipped(25626) || isequipped(25627) || isequipped(25628) || isequipped(25629) || isequipped(25630) || isequipped(25631) || isequipped(25632) || isequipped(25633)) {if ( @kill > 0 ) {set @kill, @kill/2; message strcharinfo(0),"You got "+@kill+" Kills";}}end;}
  13. Hello Hercules people. I'm requesting for a script which much dynamically update stats. I added a OnPCKillEvent, for every kill we make the stats must be increased but the stats wont change unless i unwield and wield any of my equipped item. Is there a way to get the effect without unwielding and wielding my equips? Or can we possible have the users equipped item unwield and wield back on after every kill he/she makes. I even tired adding sc_start SC_BLIND,1,1; After the dynamic stat. But still the stats are not chaining until i wielding my equipped item.. Any help is appreciated. ~Thanks!
  14. Hello Hercules. I'm having problem with unique alt codes such as (¥Üƒ₧£Ö†«» etc). In SQL the char name is showing up properly but in game it turn into Korean or some other fonts like this. I did report this to the host provider and they said its due to the Linux vps but server before that was linux too and everything was fine back then. Please let me know if there is a way to fix this issue. Thanks~
  15. I have a minigame called 3vs3, People they go to char select wile playing 3vs3. I really hate them, all I'm trying to do is to stop them from doing that. So i want to - #DOMINATION once they return back from char select. Here is the script, But its not working and I got no idea why. http://pastebin.com/mdc2qmSL A little heads up would be grate, Thanks! I'm still stuck with 3CeAM eathena btw.
  16. 1>f:******3ceamsrcmapscript.c(4993): warning C4700: uninitialized local variable 'sd' used This line int dom_point = pc_readaccountreg(sd,"#DOMINATION"); //should be at start of the function.
  17. int dom_point = pc_readaccountreg(sd,"#DOMINATION"); //should be at start of the function. //for checking.. if (dom_point>=1){ pc_setaccountreg(sd, script->add_str("#DOMINATION"), dom_point-1); sprintf(out, "Domination Point Reduced by 1"); } I did this but getting a error message. 1>f:*******3ceamsrcmapscript.c(5047): error C2065: 'script' : undeclared identifier 1>f:*******3ceamsrcmapscript.c(5047): error C2223: left of '->add_str' must point to struct/union
  18. Last question Angel. pc_readaccountreg(sd2,"#DOMINATION")<1 is for read After reading it, if he/she has 1 or more than 1 DOMINATION then i want to delete 1. something like this: set #DOMINATION, #DOMINATION- ( 1 ); or pc_setaccountreg(sd2,"#DOMINATION", -1); something like that? Is that possible?
  19. Fixed thanks. But one more question, What if i want to add a item requirement too? Like countitem(18541) < 1 Any idea Angel? Tried this but error and warning. if(sd2 && (pc_checkequip(sd2,"18540")<1 || pc_readaccountreg(sd2,"#DOMINATION")<1 || sd2->status.base_level<200 || sd2->status.class_==JOB_NOVICE || sd2->status.class_==JOB_BABY || sd2->status.class_==JOB_NOVICE_HIGH)){ script_pushint(st, -2); return 0; } Error: 1>f:****srcmapscript.c(5024): warning C4047: 'function' : 'int' differs in levels of indirection from 'char [6]' 1>f:****srcmapscript.c(5024): warning C4024: 'pc_checkequip' : different types for formal and actual parameter 2
  20. Thanks and what about #DOMINATION value must be at lest 1? if(sd2 &&( !pc_readaccountreg(sd2,"#DOMINATION")<1 || sd2->status.base_level<200 || sd2->status.class_==JOB_NOVICE || sd2->status.class_==JOB_BABY || sd2->status.class_==JOB_NOVICE_HIGH)){ Is that alright?
  21. Yea I'm not, I'm still stuck on eathena 3CeAM. Could you help me out please?
  22. Now the line is if(sd2 && (!pc_readaccountreg(sd2,script->add_str("#DOMINATION")<1) || sd2->status.base_level<200 || sd2->status.class_==JOB_NOVICE || sd2->status.class_==JOB_BABY || sd2->status.class_==JOB_NOVICE_HIGH)){ But still I'm getting error wile compiling. 1>f:*******************script.c(5024): error C2065: 'script' : undeclared identifier 1>f:*******************script.c(5024): error C2223: left of '->add_str' must point to struct/union
  23. I want to add a global reg unit and that is #DOMINATION, Its like a points. Player then need have atlest 1 to bypass the script_pushint(st, -2);. Here are the codes. http://pastebin.com/zN3gikWv This is the line i need to add up that #DOMINATION if(sd2 && (sd2->status.base_level<200 || sd2->status.class_==JOB_NOVICE || sd2->status.class_==JOB_BABY || sd2->status.class_==JOB_NOVICE_HIGH)){ script_pushint(st, -2); I tried this but i'm getting errors if(sd2 && (sd2->status.#DOMINATION < 1 || sd2->status.base_level<200 || sd2->status.class_==JOB_NOVICE || sd2->status.class_==JOB_BABY || sd2->status.class_==JOB_NOVICE_HIGH)){ script_pushint(st, -2); Heads up would be grate, Thanks!
×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use.