Dastgir

plugin
Restock System

31 posts in this topic

hello @Dastgir does it restock item's after all item consumed?

or

does it restock item's which are consumed? e.g if u consumed 20 fly wing out of 50, it should restock 20 fly wing only.

that way player will not run out of pot's in PvP & WoE else every time player has to check how much pot's left. 

Edited by caspe

Share this post


Link to post
Share on other sites

Posted (edited)

Quote

does it restock item's after all item consumed?

It will check if the last of selected item was consumed and do ::OnRestock NPC Event to restock the items to the selected amount. Works very well and without any ms of lag. Thanks to @Dastgir
 

Fixed and corrected. Works fine on current branch.

How to enable:
Move "restock.c" to "src/plugins" and open "Makefile" with editor. add "restock" to line "MYPLUGINS = "


Move "atcommand_restock.txt" to "npc/custom" and add "npc/custom/atcommand_restock.txt" to your "scripts_custom.

conf" for autostart.Open file "conf/plugins.conf" and add "  "restock",  " to enable this plugin after you'll restart the map serve

Do "make all" on console. To enable all changes. Enjoy @restock and @restock2

 

If you want to disable @restock on Castles/WoE just configure your atcommand_restock.txt and do a mapcheck on "OnRestock:" like

 

		getmapxy([email protected]$, [email protected], [email protected], UNITTYPE_PC);

		if (getmapflag([email protected]$, "mf_gvg_castle") == 1) {
			dispbottom "Atcommand disabled on this map.";
			end;
		}

 

restock.c

atcommand_restock.txt

SQL Table:

 

CREATE TABLE `restock` (
	`charid` INT(10) NOT NULL,
	`restockid` INT(6) NOT NULL,
	`restkq` INT(5) NOT NULL,
	`restkf` INT(10) NOT NULL DEFAULT '1'
)
COLLATE='latin1_swedish_ci'
ENGINE=MyISAM
;

 

Edited by Christian [epicRO]

Share this post


Link to post
Share on other sites

If you want to make Arrows and Bullets Auto-Equip after they have been restocked:

 

		if ([email protected]){
			[email protected] = restkid;
	++		if (getiteminfo([email protected], ITEMINFO_TYPE) == 10) autoequip([email protected], 1);
			restock_item([email protected],[email protected],[email protected]);
			if ([email protected] == 1) [email protected]$ = "Storage";
			if ([email protected] == 2) [email protected]$ = "Guild Storage";
			sleep2 500;
			if (countitem([email protected]) == 0) {
				announce "Trying to restock "[email protected]+"x "[email protected]+" from "[email protected]$+". Failed. Amount does not fit.",bc_self,0xFF8F01;
			}
	++		if (getiteminfo([email protected], ITEMINFO_TYPE) == 10) autoequip([email protected], 0);
			restkid = 0;
		}

 

Share this post


Link to post
Share on other sites
3 hours ago, Questune09 said:

@Dastgir if you dont mind can i request a restock system for rathena emulator ^_^ i like this script using herc very nice

better solution use hercules

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!


Register a new account

Sign in

Already have an account? Sign in here.


Sign In Now