Jump to content

Recommended Posts

Posted

@Shogun: Depends how you want to do it... if you can edit the script directly, @unloadnpcfile/@loadnpc would do it, otherwise you can add an OnWhisperGlobal label (or menu option, if you want):

// Whisper to WOE_CONTROL:
// itemID:amount{:itemID:amount{:...}}
OnWhisperGlobal:
if (getgmlevel() < .GMAccess) end;
dispbottom " ";
dispbottom "Current rewards:";
for(set .@i,0; .@i<getarraysize(.Reward); set .@i,.@i+2)
	dispbottom " > "+.Reward[.@i+1]+"x "+getitemname(.Reward[.@i]);
dispbottom "------------------------------------";
dispbottom "New rewards:";
explode(.@j$,@whispervar0$,":");
for(set .@i,0; .@i<getarraysize(.@j$); set .@i,.@i+2) {
	if (getitemname(atoi(.@j$[.@i])) == "" || getitemname(atoi(.@j$[.@i])) == "null" || .@j$[.@i+1] == "" || atoi(.@j$[.@i+1]) == 0) {
		dispbottom "**** Invalid parameters "+.@j$[.@i]+":"+.@j$[.@i+1]+" ****";
		end;
	}
	dispbottom " > "+.@j$[.@i+1]+"x "+getitemname(atoi(.@j$[.@i]));
	setarray .@k[getarraysize(.@k)],atoi(.@j$[.@i]),atoi(.@j$[.@i+1]);
}
if(select(" > ^0055FFConfirm...^000000: > ^777777Cancel^000000") == 1) {
	deletearray .Reward[0],getarraysize(.Reward);
	copyarray .Reward[0],.@k[0],getarraysize(.@k);
	dispbottom "Done.";
}
close;

Wow, thank you alot Euphy. That is amazing additional script for your woe controller. Maybe you could update your woe controller version for reward menu option :) To be honest i like your script style and i always refer to your script. The best woe script for now :)

Posted

aww i just noticed that your hunting mission is a great system to apply in my server.

but can you explain to me about the mission point. the range point for each mission if i set min and max mob 50~100, then i will know what price to set for a item.

Posted (edited)

Hi Euphy

can i ask you about the "Class Specialization" ? its about the additional skill lvls for mage classes and other classes aswell. like for example "Evoker Ring" For High Wizard it has lvl 12 Jupitel Thunder but the wierd part is the cast range when i used lvl 10 the cast range is normal but in lvl 11 and 12 you will get near to the monster before you cast Jupitel Thunder the cast range is gone. This also happend with other Rings with additional skill for ranged skills

Edited by Lelouch vi Britannia
Posted

@Golen Maker: It calls a function to see if it should return "a" or "an" before announcing. If you don't want it,

if (.Announce) announce strcharinfo(0)+" has created "+getitemname(.@q[0])+"!",0;

Posted

Hi Euphy,

I use your WOE Controller

can it modified to:

not actually auto reward to all member guild, but manually reward.

Only the Guild Master who uccupy the WOE castle after WOE end, get reward by talking to the NPC.

thank's before :D

  • 2 weeks later...
Posted

@TrojanWorm: Strange, I never noticed that. o.o My script reads names off of castle_db, but it seems the WOE FE script names don't match the ones in castle_db. I'll need more information on that (feel free to file a bug report), but the controller script itself is correct.

Posted

Hi Euphy, /oh

in your Hunting Mission. I was wondering, can you filter out some monsters. for example. The Mission i got is to hunt 50 Xmas Goblin. If Xmas goblin do not spawn in the map regularly, how can i finish it? i know you can just drop it but the delay timer won't reset. I also know you can remove the delay time, but i want the mission to have a delay. It think it's efficient if you can filter out the monsters it picks because it doesn't spawn in a map or there is one ONE type of that monster in a map and spawn every hour. This is just a suggestion. Thanks. Your scripts are awesome BTW :)/no1

Posted (edited)

Eurphy, your WoE script rewarding system can be kind of exploided, if the players of the winning team open as many accounts as possible, I made a little change in it and maybe you could offer it to the other server owners as well.

This is Mac based(harmony Required, and it could probably be a bit more clean, but I was kind of in a rush when I wrote it)

	   	 query_sql ("SELECT guild_member.account_id, guild_member.char_id, login.last_mac FROM `guild_member`, `login` WHERE guild_id = '"+.@guild+"' AND guild_member.account_id = login.account_id", .@acc, .@char, .@mac$);
			for(set .@j,0; .@j<getarraysize(.@acc); set .@j,.@j+1)
				if (!(getd(".@mc" + .@mac$[.@j])) && isloggedin(.@acc[.@j],.@char[.@j])) {
					for(set .@k,0; .@k<getarraysize(.Reward); set .@k,.@k+2)
						getitem .Reward[.@k], .Reward[.@k+1], .@acc[.@j];
					setd (".@mc" + .@mac$[.@j]),1;
					message rid2name(.@acc[.@j]),"You have been rewarded for conquering "+getcastlename(.Castles$[.@i])+"."; } } }
return;

Edited by Jeroen
Posted

@LuLu: Yeah, that's the disadvantage to using an SQL query to retrieve random monsters. If you need, you can create a separate database for all possible monsters and use a simple query to select from that, but I didn't want to do that since there are so few exceptions. :x

@Jeroen: Goddameit actually wrote the original reward function with IP checks, but it creates a very large loop XD. I may include it as a feature in the future, but I never intended to do much with the reward function to begin with. :P

  • Upvote 1

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...