Jump to content

EL Dragon

Members
  • Posts

    591
  • Joined

  • Last visited

  • Days Won

    19

Everything posted by EL Dragon

  1. do you have the Costume_System_v1.diff ?
  2. my config will not go read.... I have the GRF's in the BrowEdit 2.0 ! Please Help { "resolution" : [ 1920, 1080 ], "data" : { "ropath" : "C:/Users/Denis/Desktop/ro tools/BrowEdit 2.0", "grfs" : [ "C:/Users/Denis/Desktop/ro tools/BrowEdit 2.0/data.grf", "C:/Users/Denis/Desktop/ro tools/BrowEdit 2.0/galaxy.grf" ] }, "moveconsole" : true, "defaultmap" : "prontera" }
  3. http://rathena.org/board/topic/82370-costume-npc-and-costumeitem/
  4. as be called the OnDay Timmer, 've only OnMon found how do the other soory for my bad englisch
  5. when opening the storage , I get this error message I have Kro uptodate can someone please the missing .bmp's uploarden ?
  6. 1. //===== Hourly Points Script ========================================= //===== By: ========================================================== //= GorthexTiger modified by Nibi //===== Current Version: ============================================= //= 1.0 //===== Compatible With: ============================================= //= Any eAthena Version //===== Description: ================================================= //= Get Points every successful hours of gameplay, you cannot get //= the points even if you miss a second or a minute. A player will //= get a very big bonus if they played 3 hours consecutively //= or without logging out of the game. If the player is vending //= the script will then stop. //===== Additional Comments: ========================================= //= You can modify the script to your liking. //= The default points is Kafrapoints change it anyway if you like. //= 1.1 = Check Chatting too //= 1.2 = 5 Minute Idle Check & @at/@autotrade check. //= 1.3 = Corrected the current balance line on 12 Hours Consecutive //==================================================================== - script hourlypoints -1,{ //--Start of the Script OnPCLoginEvent: addtimer .timer,"hourlypoints::OnPointGet"; end; OnPointGet: while(checkvending() >= 1 || checkchatting() == 1 || checkidle()>=.dlimit) { sleep2 .delay; if(.@mes$=="") dispbottom set(.@mes$,"The hourly points event haulted because you were vending, chatting, or idle."); } set #CASHPOINTS, #CASHPOINTS + .point_amt; dispbottom "You received "+.point_amt+" Kafrapoints by staying ingame for 1 hour"; dispbottom "Current Balance = "+#CASHPOINTS+" Kafrapoints"; set @consecutive_hour, @consecutive_hour + 1; //Check for 3 hours consecutive if(@consecutive_hour == 3) { set @consecutive_hour,0; set #CASHPOINTS, #CASHPOINTS + .cpoint_amt; dispbottom "You receive "+.cpoint_amt+" Kafrapoints in playing for 12 consecutive hours"; dispbottom "Current Balance = "+#CASHPOINTS+" Kafrapoints"; } addtimer .timer,"hourlypoints::OnPointGet"; end; OnInit: set .timer, 1000*60*60; //Timer in milliseconds. set .cpoint_amt, 50; //Points gained for consecutive time online. set .point_amt, 10; //Normal points gained. set .delay, 1000; //Delay for idle re-check check. set .dlimit, 60*5; //Stop points if afk greater then in seconds. } 2. Use @check to check cashpoints - script check -1,{ OnInit: bindatcmd "check",strnpcinfo(3)+"::OnCheck"; end; OnCheck: dispbottom "You have " +#CASHPOINTS+ " cash points."; end; } 3. The Shop http://rathena.org/board/files/file/2504-multi-currency-shop/
  7. http://rathena.org/wiki/Custom_Mobs
  8. //Event Start Time //OnClock0600: //6am //OnClock1200: //12pm noon OnClock1415: //2:15pm //OnClock1800: //6pm OnClock0000: //12pm midnight To OnMinute30:
  9. adde if( BaseJob == Job_Novice ) { under case 1:
  10. - script announce_RFYL -1,{ //Event Start Time //OnClock0600: //6am //OnClock1200: //12pm noon OnClock1415: //2:15pm //OnClock1800: //6pm OnClock0000: //12pm midnight announce "The Run For Your Life Event will begin in 3 Minutes.",0; killmonsterall "quiz_01"; sleep 5000; announce "The Run For Your Life NPC has appeared in Prontera!",0; enablenpc "RFYL Warper"; sleep 55000; announce "Event GM: Run For Your life will begin in 2 minutes.You better get ready!",0; sleep 60000; announce "Event GM: Run For Your Life will begin in 1 minute!",0; sleep 30000; mapannounce "quiz_01","In 30 seconds the monster will appear!",0; sleep 25000; announce "Event GM:Run For Your life Event will begin in ~5~",0; sleep 1000; announce "~4~",0; sleep 1000; announce "~3~",0; sleep 1000; announce "~2~",0; sleep 1000; announce "~1~",0; sleep 1000; announce "Event GM: Run For Your Life Event Has begun!!",0; monster "quiz_01",42,369,"Agav",2500,1; disablenpc "RFYL Warper"; sleep 10000; monster "quiz_01",42,369,"Agav-2",2500,1; sleep 10000; monster "quiz_01",42,369,"Agav-3",2500,1; sleep 10000; monster "quiz_01",42,369,"Agav-4",2500,1; sleep 10000; monster "quiz_01",42,369,"Agav-5",2500,1; initnpctimer; end; OnTimer5000: if ( getmapusers("quiz_01") == 0 ) { killmonsterall "quiz_01"; announce "Run For Your Life Event has ended.All the monsters are gone.",0; disablenpc "Prize"; stopnpctimer; end; } else if ( getmapusers("quiz_01") > 1 ) { if ($@RFYLCounter >= 3){ switch(rand(0,2)){ case 0: mapannounce "quiz_01",getmapusers("quiz_01") +" players are still alive.",0,0x00FF00; break; case 1: mapannounce "quiz_01",getmapusers("quiz_01") +" players are STILL alive? Are you sure you're not cheating?",0,0x00FF00; break; case 2: mapannounce "quiz_01",getmapusers("quiz_01") +" players are STILL ALIVE? Seriously, I'm gonna have to report you.",0,0x00FF00; break; } } else { mapannounce "quiz_01",getmapusers("quiz_01") +" players are still alive.",0,0x00FF00; } sleep 10000; set $@RFYLCounter,$@RFYLCounter+1; initnpctimer; end; } initnpctimer; end; OnPCDieEvent: getmapxy .@maprfyl$,.@xrfyl,.@yrfyl,0; if ( .@maprfyl$ == "quiz_01") { sleep2 1; warp "prontera",156,223; atcommand "@alive "+ strcharinfo(0); dispbottom "You have lost..."; } sleep2 1000; if ( .@maprfyl$ == "quiz_01" && getmapusers("quiz_01") == 1 ) { killmonsterall "quiz_01"; mapannounce "quiz_01","You have won, please approach to Prize NPC.",0; enablenpc "Prize"; set $@RFYLCounter,0; stopnpctimer; end; } end; } quiz_01,42,369,3 script Prize 72,{ announce "Hey "+strcharinfo(0)+" has won in Run For Your Life Event Congrats!",0; getitem 7227,1; warp "prontera",156,223; sleep2 250; disablenpc "Prize"; end; } prontera,152,282,3 script RFYL Warper 84,{ mes "[^0000FFRFYL Warper^000000]"; mes "Hi "+strcharinfo(0)+""; mes "^696969Do you wish to participate in the Run For Your Life Event?^000000"; next; switch(select("Yes","No")) { case 1: sc_end SC_ALL; sc_start SC_DECREASEAGI,300000,10; percentheal 100,100; warp "quiz_01",42,369; end; break; case 2: mes "[^0000FFRFYL Warper^000000]"; mes "Brains brainnnss.. brains? Mind."; mes "^696969It's really fun! Come join us when you change your mind.^000000"; close; } OnInit: disablenpc "RFYL Warper"; disablenpc "Prize"; end; }
  11. yes it is bitmap 8bits and the palette are in transparence color would otherwise it also SPR Conview Pink be if it were not transparence color , it may be a fail-in Actor ? sorry for my bad englisch
  12. I have a problem in SPR Conview is pink transparent in actor and in game not , where is the problem ?
  13. such mal in pc.c nach strcpy(tmp_soutput, (data == 0) ? msg_txt(502) : msg_txt(60)); // The day has arrived! strcpy(tmp_soutput, (data == 0) ? msg_txt(503) : msg_txt(59)); // The night has fallen... und mach beides raus , danach sollte es eigentlich gehen , nicht vergessen den Server neu zu konfigurieren
  14. here of Beginner Eathena the list Succubus_Wing LDHorn LDTail LDWing Archangel_Wing Archdemon_Wing Arctic_Wing Blood_Wing Bloodybutterfly_Wing Darkfairy_Wing Deviling_Wing Dragon_Wing Elemental_Wing Firey_Wing Gargoyle_Wing Greatevil_Wing Ice_Wing Incubus_Wing Lessergargoyle_Wing Littleangel_Wing Phaser_Wing Retribution_Wing Vampire_Wing Whitefairy_Wing Wing_Of_Balance EPhelm EPsholder EPwing SAear SAhelm SAwing Dark_Blue_Valkyrie_Helm Dark_Brown_Valkyrie_Helm Dark_Cyan_Valkyrie_Helm Dark_Gold_Valkyrie_Helm Dark_Green_Valkyrie_Helm Dark_Orange_Valkyrie_Helm Dark_Pink_Valkyrie_Helm Dark_Purple_Valkyrie_Helm Dark_Red_Valkyrie_Helm Dark_Silver_Valkyrie_Helm Black_Feather_Beret Brown_Feather_Beret Gold_Feather_Beret Green_Feather_Beret Light_Blue_Feather_Beret Orange_Feather_Beret Pink_Feather_Beret Purple_Feather_Beret Red_Feather_Beret Silver_Feather_Beret White_Feather_Beret Black_Crown Blue_Crown Brown_Crown Cyan_Crown Gold_Crown Golden_Crown Green_Crown Orange_Crown Pink_Crown Purple_Crown Red_Crown Silver_Crown White_Crown Blue_Helm_of_Baal Cyan_Helm_of_Baal Gold_Helm_of_Baal Green_Helm_of_Baal Helm_of_Baal Purple_Helm_of_Baal Red_Helm_of_Baal White_Helm_of_Baal Black_Incubus_Horn Blue_Incubus_Horn Cyan_Incubus_Horn Gold_Incubus_Horn Green_Incubus_Horn Purple_Incubus_Horn Red_Incubus_Horn White_Incubus_Horn Black_Luxury_Hat Blue_Luxury_Hat Cyan_Luxury_Hat Gold_Luxury_Hat Green_Luxury_Hat Luxury_Hat Purple_Luxury_Hat Red_Luxury_Hat New_Black_Valkyrie_Helm New_Blue_Valkyrie_Helm New_Brown_Valkyrie_Helm New_Cyan_Valkyrie_Helm New_Gold_Valkyrie_Helm New_Green_Valkyrie_Helm New_Orange_Valkyrie_Helm New_Pink_Valkyrie_Helm New_Purple_Valkyrie_Helm New_Red_Valkyrie_Helm New_Silver_Valkyrie_Helm New_White_Valkyrie_Helm Black_Sage_Ring Blue_Sage_Ring Cyan_Sage_Ring Gold_Sage_Ring Green_Sage_Ring Purple_Sage_Ring Red_Sage_Ring Sage_Ring White_Sage_Ring Black_Sakkat_Bamboo Blue_Sakkat_Bamboo Cyan_Sakkat_Bamboo Gold_Sakkat_Bamboo Purple_Sakkat_Bamboo Red_Sakkat_Bamboo Sakkat_Bamboo White_Sakkat_Bamboo Black_Valkyrie_Helm Blue_Valkyrie_Helm Brown_Valkyrie_Helm Cyan_Valkyrie_Helm Gold_Valkyrie_Helm Green_Valkyrie_Helm Orange_Valkyrie_Helm Pink_Valkyrie_Helm Purple_Valkyrie_Helm Red_Valkyrie_Helm Silver_Valkyrie_Helm White_Valkyrie_Helm Blue_Dark_Lord_Helm Cyan_Dark_Lord_Helm Dark_Lord_Helm Gold_Dark_Lord_Helm Green_Dark_Lord_Helm Purple_Dark_Lord_Helm Red_Dark_Lord_Helm White_Dark_Lord_Helm Animated_Angel_Wings Black_Animated_Angel_Wings Blue_Animated_Angel_Wings Cyan_Animated_Angel_Wings Gold_Animated_Angel_Wings Green_Animated_Angel_Wings Purple_Animated_Angel_Wings Red_Animated_Angel_Wings Black_Butterfly_Wings Blue_Butterfly_Wings Brown_Butterfly_Wings Cyan_Butterfly_Wings Gold_Butterfly_Wings Green_Butterfly_Wings Orange_Butterfly_Wings Pink_Butterfly_Wings Purple_Butterfly_Wings Red_Butterfly_Wings Silver_Butterfly_Wings White_Butterfly_Wings Black_Deviling_Wings Blue_Deviling_Wings Brown_Deviling_Wings Cyan_Deviling_Wings Deviling_Wings Gold_Deviling_Wings Green_Deviling_Wings Orange_Deviling_Wings Pink_Deviling_Wings Purple_Deviling_Wings Red_Deviling_Wings Silver_Deviling_Wings White_Deviling_Wings Black_Fairy_Wings Blue_Fairy_Wings Brown_Fairy_Wings Cyan_Fairy_Wings Gold_Fairy_Wings Green_Fairy_Wings Orange_Fairy_Wings Pink_Fairy_Wings Purple_Fairy_Wings Red_Fairy_Wings Silver_Fairy_Wings White_Fairy_Wings New_Dark_Blue_Fairy_Wings New_Dark_Cyan_Fairy_Wings New_Dark_Gold_Fairy_Wings New_Dark_Green_Fairy_Wings New_Dark_Purple_Fairy_Wings New_Dark_Red_Fairy_Wings Rastafari_Fairy_Wings New_Black_Fairy_Wings New_Blue_Fairy_Wings New_Cyan_Fairy_Wings New_Gold_Fairy_Wings New_Green_Fairy_Wings New_Purple_Fairy_Wings New_Red_Fairy_Wings New_White_Fairy_Wings the customs http://ro 2-website.bplaced.net/zeugs/custom.rar
  15. //=========== PORING CATCHER MADE ==============\\ //=== BY: SHOGS-GFX and RAGNAROK DEVELOPERS ====\\ //= Please Report if you encounter some errors =\\ //===== https://www.facebook.com/ShogsGfx ======\\ //==============================================\\ //==FUNCTIONS===================================\\ /* GM Can start the event manualy GM Can also stop the event manualy HOW: just PM this npc (npc:pcatch) The Next Guide Will Be Given by the Manager */ //======= PLEASE DO NOT REMOVE CREDITS =========\\ //==============================================\\ //== MORE UPDATES TO COME FOR BETTER FUNCTION ==\\ //===== https://www.facebook.com/ShogsGfx ======\\ //==============================================\\ //====LEVEL OF GM CAN CONTROL THE EVENT=========\\ - script GMCONTROL -1,{ OnInit: set $gmcontrol,60; end; } //---------------END OF SETUP-------------------\\ //================ON WHISPER=========================\\ - script pcatch -1,{ //====LEVEL OF GM CAN CONTROL THE EVENT=========\\ //OnInit: //set $gmcontrol,60; //end; //---------------END OF SETUP-------------------\\ OnWhisperGlobal: if(getgmlevel() >= $gmcontrol) { mes "^3399FF[Poring Catcher]^000000"; mes "Hello GameMaster!"; mes "What do you want to do?"; switch(select("Start Event:Stop Event:Nothing")) { case 1: { next; mes "^3399FF[Poring Catcher]^000000"; mes "Please confirm by typing START."; input .@confirm$; if (.@confirm$ == "START") { donpcevent "Announcer2::OnGMStart"; close; } mes "Confirmation failed"; close; break; } case 2: { next; mes "^3399FF[Poring Catcher]^000000"; mes "Please confirm by typing STOP."; input .@confirm$; if (.@confirm$ == "STOP") { donpcevent "Announcer2::OnGMStop"; close; } mes "Confirmation failed"; close; break; } case 3: { next; mes "^3399FF[Poring Catcher]^000000"; mes "Good bye"; close; } } } } //====================ANNOUNCER======================\\ - script Announcer2 -1,{ OnGMStart: killmonster "poring_w01.gat","All"; announce "(Poring Manager) : A Gamemaster started a Poring Catcher Event now.",0; sleep 3000; announce "(Poring Manager) : If you want to join, come at the middle of Prontera, enter the warp portal.",0; enablenpc "PoringCatcher"; sleep 2000; announce "(Poring Manager) : Prize: will be Poring Coins",0; sleep 2000; announce "(Poring Manager) : The portal is going to close in one minute.",0; sleep 60000; announce "(Poring Manager) : The portal has been closed.",0; disablenpc "PoringCatcher"; if(getmapusers("poring_w01") == 0) { disablenpc "Poring Banker"; announce "Event Poring Catcher didn't start because there's no players.",0; end; } donpcevent "Poring Banker::OnEnable"; end; OnGMStop: killmonster "poring_w01.gat","All"; announce "A Gamemaster has stopped the Poring Catcher Event",0; mapwarp "poring_w01.gat","prontera.gat",155,173; disablenpc "Poring Banker"; disablenpc "PoringCatcher"; end; OnMinute00: killmonster "poring_w01.gat","All"; announce "(Poring Manager) : Poring Catcher Event will start at the moment.",0; sleep 3000; announce "(Poring Manager) : If you want to join, come at the middle of Prontera, enter the warp portal.",0; enablenpc "PoringCatcher"; sleep 2000; announce "(Poring Manager) : Prize: will be Poring Coins",0; sleep 2000; announce "(Poring Manager) : The portal is going to close in one minute.",0; sleep 60000; announce "(Poring Manager) : The portal has been closed.",0; disablenpc "PoringCatcher"; if(getmapusers("poring_w01") == 0) { disablenpc "Poring Banker"; announce "Event Poring Catcher didn't start because no players found in map.",0; end; } donpcevent "Poring Banker::OnEnable"; end; OnInit: disablenpc "Poring Banker"; disablenpc "PoringCatcher"; } //---------All Job Registration---------------------------------------- prontera,155,158,0 warp PoringCatcher 2,2,poring_w01,105,128 //--------------------------------------------------------------------- //--------------------------------------------------------------------- - script Poring Banker -1,{ OnEnable: mapannounce "poring_w01","Poring Manager: The Poring Catcher Event will start shortly",0; sleep2 10000; mapannounce "poring_w01","Poring Manager: I will be summoning 100 porings with different names kill the real poring",0; sleep2 10000; mapannounce "poring_w01","Poring Manager: What are we waiting for?..Let's Catch some Porings!!...",0; sleep2 10000; goto L_Start; end; L_Start: if(getmapusers("poring_w01") == 0) goto L_None; if(getmapusers("poring_w01") >= 1) { mapannounce "poring_w01","Poring Manager: Get ready at the count of 5 we will start!....",0; sleep2 6000; mapannounce "poring_w01","Poring Manager: 5",0; sleep2 5000; mapannounce "poring_w01","Poring Manager: 4",0; sleep2 4000; mapannounce "poring_w01","Poring Manager: 3",0; sleep2 3000; mapannounce "poring_w01","Poring Manager: 2",0; sleep2 2000; mapannounce "poring_w01","Poring Manager: 1",0; donpcevent "Poringsummoner::OnSummon"; end; } L_None: disablenpc "Poring Banker"; killmonster "poring_w01.gat","All"; end; } //==================SUMMONER OF PORINGS ======================\\ - script Poringsummoner -1,{ OnSummon: if(getmapusers("poring_w01") == 0) goto L_2None; monster "poring_w01.gat",0,0,"Poring",1002,1,"poringwin::OnMobKilled"; monster "poring_w01.gat",0,0,"Pouring",1002,10,"poringlose::OnMobKilled"; monster "poring_w01.gat",0,0,"Proing",1002,10,"poringlose::OnMobKilled"; monster "poring_w01.gat",0,0,"Poirng",1002,10,"poringlose::OnMobKilled"; monster "poring_w01.gat",0,0,"Poing",1002,10,"poringlose::OnMobKilled"; monster "poring_w01.gat",0,0,"I'm not a Poring",1002,5,"poringlose::OnMobKilled"; monster "poring_w01.gat",0,0,"Gnirop",1002,1,"poringlose::OnMobKilled"; monster "poring_w01.gat",0,0,"Poring",1113,1,"poringlose::OnMobKilled"; monster "poring_w01.gat",0,0,"Poring",1062,1,"poringlose::OnMobKilled"; monster "poring_w01.gat",0,0,"Por|ng",1002,10,"poringlose::OnMobKilled"; monster "poring_w01.gat",0,0,"Por1ng",1002,10,"poringlose::OnMobKilled"; monster "poring_w01.gat",0,0,"Porong",1002,10,"poringlose::OnMobKilled"; monster "poring_w01.gat",0,0,"P0ring",1002,10,"poringlose::OnMobKilled"; monster "poring_w01.gat",0,0,"P@ring",1002,10,"poringlose::OnMobKilled"; monster "poring_w01.gat",0,0,"Porng",1002,1,"poringlose::OnMobKilled";end; L_2None: disablenpc "Poring Banker"; killmonster "poring_w01.gat","All"; end; } //==================REAL PORING FOR WIN======================\\ - script poringwin -1,{ OnMobKilled: killmonster "poring_w01.gat","All"; atcommand "@doommap"; getitem 7539,5; announce "Poring Banker: We have a winner! well done " + strcharinfo(0) + ".",0; warp "SavePoint",0,0; end; } //==================DUMY PORINGS FOR LOSERS======================\\ - script poringlose -1,{ OnMobKilled: dispbottom "Your out of the game, You did not catch the right Poring !"; percentheal -99,-99; warp "SavePoint",0,0; 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 GM can WHISPER to the npc with npc:pcatch and it start doing so
  16. you need to put together the first the mobs etc. Loading an dan the Npc's - script killmvps -1,{ end; OnInit: sleep 2000; setarray .mvpmapnames$[0],"moc_pryd06", //Amon Ra "prt_maze03", //Baphomet "gl_chyard", //Dark Lord "gon_dun03", //Dark Snake Lord "abyss_03", //Detardeurus / Detale "gef_dun02", //Doppelganger "gef_dun01", //Dracula "treasure02", //Drake "ra_san05", //Gloom Under Night "prt_sewb4", //Golden Thief Bug "thor_v03", //Ifrit "ama_dun03", //Incantation Samurai "kh_dun02", //Kiel-D-01 "xmas_dun02", //Knight of Windstorm / Stormy Knight "ayo_dun02", //Lady Tanee "niflheim", //Lord of Death "anthell02", //Maya "pay_dun04", //Moonlight Flower "in_sphinx5", //Pharaoh "ein_dun02", //RSX-0806 "beach_dun", //Tao Gunka "tur_dun04", //Turtle General "odin_tem03", //Valkyrie Randgris "jupe_core", //Vesper "lou_dun03", //White Lady "abbey02", //Fallen Bishop Hibram "abbey03"; //Beelzebub for(set .i,0; .i < getarraysize(.mvpmapnames$); set .i,.i+1) killmonsterall .mvpmapnames$[.i]; end; } so are all the MVPs by @reloadscript dead
  17. @guild The Name not "The Name" and no extra sign z,b , . - ~ ( / usw.
  18. here are all commands https://rathena.svn.sourceforge.net/svnroot/rathena/trunk/doc/atcommands.txt
  19. test it - shop Emistry_Shop -1,512:100 // -------------------------------------------------- fire_event,25,40,4 script Event Shop#1 111,{ function ShopSettings; function ValidateCost; function CurrencyInfo; function ClearData; function ValueConvert; function ErrorNotice; OnInit: waitingroom "Hunt Shop",0; mes "Each Shop from the Menu may purchase using ^FF0000Different Currency^000000."; mes "^00FF00____________________________^000000"; mes "So,Which shop you would like to look at it"; next; select("Headgear","Foods","Cossumber"); ClearData(); ShopSettings( @menu ); npcshopitem "Emistry_Shop",512,100; npcshopdelitem "Emistry_Shop",512; for(set .@i,0; .@i < getarraysize( @ItemLists ); set .@i,.@i+1) npcshopadditem "Emistry_Shop",@ItemLists[.@i],@ItemCost[.@i]; mes "Okay...wait awhile"; mes "^00FF00____________________________^000000"; CurrencyInfo( @Currency$ ); mes "^00FF00____________________________^000000"; callshop "Emistry_Shop",1; npcshopattach "Emistry_Shop"; end; function ShopSettings { switch( getarg(0) ){ Case 1: // Currency [ Item ID / Variable Name ] set @Currency$,"hunter_points"; // Item ID Lists setarray @ItemLists[0],5377,5288,5146,5269,5376,5235,5236,5237,5289,5306,5322,5366; // ITEM ID // Item Price setarray @ItemCost[0],200,220,150,400,450,250,250,250,200,250,230,300; // ITEM COST/AMOUNT break; Case 2: // Currency [ Item ID / Variable Name ] set @Currency$,"hunter_points"; // Item ID Lists setarray @ItemLists[0],1815; // Item Price setarray @ItemCost[0],100; break; Case 3: // Currency [ Item ID / Variable Name ] set @Currency$,"hunter_points"; // Item ID Lists setarray @ItemLists[0],2776,12260,14037; // Item Price setarray @ItemCost[0],500,50,30; break; // Case 4,5,6.....etc... default: ErrorNotice( "Invalid Menu Selection for Menu "+@menu+"." ); close; } if( @Currency$ == "" ) ErrorNotice( "Invalid Currency Setting in Menu "+@menu+" ." ); if( getarraysize( @ItemCost ) != getarraysize( @ItemLists ) || getarraysize( @ItemLists ) != getarraysize( @ItemCost ) ) ErrorNotice( "Missing or Extra Value of Item or Cost Settings in Menu "+@menu+" ." ); return; } function ErrorNotice { mes "^FF0000ERROR^000000 - "+getarg(0); mes "^00FF00____________________________^000000"; mes "Inform this Message to ^0000FFGame Staffs^000000 immediately !"; close; } function CurrencyInfo { if( getitemname( atoi( getarg(0) ) ) != "null" ){ mes "Item Currency : ^FF0000"+getitemname( atoi( getarg(0) ) )+"^000000"; mes "Available Amount : ^0000FF"+ValueConvert( countitem( atoi( getarg(0) ) ) )+"^000000"; }else if( getitemname( atoi( getarg(0) ) ) == "null" ){ mes "Variable Currency : ^FF0000"+getarg(0)+"^000000"; mes "Available Amount : ^0000FF"+ValueConvert( getd( getarg(0) ) )+"^000000"; } return; } function ValidateCost { if( getitemname( atoi( getarg(0) ) ) != "null" ){ if( countitem( atoi( getarg(0) ) ) < getarg(1) ) return 1; }else{ if( getd( getarg(0) ) < getarg(1) ) return 1; } return 0; } function ClearData { set @Currency$,""; set @TotalCost,0; deletearray @bought_nameid[0],getarraysize( @bought_nameid ); deletearray @bought_quantity[0],getarraysize( @bought_quantity ); deletearray @ItemLists[0],getarraysize( @ItemLists ); deletearray @ItemCost[0],getarraysize( @ItemCost ); return; } function ValueConvert { set .@num, atoi(""+getarg(0)); if ( .@num == 0 || .@num >= 2147483647 ) return getarg(0); set .@l, getstrlen(""+.@num); for ( set .@i,0; .@i < .@l; set .@i, .@i + 1 ) { set .@num$, .@num % pow(10,.@i+1) / pow(10,.@i) + .@num$; if ( (.@i+1) % 3 == 0 && .@i+1 != .@l ) set .@num$, ","+ .@num$; } return .@num$; } OnBuyItem: ShopSettings( @menu ); for(set @i,0; @i < getarraysize( @bought_nameid ); set @i,@i+1) for(set @j,0; @j < getarraysize( @ItemLists ); set @j,@j+1) if( @ItemLists[@j] == @bought_nameid[@i] ) set @TotalCost,@TotalCost + ( @ItemCost[@j] * @bought_quantity[@i] ); mes "^FF0000 BILLING LIST^000000"; mes "^00FF00____________________________^000000"; for( set @i,0; @i < getarraysize( @bought_nameid ); set @i,@i+1 ) mes "^FF0000"+@bought_quantity[@i]+" x ^0000FF"+getitemname( @bought_nameid[@i] )+"^000000"; mes "^00FF00____________________________^000000"; if( getitemname( atoi( @Currency$ ) ) != "null" ) mes "Total Cost : ^0000FF"+ValueConvert( @TotalCost )+" x "+getitemname( atoi( @Currency$ ) )+"^000000"; else if( getitemname( atoi( @Currency$ ) ) == "null" ){ mes "Total Cost : ^0000FF"+ValueConvert( @TotalCost )+" "+@Currency$+"^000000"; } mes "^00FF00____________________________^000000"; if( ValidateCost( @Currency$,@TotalCost ) ){ if( getitemname( atoi( @Currency$ ) ) != "null" ) mes "[ ^FF0000X^000000 ] Insufficient ^0000FF"+getitemname( atoi( @Currency$ ) )+"^000000"; else{ mes "[ ^FF0000X^000000 ] Insufficient ^0000FF"+@Currency$+"^000000"; } }else{ if( select( "^0000FFPurchase^000000:Cancel" ) == 1 ){ if( getitemname( atoi( @Currency$ ) ) != "null" ) delitem atoi( @Currency$ ),@TotalCost; else{ set getd( @Currency$ ),getd( @Currency$ ) - @TotalCost; } for(set @i,0; @i < getarraysize( @bought_nameid ); set @i,@i+1) getitem @bought_nameid[@i],@bought_quantity[@i]; message strcharinfo(0),"Purchased "+getarraysize( @bought_nameid )+" Items."; mes "Thank you for shopping."; } } ClearData(); close; }
  20. src/map/pc.c suche : int map_day_timer(int tid, unsigned int tick, int id, intptr_t data) { char tmp_soutput[1024]; if (data == 0 && battle_config.day_duration <= 0) // if we want a day return 0; if (!night_flag) return 0; //Already day. night_flag = 0; // 0=day, 1=night [Yor] map_foreachpc(pc_daynight_timer_sub); strcpy(tmp_soutput, (data == 0) ? msg_txt(NULL,502) : msg_txt(NULL,60)); // The day has arrived! intif_broadcast(tmp_soutput, strlen(tmp_soutput) + 1, 0); return 0; } /*================================================ * timer to do the night [Yor] * data: 0 = called by timer, 1 = gmcommand/script *------------------------------------------------*/ int map_night_timer(int tid, unsigned int tick, int id, intptr_t data) { char tmp_soutput[1024]; if (data == 0 && battle_config.night_duration <= 0) // if we want a night return 0; if (night_flag) return 0; //Already nigth. night_flag = 1; // 0=day, 1=night [Yor] map_foreachpc(pc_daynight_timer_sub); strcpy(tmp_soutput, (data == 0) ? msg_txt(NULL,503) : msg_txt(NULL,59)); // The night has fallen... intif_broadcast(tmp_soutput, strlen(tmp_soutput) + 1, 0); return 0; } Ersetzen durch : int map_day_timer(int tid, unsigned int tick, int id, intptr_t data) { // char tmp_soutput[1024]; if (data == 0 && battle_config.day_duration <= 0) // if we want a day return 0; if (!night_flag) return 0; //Already day. night_flag = 0; // 0=day, 1=night [Yor] map_foreachpc(pc_daynight_timer_sub); // strcpy(tmp_soutput, (data == 0) ? msg_txt(NULL,502) : msg_txt(NULL,60)); // The day has arrived! // intif_broadcast(tmp_soutput, strlen(tmp_soutput) + 1, 0); return 0; } /*================================================ * timer to do the night [Yor] * data: 0 = called by timer, 1 = gmcommand/script *------------------------------------------------*/ int map_night_timer(int tid, unsigned int tick, int id, intptr_t data) { // char tmp_soutput[1024]; if (data == 0 && battle_config.night_duration <= 0) // if we want a night return 0; if (night_flag) return 0; //Already nigth. night_flag = 1; // 0=day, 1=night [Yor] map_foreachpc(pc_daynight_timer_sub); // strcpy(tmp_soutput, (data == 0) ? msg_txt(NULL,503) : msg_txt(NULL,59)); // The night has fallen... // intif_broadcast(tmp_soutput, strlen(tmp_soutput) + 1, 0); return 0; }
  21. You can make a Show Npc , whether the event on or off and the mob the points give ?
  22. This is a right curly: } adde a } under line 204
  23. which svn do you use ? and make a ScreenShot of the Error
  24. https://github.com/rathena/rathena/blob/master/db/pre-re/skill_nocast_db.txt
×
×
  • Create New...