Jump to content

Jarek

Members
  • Posts

    143
  • Joined

  • Last visited

  • Days Won

    2

Everything posted by Jarek

  1. Are you sure that you add custom maps "trinity" and "disco" properly? I think that's problem, when your server tried to create npc object on non-existing map and then tried to disable\enable non-existing npc.
  2. Jarek

    Skill_Database

    status.c if(sc->data[SC_HARMONIZE]) { str -= sc->data[SC_HARMONIZE]->val2; return (unsigned short)cap_value(str,0,USHRT_MAX); } if(sc->data[SC_HARMONIZE]) { agi -= sc->data[SC_HARMONIZE]->val2; return (unsigned short)cap_value(agi,0,USHRT_MAX); }etcChange "-=" to "+="
  3. pc.c if( map[m].flag.src4instance && sd->status.party_id && (p = party_search(sd->status.party_id)) != NULL && p->instance_id ) { // Request the mapid of this src map into the instance of the party int im = instance_map2imap(m, p->instance_id); if( im < 0 ) ; // Player will enter the src map for instances else { // Changes destiny to the instance map, not the source map m = im; mapindex = map_id2index(m); } }
  4. This is wrong. In this part server will check GM's weight, not player.Need to attach to each player for check weight like: while( .@V < $PlayerNumber ){ set .@V,.@V+1; message getd("$RecordAID"+.@V),"[[[ System ]]] : "+.@itemtoonlineplayers" give you "+getitemname(.@item)+"x"+.@inum; attachrid(getd("$RecordAID"+.@V)); if(checkweight(.@item,.@inum)) getitem .@item,.@inum,getd("$RecordAID"+.@V); else message getd("$RecordAID"+.@V),"You are Overweight!"; }
  5. db\re\skill_cast_db.txt Find skill and edit last column
  6. Jarek

    max lvl

    http://rathena.org/board/topic/75134-no-experience-gained-when-level-99/#entry160785
  7. 1) Need to see your script to fix the error. 2)replace guildopenstorage(0)withguildopenstorage()
  8. I dunno how to fix it, but you can double click on it and rename
  9. I think there is a typo. Must be ',' instead of '.' in line
  10. Oops, my bad.1454: Установлен цвет '%s'.
  11. Updated map_msg_rus (r17317) http://pastebin.com/U9X69JyA
  12. 1) usercount replace set .@output$, .@output$ + ((.@enable)?(.@nodeName$ +((.showNodeUserCount)?(" [^0000FF" + .@userCount + "^000000]"):"")):""); with set .@output$, .@output$ + ((.@enable)?(.@nodeName$ +((.showNodeUserCount && (getgmlevel()==99))?(" [^0000FF" + .@userCount + "^000000]"):"")):""); 2)zeny replace set Zeny, Zeny - .@cost; with set @price, 1000*(BaseLevel<30?0:BaseLevel<60?1:BaseLevel<80?2:3); if (Zeny<@price){ mes "Not enough Zeny"; close; } set Zeny, Zeny - @price; P.S.: Namaste, если еще будут вопросы по теме - пиши сразу в личку (=
  13. Here you go: 1) npc never disappeared because wrong line "set 674,4;" - fixed 2) changed event time from 5min to 10min //= Poring Catcher - Auto Event Script //===== By: ================================================================================ //= Washi - www.EarthBound-RO.com //===== Compatible With: ==================================================================== //= Any eAthena Version //===== Description: ======================================================================== //= Single NPC that starts automatically starts every hour. //===== Additional Comments: ================================================================ //= This script is a combenation of the Dice Event by [Mahina] //= and the origonal Poring Catcher Event by [Wild Karrd] //================================================================================ //=========== //= OnMinute - Change this to the minute you would like this script to load. [ LINE 22 ] //= getitem - Change this to the Item ID of your prize. [ LINE 118 ] //================================================================================ //=========== - script poring#announcer -1,{ OnInit: disablenpc "Poring Catcher Warper"; hideonnpc "Poring Catcher#evnt2"; end; OnMinute30: // SET THE 30 TO THE MINUTE YOU WANT THE EVENT TO START EACH HOUR. OnGMStart: announce "Poring Catcher : انه الوقت للعب البحث عن البورينج",0; killmonster "poring_w01","All"; sleep2 10000; announce "Poring Catcher : توجه الي برونتيرا اذا كنت تريد التسجيل",0; sleep2 10000; announce "Poring Catcher : بعد دقيقة 1 سوف يتوقف التسجيل",0; sleep2 10000; announce "Poring Catcher : ادخل البوابة الان اذا كنت تريد الدخول",0; enablenpc "Poring Catcher Warper"; initnpctimer; end; OnTimer30000: announce "Poring Catcher : تبقي 30 ثانية علي نهاية التسجيل",0; sleep2 5000; announce "Poring Catcher : توجه الي بورنتيرا سريعا للدخول",0; end; OnTimer50000: announce "Poring Catcher : تبقي 10 ثواني",0; end; OnTimer55000: announce "Poring Catcher : 5.",0; end; OnTimer56000: announce "Poring Catcher : 4.",0; end; OnTimer57000: announce "Poring Catcher : 3.",0; end; OnTimer58000: announce "Poring Catcher : 2.",0; end; OnTimer59000: announce "Poring Catcher : 1.",0; end; OnTimer60000: announce "Poring Catcher : انتهي الوقت",0; end; OnTimer61000: disablenpc "Poring Catcher Warper"; donpcevent "Poring Catcher#evnt2::OnEnable"; stopnpctimer; end; } prontera,147,165,0 warp Poring Catcher Warper 0,0,poring_w01,106,129 //-------------------------------------------------- pvp_n_4-5,101,96,6 script Poring Catcher 909,{ if (getgmlevel()<50) { player_here: mes "^FF0000[Poring Catcher Schedule]^000000"; mes "^0000FF[ 00:30AM ]^000000"; mes "^0000FF[ 04:30AM ]^000000"; mes "^0000FF[ 08:30AM ]^000000"; mes "^0000FF[ 12:30PM ]^000000"; mes "^0000FF[ 04:30PM ]^000000"; mes "^0000FF[ 08:30PM ]^000000"; next; mes "^FF0000[Poring Catcher]^000000"; mes "Current Prize:"; mes "----------------------"; mes "^008000"+$rewardamount+" "+getitemname($rewarditem)+"s"; close; } gm_only: if (getgmlevel() < 80) goto player_here; mes "^FF0000Poring Catcher Warper^000000"; mes "Yes, master?"; mes "What can I do for you today, master?"; next; switch(select("Start Event:Stop Event:Check Prize:Set Prize:Nothing")) { case 1: next; mes "^FF0000Poring Catcher^000000"; mes "Hello, GM ^008000"+strcharinfo(0)+"^000000!"; mes "Do you want to start the event?"; next; switch(select("Yes:Leave")) { case 1: next; mes "^FF0000Poring Catcher^000000"; mes "Here we go!"; close2; announce "GM "+strcharinfo(0)+" has started the Poring Catcher Event!",0; sleep 2000; donpcevent "poring#announcer::OnGMStart"; end; case 2: next; mes "^FF0000Poring Catcher^000000"; mes "Ok, nothing changed!"; close; } case 2: next; mes "^FF0000Poring Catcher^000000"; mes "Hello, GM ^008000"+strcharinfo(0)+"^000000!"; mes "Do you want to stop the event?"; mes " "; mes "^FF0000Note that you can only stop the event if it is already starting."; mes "If the event is still on the giving of directions, it couldn't be stopped!^000000"; next; switch(select("Yes:No")) { case 1: next; mes "^FF0000Poring Catcher^000000"; mes "Close this window to stop the event!"; close2; goto stopbygm; case 2: next; mes "^FF0000Poring Catcher^000000"; mes "Ok, nothing changed!"; close; } case 3: next; mes "^FF0000Poring Catcher^000000"; mes "Current Prize :"; mes "-------------------"; mes "^008000"+$rewardamount+" "+getitemname($rewarditem)+"s"; next; goto gm_only; case 4: next; mes "^FF0000Poring Catcher^000000"; mes "What will be the new reward?"; input .@itemid; if (getitemname(.@itemid) == "null" || getitemname(.@itemid) == "") {next; mes "^FF0000Poring Catcher^000000"; mes "The item is not found in the database.."; next; goto gm_only; } set $rewarditem, .@itemid; next; mes "^FF0000Poring Catcher^000000"; mes "How many ^008000"+getitemname($rewarditem)+"s^000000 should we give?"; input .@itemamount; if(.@itemamount <= 0) {next; mes "^FF0000Poring Catcher^000000"; mes "Please input a # greater than 0"; next; goto gm_only; } set $rewardamount,.@itemamount; next; mes "^FF0000Poring Catcher^000000"; mes "So, the winner will get ^008000"+$rewardamount+" "+getitemname($rewarditem)+"s"; next; goto gm_only; case 5: next; mes "^FF0000Poring Catcher^000000"; mes "Nothing Changed!"; close; } stopbygm: stopnpctimer; killmonster "poring_w01","All"; announce "Poring Catcher Event was stopped by GM "+strcharinfo(0)+"!",0; sleep 2000; mapwarp "poring_w01","prontera",149,160; end; } //-------------------------------------------------- poring_w01,100,127,4 script Poring Catcher#evnt2 715,{ //-------------------------------------------------- mes "[المهرج]"; if(PORING == 1) goto L_PORING; mes "تعال و قل لي اسمك"; next; input .@name$; if(.@name$ != strcharinfo(0)) { mes "[المهرج]"; mes "هل انت متئكد ان هذا اسم شخصيتك ؟"; close; } mes "[المهرج]"; mes "اذهب الي منزلك"; close2; announce "Poring Catcher : الكل يضحك , "+.@name$+". - هذا اللاعب حاول غش النظام",0; warp "prontera",155,177; end; L_PORING: mes "تعال و قل لي اسمك"; next; input .@name$; if(.@name$ != strcharinfo(0)) { mes "[المهرج]"; mes "هل انت متئكد ان هذا اسمك ؟"; close; } mes "[Poring Catcher]"; mes "مبروك لقد فذت"; close2; if (getitemname($rewarditem) == "null"){ set $rewarditem, 674; set $rewardamount, 4; } announce "Poring Catcher : لدينا فائذ, "+.@name$+". with "+$rewardamount+" "+getitemname($rewarditem)+"s",0; getitem $rewarditem, $rewardamount; // SET THE 20085 TO THE ITEM ID OF YOUR PRIZE warp "prontera",155,177; hideonnpc "Poring Catcher#evnt2"; end; OnEnable: mapannounce "poring_w01","Poring Catcher : في 5 دقائق . سوف استدعي 100 بورينج مختلف",0; initnpctimer; sleep2 10000; mapannounce "poring_w01","Poring Catcher : واحد فقط فيهم هو الحقيقي",0; sleep2 10000; mapannounce "poring_w01","Poring Catcher : الحقيقي اسمه [ Poring ] و الباقي جميهم مزورين",0; sleep2 10000; mapannounce "poring_w01","Poring Catcher : اذا قتلت البورينج الخاطء سوف يتم طردك من اللعبة",0; sleep2 10000; mapannounce "poring_w01","Poring Catcher : أول من يقتل البورينج الحقيقي هو الفائذ",0; sleep2 10000; mapannounce "poring_w01","Poring Catcher : هذا فقط هيا بنا نبدء .",0; goto L_Start; end; OnTimer570000: mapannounce "poring_w01","Poring Catcher : الوقت يمر . تبقي 30 ثانية",0; end; OnTimer600000: stopnpctimer; mapannounce "poring_w01","Poring Catcher : انتهي الوقت لم يجد احد البورينج الحقيقي",0; atcommand "@doommap"; killmonster "poring_w01","All"; sleep 3000; mapwarp "poring_w01","prontera",155,177; end; L_Start: mapannounce "poring_w01","Poring Catcher : 5",0; sleep2 1000; mapannounce "poring_w01","Poring Catcher : 4",0; sleep2 1000; mapannounce "poring_w01","Poring Catcher : 3",0; sleep2 1000; mapannounce "poring_w01","Poring Catcher : 2",0; sleep2 1000; mapannounce "poring_w01","Poring Catcher : 1",0; sleep2 1000; mapannounce "poring_w01","Poring Catcher : سوف نبدء الان",0; areamonster "poring_w01",84,119,121,90,"Poring",1002,1,"poringwin::OnMobKilled"; areamonster "poring_w01",84,119,121,90,"Pouring",1002,20,"poringlose::OnMobKilled"; areamonster "poring_w01",84,119,121,90,"Proing",1002,20,"poringlose::OnMobKilled"; areamonster "poring_w01",84,119,121,90,"Poiring",1002,20,"poringlose::OnMobKilled"; areamonster "poring_w01",84,119,121,90,"Poing",1002,20,"poringlose::OnMobKilled"; areamonster "poring_w01",84,119,121,90,"Porning",1002,20,"poringlose::OnMobKilled"; areamonster "poring_w01",84,119,121,90,"PoriNg",1002,20,"poringlose::OnMobKilled"; areamonster "poring_w01",84,119,121,90,"Porong",1002,20,"poringlose::OnMobKilled"; areamonster "poring_w01",84,119,121,90,"P0ring",1002,10,"poringlose::OnMobKilled"; areamonster "poring_w01",84,119,121,90,"Por1ng",1002,10,"poringlose::OnMobKilled"; areamonster "poring_w01",84,119,121,90,"Porng",1002,1,"poringlose::OnMobKilled"; end; } - script poringwin -1,{ OnMobKilled: dispbottom "Poring : مبروك لقد نلت مني ^^"; set PORING,1; atcommand "@doommap"; killmonster "poring_w01","All"; mapannounce "poring_w01","Poring Catcher : تعال و قل لي أسمك",0; hideoffnpc "Poring Catcher#evnt2"; end; } - script poringlose -1,{ OnMobKilled: dispbottom "Poring Catcher : واهاهاه. يا لك من فاشل - انا لست البورينج الحقيقي"; warp "prontera",155,177; end; } // -- Mapflags poring_w01 mapflag nowarp poring_w01 mapflag nowarpto poring_w01 mapflag noteleport poring_w01 mapflag nosave poring_w01 mapflag nomemo poring_w01 mapflag nobranch poring_w01 mapflag noloot poring_w01 mapflag noskill poring_w01 mapflag nopenalty
  14. @price = 1000*(BaseLevel<30?0:BaseLevel<60?1:BaseLevel<80?2:3); if (Zeny<@price) { mes "not enough Zeny"; close; } Zeny -= @price;free for < 30lvl1k zeny for 30<lvl<60 2k for 60<lvl<80 3k for higher
  15. Jarek

    WoE

    You need to "Add Session" for every day before pushing "Generate Script"
  16. Yes 00:00 , 01:00, 02:00, ... , 23:00
  17. replace set #CASHPOINTS, #CASHPOINTS + 50; // Change This item id to what ever you want . item id,amount dispbottom "+50 HPRO Point";withgetitem 674,4; // Change This item id to what ever you want . item id,amount dispbottom "+4 Mithril Coin"; this can be more easy, justOnMinute00:
  18. if ( s_bl->type == BL_PC && t_bl->type == BL_MOB ) { struct map_session_data *sd = BL_CAST(BL_PC, s_bl); struct mob_data *md = BL_CAST(BL_MOB, t_bl); if ( ( ( md->class_ == 1288 || md->class_ == 1905 ) && !strcmp( mapindex_id2name(sd->mapindex), "arug_que01" ) ) && ( sd->status.guild_id == mapreg_readreg( add_str("$koegid") ) || battle_getcurrentskill(src) > 0 ) ) switch(battle_getcurrentskill(src)){ case AL_PNEUMA: case MG_SAFETYWALL: case PR_SANCTUARY: //add more skill here break; default: return 0; } }
  19. http://www.eathena.ws/board/index.php?showtopic=95631&view=findpost&p=657937
  20. Oh r13106 But if you will not find other way to create safe area you can implement cell_basilica again using changeset
  21. Jarek

    Map Flags

    Check skill restrictions in db\<pre->re\skill_nocast_db.txt
×
×
  • Create New...