#1

hey im making race system...but now when i have to do that on /startrace appear a checkpoint and when he comes to checkpoint the other appear and so...and .....
THATS MY CODE :S :
PHP код:
// DONT FORGET TO MAKE RACE SYSTEM + MSG's LIKE ...PLAYER IS BACK ON DUCATI...
// LOOK FOR SSCANF
#include <a_samp>
#include <zcmd>
#include <sscanf>
#define COLOR_YELLOW 0xFFFF00FF
#define COLOR_BLUE 0x0000FFFF
#define COLOR_GREEN 0x00FF00FF
#define COLOR_RED 0xFF0000FF
new PlayerMakingRace[MAX_PLAYERS];
new 
RaceInProgress;
new 
PlayerInRace[MAX_PLAYERS];
forward RaceFirst(playerid);
CMD:makerace(playerid,params[])
{
    new 
playertext[100],File:cpoint fopen("Checkpoints.txt"io_append);
    if (
PlayerMakingRace[playerid] == 0)
    if(
sscanf(params,"s",playertext))  SendClientMessage(playerid0xFF0000AA"Usage: \"/makerace <race name>\"");
    else
    if (
IsPlayerAdmin(playerid) == 1)
    {
    
format(playertext,sizeof(playertext),"Race Name: %s\r\n",playertext);
    
fwrite(cpoint,playertext);
    
fclose(cpoint);
    
SendClientMessage(playeridCOLOR_YELLOW,"Now use /addcheckpoint");
    
PlayerMakingRace[playerid] = 1;
    }
    return 
1;
}
CMD:addcheckpoint(playerid,params[])
{
    if (
IsPlayerAdmin(playerid) == && PlayerMakingRace[playerid] == 1)
    {
    
SendClientMessage(playeridCOLOR_GREEN,"Checkpoint Added!");
    
SendClientMessage(playeridCOLOR_GREEN,"Use /stopmakerace when you finish adding checkpoints");
    new 
Float:x,Float:y,Float:z,File:cpoint fopen("Checkpoints.txt"io_append),cckpoint[200];
    
GetPlayerPos(playerid,x,y,z);
    
format(cckpoint,sizeof(cckpoint),"SetPlayerRaceCheckpoint(playerid,2,%f,%f,%f,0,0,0,3);\r\n",x,y,z);
    
fwrite(cpoint,cckpoint);
    
fclose(cpoint);
    }
    return 
1;
}
CMD:stopmakerace(playerid,params[])
{
    if (
PlayerMakingRace[playerid] == 1)
    {
    
PlayerMakingRace[playerid] = 0;
    
SendClientMessage(playeridCOLOR_GREEN,"You finished job..All positions are saved in Checkpoints.txt!");
    }
    return 
1;
}
CMD:startrace(playerid,params[])
{
    new 
playername[50];
    if (
IsPlayerAdmin(playerid) == 1)
    {
    
GetPlayerName(playerid,playername,sizeof(playername));
    
format(playername,sizeof(playername),"%s has started a race. Type /joinrace to join!",playername);
    
SendClientMessageToAll(COLOR_YELLOW,playername);
    
RaceInProgress=1;
    
ShowPlayerDialog(playerid531,DIALOG_STYLE_LIST,"Races","LV AIRPORT 3 LAPS","OK","Cancel");
    }
    return 
1;
}
CMD:joinrace(playerid,params[])
{
    new 
playername[50];
    if (
RaceInProgress==)
    {
    
GetPlayerName(playerid,playername,sizeof(playername));
    
format(playername,sizeof(playername),"%s has joined the race!",playername);
    
SendClientMessageToAll(COLOR_YELLOW,playername);
    
PlayerInRace[playerid] = 1;
    }
    return 
1;
}
public 
OnDialogResponse(playeriddialogidresponselistiteminputtext[])
{
if(
response)// They pressed the first button.
    
{
    switch(
dialogid)// If you only have one dialog, then this isn't required, but it's neater for when you implement more dialogs.
        
{
        case 
531:// Our dialog!
            
{
               switch(
listitem)// Checking which listitem was selected
            
{
                case 
0:// The first item listed
                
{
                return 
RaceFirst();
                }
            }
            }
    }
    }
return 
1;
}
public 
RaceFirst(playerid)

Reply
#2

BOOM...BAAM..hitler is back:S
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)