Jump to content

Patskie

Members
  • Posts

    1702
  • Joined

  • Last visited

  • Days Won

    18

Everything posted by Patskie

  1. Patskie

    REQUEST

    Much better if you post your request to their forums?
  2. - script Sample -1,{ OnInit: bindatcmd "lock",strnpcinfo(3)+"::OnCommand",99,99; end; OnCommand: dispbottom "Lock lock lock!"; end; }
  3. Is the explanation in the document still not further? @_@
  4. Instead of multiple if statements. You can have like this : if ( BaseLevel == 10 || ( BaseLevel % 50 == 0 ) ) dothis;
  5. I've been busy for my post-graduate duties and therefore i can't test my script right now. Sorry.
  6. Follow this : ** Define a shop/cashshop/itemshop/pointshop NPC. -%TAB%shop%TAB%<NPC Name>%TAB%<sprite id>,<itemid>:<price>{,<itemid>:<price>...} <map name>,<x>,<y>,<facing>%TAB%shop%TAB%<NPC Name>%TAB%<sprite id>,<itemid>:<price>{,<itemid>:<price>...} -%TAB%cashshop%TAB%<NPC Name>%TAB%<sprite id>,<itemid>:<price>{,<itemid>:<price>...} <map name>,<x>,<y>,<facing>%TAB%cashshop%TAB%<NPC Name>%TAB%<sprite id>,<itemid>:<price>{,<itemid>:<price>...} -%TAB%itemshop%TAB%<NPC Name>%TAB%<sprite id>,<costitemid>{:<discount>},<itemid>:<price>{,<itemid>:<price>...} <map name>,<x>,<y>,<facing>%TAB%itemshop%TAB%<NPC Name>%TAB%<sprite id>,<costitemid>{:<discount>},<itemid>:<price>{,<itemid>:<price>...} -%TAB%pointshop%TAB%<NPC Name>%TAB%<sprite id>,<costvariable>{:<discount>},<itemid>:<price>{,<itemid>:<price>...} <map name>,<x>,<y>,<facing>%TAB%pointshop%TAB%<NPC Name>%TAB%<sprite id>,<costvariable>{:<discount>},<itemid>:<price>{,<itemid>:<price>...}
  7. *isequipped(<id>{,<id>{,<id>{,<id>}}}) This function will return 1 if the invoking character has all of the item IDs given equipped (if card IDs are passed, then it checks if the cards are inserted into slots in the equipment they are currently wearing). Theoretically there is no limit to the number of items that may be tested for at the same time. If even one of the items given is not equipped, 0 will be returned. // (Poring,Santa Poring,Poporing,Marin) if (isequipped(4001,4005,4033,4196)) mes "Wow! You're wearing a full complement of possible poring cards!"; // (Poring) if (isequipped(4001)) mes "A poring card is useful, don't you think?"; The function was meant for item scripts to support the cards released by Gravity in February 2005, but it will work just fine in normal NPC scripts.
  8. This is somehow a hard script : [paste=kg2smq37f89] Configuration file : .npc$ = "[ ^FF0000" + strnpcinfo( 1 ) + "^000000 ]"; /* NPC Name */ setarray .MiniBoss[0], 1002, 1002, 1002, 1002; /* Mob id per round */ setarray .MiniBossAmount[0], 1, 1, 1, 1; /* Amount per round */ setarray .Timer[0], 2, 3, 5, 10, 20; /* In minutes */ setarray .Boss[0], 1002, 1002, 1002; /* Put all your MVP id's here */ setarray .CastleDrops[0], 607, 7227, 7179; /* Put all your castle drops here */ NOTE : I never tried this one on my test server so please bear with me if any bugs occur.
  9. Use having instead : SELECT `char`.`name`, `global_reg_value`.`value` FROM `char` JOIN `global_reg_value` ON `char`.`char_id` = `global_reg_value`.`char_id` WHERE `global_reg_value`.`str` = 'YOUR VARIABLE' HAVING `global_reg_value`.`value` > 5 ORDER BY CAST( `global_reg_value`.`value` AS UNSIGNED ) DESC LIMIT 50; Don't forget to change YOUR VARIABLE on the query
  10. *atcommand "<command>"; This command will run the given command line exactly as if it was typed in from the keyboard by the player connected to the invoking character, and that character belonged to an account which had GM level 99. // This will ask the invoker for a character name and then use the '@nuke' // GM command on them, killing them mercilessly. input @player$; atcommand "@nuke "+@player$; Note that for atcommands bound using 'bindatcmd', this command will execute the original atcommand, not the script-bound atcommand.
  11. src/common/mmo.h #ifndef PACKETVER #define PACKETVER 20130807 //#define PACKETVER 20120410 #endif
  12. Check format : *monster "<map name>",<x>,<y>,"<name to show>",<mob id>,<amount>{,"<event label>",<size>,<ai>}; Should be : monster "lunar01",0,0,"--ja--",1514,199; monster "lunar01",0,0,"--ja--",1514,1,strnpcinfo(0)+"::OnKilled";
  13. Go try instead of asking others if it will get fine or not. Make sure you made a backup so you won't blame us if you mistakenly did it.
  14. Use SQL instead. rAthena array can store only up to 128 values.
  15. db/pre-re/item_noequip.txt or db/re/item_noequip.txt
  16. prontera,150,150,0 script Sample 100,{ addrid( 0 ); sc_start SC_FREEZE, 240000, 10; end; } Freeze all players on the whole server
  17. Reset the ladder by executing this : DELETE FROM `mapreg` WHERE `varname` LIKE '$grank_%'; If you want it to add after the woe, Please refer to OnAgitEnd event label and getcastledata script command.
  18. Put under npc/guild/agit_main.txt#L102 : if ( getcharid( 2 ) ) { if ( strcharinfo( 3 ) == "prtg_cas01" ) setd "$grank_" + getcharid( 2 ), getd( "$grank_" + getcharid( 2 ) ) + 1; else if ( strcharinfo( 3 ) == "arug_cas01" ) setd "$grank_" + getcharid( 2 ), getd( "$grank_" + getcharid( 2 ) ) + 2; else if ( strcharinfo( 3 ) == "schg_cas01" ) setd "$grank_" + getcharid( 2 ), getd( "$grank_" + getcharid( 2 ) ) + 3; } Then ladder : prontera,150,150,0 script Sample 100,{ set .@top, 10; query_sql "SELECT `varname`, `value` FROM `mapreg` WHERE `varname` LIKE '$grank_%' ORDER BY CONVERT( `value`, UNSIGNED INTEGER ) DESC LIMIT " + .@top, .@n$, .@p; mes "[ TOP " + .@top + " ]"; for ( .@i = 0; .@i < getarraysize( .@n$ ); .@i++ ) { explode( .@arr$, .@n$[ .@i ], "_" ); dispbottom .@arr$[1]; mes ( .@i + 1 ) + ". " + getguildname( atoi( .@arr$[ 1 ] ) ) + " with " + .@p[ .@i ] + " points"; } close; } Not tested. Not instant because we use sql.
  19. http://rathena.org/board/topic/83009-rebirth-system-reset-stats/
  20. BaseLevel = 255; JobLevel = 120; Change value to your max level/job
×
×
  • Create New...