Help with reaction test
#1

hy,i have problem with reaction test,there is a one award(10k $)
there is a code:
Код:
#include <a_samp>

#define time1 240000 //this is the 4 minute minimum gap time
#define time2 180000 // this is the 3 minute max addon time

public OnFilterScriptInit()
{
	print("\n--------------------------------------");
	print(" ReactiontestFS by tomozj");
	print("--------------------------------------\n");
	
	SetTimer("ReactionTest",time1+random(time2),0);
	
	return 1;
}

public OnFilterScriptExit()
{
	return 1;
}

new reactionstr[9]; //randomly generated string
new reactioninprog; //what status the reactiontest is at
new reactionwinnerid; //id of the current reactiontest winner
new reactiongap; //timer to restart ReactionTest()

forward ReactionTest();
forward ReactionWin(playerid);
forward SetBack();

public OnPlayerText(playerid, text[])
{
	if(!strcmp(text, reactionstr, false))
	{
		if(reactioninprog == 2) ReactionWin(playerid);
		if(reactioninprog == 1)
		{
			if(reactionwinnerid == playerid)
			{
			SendClientMessage(playerid,0x247C1BFF,"You already won!");
			}
			else
			{
			SendClientMessage(playerid,0x247C1BFF,"You are too slow!");
			}
		}
		return 1;
	}
	
	return 1;
}

public OnPlayerCommandText(playerid, cmdtext[])
{
	if(!IsPlayerAdmin(playerid)) return 0; // if player isn't admin, ignore cmds
	
	if (strcmp("/test", cmdtext, true, 10) == 0)
	{
		ReactionTest();
		return 1;
	}

	if (strcmp("/output reactionstr", cmdtext, true, 10) == 0)
	{
	  new tmp[256];
		format(tmp,sizeof(tmp),"'reactionstr' output: %d",reactionstr);
	  SendClientMessageToAll(0x247C1BFF,tmp);
	  return 1;
	}
	return 0;
}

public ReactionTest()
{
	reactionstr = "";
	KillTimer(reactiongap);
	new str[256];
	new random_set[] = "ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789"; // the set of characters used for the generation of the string
 	for (new i = 0; i < 8; i++)
	 	{
  reactionstr[i] = random_set[random(sizeof(random_set))];
		}
	reactioninprog = 2;
	format(str,sizeof(str),"** First who type %s get $10,000!",reactionstr); // announcement
	print(str);
	SendClientMessageToAll(0xFFFF00FF,str);
}

public ReactionWin(playerid)
{
	GivePlayerMoney(playerid, 10000);
	SetTimer("SetBack",30,0); // required delay, for some reason.
	new reactionwinner[256];
	reactionwinnerid = playerid;
	new tempstring[256];
	GetPlayerName(playerid,reactionwinner,sizeof(reactionwinner));
	format(tempstring,sizeof(tempstring),"%s has won on reaction!",reactionwinner);
	SendClientMessageToAll(0xFFFF00FF,tempstring);
	reactiongap = SetTimer("ReactionTest",time1+random(time2),0); // sets the timer to restart ReactionTest()
 }

public SetBack()
{
	reactioninprog = 1;
}
and my question is how to make more awards,for example: to get a tuned car or something,pls help I really need this as soon as possible!
Tnx
Reply
#2

sry for DB,but pls help i really need this
Reply
#3

Use random
Reply
#4

I don't understand you can you explain better because I am not a good scripter
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)