Jump to content
  • 0
Sign in to follow this  
WhiteEagle

Guild Quests

Question

It's possible to make quests countable for the whole Guild? 
Excample: Someone start a Guild quest (Kill 100 Mantis), all Guild mates can kill them too (without being in a Party)

Share this post


Link to post
Share on other sites

4 answers to this question

Recommended Posts

  • 1

what bWolfie meant is that instead of using a character variable to do the quest, you can use a global variable and write it as if it was any quest you ever made. Ex:
 

.GuildID = getcharid( CHAR_ID_GUILD );
  if $MyGuildQuestStep[.GuildID] == 0{
  	mes "Do you want to start this quest?";
  	if(select("YES:NO")==2){
  		close;
  	}
  	mes "You started this quest";
  	$MyGuildQuestStep[.GuildID] = 1;
	close;
  }

since that is a global variable and you want to make a hunting quest, make this variable increase for every kill until it reaches the amount you want.

Share this post


Link to post
Share on other sites
  • 0

Yes it is possible. You need to either use a custom SQL table combined with getcharid(CHAR_ID_GUILD) or use the '$' global permanent variable.

Example of using '$' variable:

if ($Guild_Quest[getcharid(CHAR_ID_GUILD)] != 0) {
    mes("Your guild has already done this quest.");
    close();
}

$Guild_Quest[getcharid(CHAR_ID_GUILD)] = 1;
mes("You completed the quest for your guild.");
close();

Example of SQL query:

if (query_sql(sprintf("SELECT * FROM `guild_quest` WHERE `guild_id` = %d",  getcharid(CHAR_ID_GUILD))) > 0) {
    mes("Your guild has already done this quest.");
    close();
}

query_sql(sprintf("INSERT INTO `guild_quest`(`guild_id`, `value`, `comment`) VALUES(%d, 1, 'Guild quest 1')", getcharid(CHAR_ID_GUILD)));
mes("You completed the quest for your guild.");
close();
Edited by bWolfie

Share this post


Link to post
Share on other sites

Please sign in to comment

You will be able to leave a comment after signing in



Sign In Now
Sign in to follow this  

×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use.