Takizuki
Members-
Content Count
45 -
Joined
-
Last visited
Content Type
Profiles
Forums
Downloads
Staff Applications
Calendar
Everything posted by Takizuki
-
even using a @clone command
-
Hi, can someone help me create an NPC when player talk to the npc it will make her/him a clone of his/her self? also IF possible to limit the clone up to 5 times if this is not possible its ok just an npc that can clone a player. thanks alot
-
Hi, can anyone change this to instead of item convert it to zeny ? once they vote they can get a zeny as reward //====================================================================================//Script Name: Vote For Points NPC Script for FluxCP//SVN: Tested in rAthena r156513//Developed By: JayPee Mateo//Version: 1.0//Requirement(s): FluxCP V4P Addon//Description: This is a npc script for FluxCP Vote for points in order for the players//to claim their vote points//====================================================================================prontera,143,190,5 script Vote Shop 89,{//Function Prototypesfunction garbagecol;//Garbage collection for the Character variablesgarbagecol();function add_item; //Syntanx: add_item(ITEMID,QUANTITY,POINTS,CATEGORY);function makeCategory;//This will return a list of the categoriesfunction getItemsByCat;//This will return the list of items associated to the particular categoryfunction getItemDetails;//This will return the details of the itemfunction getPoints;//This will return the points of the player stored in the databasefunction updatePoints;//This will updates the points of the player stored in the database//NPC Nameset .npcname$,"[ Vote For Points ]"; //Initialization of the Rewardsadd_item(12210,10,100,"Bubblegum");add_item(1084,10,100,"Kafra Pass");add_item(16396,1,100,"HD Elunium 10 Box");add_item(16394,1,100,"HD Oridecon 10 Box");//Script Start mes .npcname$; mes "Hi! Do you want to exchange your vote points?:"; switch(select("Yes, I want to exchange my points:See my points")) { case 1: next; mes .npcname$; mes "Please choose a category:"; set .@selected,select(makeCategory())-1; next; mes .npcname$; mes "Please the item you want:"; set .@selected,select(getItemsByCat(@listCat$[.@selected]))-1; next; mes .npcname$; set .@ritemid,getItemDetails(@itemKeys[.@selected],"itemid"); set .@rquantity,getItemDetails(@itemKeys[.@selected],"quantity"); set .@rpoints,getItemDetails(@itemKeys[.@selected],"points"); mes "Item ID:"+.@ritemid; mes "Item Name: "+getitemname(.@ritemid); mes "Item Quantity: "+.@rquantity+" pc(s)."; mes "Required Points: "+.@rpoints+" pt(s)."; mes "n"; mes "Do you want to this item?"; if(select("Yes:No")==1) { set .@points,getPoints(getcharid(3)); if(.@points>=.@rpoints) { next; mes .npcname$; updatePoints(getcharid(3),.@rpoints); getitem .@ritemid,.@rquantity; mes "Here you go!. Thank you for voting. Don't forget to vote again. :D"; } else mes "Sorry, you do not have enough points for this item."; } else { next; mes .npcname$; mes "Okay bye!"; } garbagecol(); close; case 2: next; mes .npcname$; set .@points,getPoints(getcharid(3)); mes "You currently have "+.@points+" pt(s)."; garbagecol(); close; }end;//Functions Bodies function updatePoints { set .@account_id,getarg(0); set .@usedPoints,getarg(1); query_sql("UPDATE `cp_v4p_voters` SET points=(points-"+.@usedPoints+") WHERE account_id='"+.@account_id+"'"); return; } function getPoints { set .@account_id,getarg(0); query_sql("SELECT `points` FROM `cp_v4p_voters` WHERE account_id="+.@account_id+" LIMIT 1",.@points); if(getarraysize(.@points)==0) return 0; return .@points[0]; } function getItemDetails { set .@key,getarg(0); //Key set .@detail$,getarg(1); //What details to return such as ItemID, Points, Quantity, Category if(strtolower(.@detail$) == strtolower("ItemID")) return @itemID[.@key]; else if(strtolower(.@detail$) == strtolower("Quantity")) return @itemQ[.@key]; else if(strtolower(.@detail$) == strtolower("Points")) return @points[.@key]; else if(strtolower(.@detail$) == strtolower("Category")) return @category$[.@key]; } function getItemsByCat { set .@selectedCat$,getarg(0); set .@make_string$,""; set .@x,0; for(set .@i,0; .@i<getarraysize(@category$); set .@i,.@i+1) { if(strtolower(.@selectedCat$) == strtolower(@category$[.@i])) { setarray @itemKeys[.@x],.@i; if(.@make_string$ == "") set .@make_string$,getitemname(@itemID[.@i]); else set .@make_string$,.@make_string$+":"+getitemname(@itemID[.@i]); set .@x,.@x+1; } } return .@make_string$; } function makeCategory { set .@make_string$,""; for(set .@i,0; .@i<getarraysize(@category$); set .@i,.@i+1) { if(.@make_string$ == "") { setarray @listCat$[getarraysize(@listCat$)],@category$[.@i]; set .@make_string$,@category$[.@i]; } else { if(compare(.@make_string$,@category$[.@i])==0) { setarray @listCat$[getarraysize(@listCat$)],@category$[.@i]; set .@make_string$,.@make_string$+":"+@category$[.@i]; } } } return .@make_string$; } function add_item { set .@itemID,getarg(0,-1); //IteID set .@itemQ,getarg(1,-1); //Item Quantity set .@points,getarg(2,-1); set .@cat$,getarg(3,"Uncategorized"); //Category if(.@itemID == -1) { debugmes "Invalid Item ID. Script not completely loaded."; end; } else if(.@itemQ == -1) { debugmes "Invalid Item Quantity. Script not completely loaded."; end; } else if(.@points == -1) { debugmes "Points assignment error. Script not completely loaded."; end; } set .@key,getarraysize(@itemID); setarray @itemID[.@key],.@itemID; setarray @itemQ[.@key],.@itemQ; setarray @points[.@key],.@points; setarray @category$[.@key],.@cat$; return 1; //return 1 as success } function garbagecol{ deletearray @itemID[0],128; deletearray @itemQ[0],128; deletearray @points[0],128; deletearray @category$[0],128; deletearray @listCat$[0],128; deletearray @itemKeys[0],128; return; }} thanks alot
-
hmm.. how can i set mapflag like loadevent on specific map like poring_w01 ? coz it seems adding mapflag inside a script is not working, i did some research and it said that i need to set it map_zone_db.conf but i don't know how to add specific mapflag for a map coz some of them are for cities, pvp, gvg and battlegrounds. anyone? btw can i just add my map zone without adding anything on map.h? eg. { name: "poring_w01" mapflags: ( "loadevent","noteleport","nomemo", ) disabled_commands: { warp: 80 }}
-
hmmm... the reason why i want to set the items zeny price to 0 is so that once they sell it to npc the price is nothing
-
hi, is there a fastest way to make all items zeny to 0 value? i know you can do it by change them on item_db. but is there a fastest way to do that? thanks
-
thanks alot /no1
-
thanks for your reply Dastgir but sorry im noob in scripting... hmm... PrizeGiver::OnPoringKilled ?? is this correct sample? // EVENT NPC ======================================================prontera,137,167,3 script Kill Event 63,{ monster "prontera",0,0,"Poring",PORING,10,"PrizeGiver::OnPoringKilled"; OnPoringKilled: if (!mobcount("prontera","PrizeGiver::OnPoringKilled")){ //All mobs dead, do something. <-- what's this for?? }}// PRIZE GIVER NPC ======================================================location script PrizeGiver 64,{ script for item}
-
Guys, can i know how to make an NPC show as soon as all Monster are killed on specific map?
-
thanks ill try this
-
thanks.. how can i convert the link you gave to iteminfo.lua? coz i think its easier to edit item desc on iteminfo.lua if your having problem patching files to grf
-
Hi, im having problem on my Pre-Re item description, im currently from Renewal and i disable it from trunk/src/config/renewal.h to switch to Pre-re, so now im using pre-re folder but i notice that the items defense was still set to Renewal according to RMS database RMS - Renewal RMS - Pre-Renewal My Item Desc it looks like that my item description is still set to Renewal how can i change it to Pre-re? Thanks
-
anyone? or how about just make the npc appear once all monster has been killed ? and make it for solo only
-
hi, i have this thing in mind that hope can be available. Players will talk to NPC Warper that will warp them but they need to have at least 5 Party Members once their on the map they need to Kill All Monster from level 1 to level 4 ( check if all monsters are killed before you can proceed to next level ) once level 4 monster already killed an NPC will appeared and will give them a chance to choose 5 refined items, that items is for each member ONLY Party Leader is allowed to talk with the NPC. or if possible each Party Members can talk to the NPC ang get their refine item of their choice. ( 1 refined item for each member ) Settings itemchoice: menu "Item 1",et1,"Item 2",et2,"Item 3",et3,"Item 4",et4,"Item 5",et5,"Cancel",Cancel; et1: mes "Are you sure you want this item?"; menu "Yes",-,"No",bye; next; getitem item_id; equip item_id; atcommand "@refine 3 10"; <-- other script command that wont use @refine command close; and so on... and if this can be a Shop type instead of Text Menu that would be great hope its not too much to ask im using Thanks in advance
-
anyone? help me pls...
-
bump
-
hi, im new to Thor tried to update my grf but its not updating and showing a directory after patch also having problem displaying my Notice Box its not showing on my patcher here's my thor config [Config:Main]RootURL='http://mydomain.com/patch/'RemoteConfigFile='main.ini'TimeOut=0StatusFile='myro.dat'DefaultGRF='myro.grf'ClientEXE='loki.exe'ClientParameter='-1sak1'//When patcher unable to connect webserver,//should the patcher allow player start the game anyways?FinishOnConnectionFailure=true[Config:Window]Style='none'//This allows the player drag the window by backgroundDragHandling=true//Background can be either jpg or bmp, in later case//the top-left pixel is chosen as transparent color.Background='images/bg.bmp'FadeOnDrag=true[Config:BGM]File=''Loop=trueVolume=5Directory=[Config:Misc]Title='Ragnarok Online Patcher'HideProgressBarWhenFinish=false[ProgressBar:bar1]Width=330Height=9Left=50Top=505BackColorStart=BackColorEnd=FrontColorStart=FrontColorEnd=FrontImage='images/frontprogress.png'BackImage='images/backtprogress.png'Hook='ProgressChange'[Label:Status]AutoResize = falseWidth=369Height=Left=15Top=480Alignment='center'FontColor=$FFFFFFFontName = 'Trebuchet MS'FontSize = 9Text='Patch Process Finished'Hook='StatusChange'[NoticeBox:Box0]Width=500Height=196Left=44Top=271URL='http://mydomain.com/patch/notice.html'[Button:Start]Default='images/start.png'OnHover='images/start2.png'OnDown='images/start3.png'Left=470Top=490//Hook is used for default buttons,//do not use this on custom buttons!Hook='Start'[Button:Exit]Default='images/close.png'OnHover='images/close2.png'OnDown='images/close3.png'Left=565Top=17Hook='Exit'[Button:Cancel]Default='images/cancel.png'OnHover='images/cancel2.png'OnDown='images/cancel3.png'Left=470Top=490Hook='Cancel'//[Button:Extra]//////// Mode - mode for button// 1 = open URL// 2 = Launch file/program// 3 = Message box//Mode=// Action - depend on what you set in the Mod, this may vary// ex. Mode = 1 , Action='http://google.com'//Action= main.ini //Thor Patcher remote config file[Main]//Allow patching or not?allow=true//Should patcher ignore everything else and finish patch immediately?Force_Start=false//if not, what message should appear?policy_msg=Server is taking a nap.//file_url - patch files should ALL put here.// This config entry will override the one in embed config.// o HTTP:// http://domain.com/dir/// o FTP:// ftp://domain.com/dir/// o With <Username> [Password] [Port]// ftp://username:[email protected]:port/dir/// o Note: username is required if want put password, otherwise everything is optional.file_url=http://mydomain.com/patch/data/[Patch]//use CheckSum tool, hash for client & patcher// used to make sure exe is up to date// (leave empty to disable this feature)ClientSum=PatcherSum=//This is compressed file for patcher & client update// To make these work, ClientSum and/or PatcherSum can't be empty// Note: these files should put same place as patch file (file_url in internal config)//Relative address, not FULL URL!ClientPath=PatcherPath=// Patch list filePatchList=plist.txt[Stars]// Shining o.O (Anyways, its for start button clones)// Since orignal client has check sum.. why not for clones? XD//How many? (it should same as amount of start button clone, but of course it's your choice)clients=0// _sum - checksum, use CheckSum tool.//client1_sum=// _Name - Filename of exe//client1_Name=// _Path - Path for file [Compressed]//client1_Path=[Misc]//Set a limit for fragment, when reach this limit, patcher will ask user to defragFragmentLimit=50 thanks UPDATE: it seems that the patcher is not saving also coz when i tried to use patcher it still patching the same files. if its already patch it should be not patching at all