#include <a_samp>
#include <streamer>
#include <zcmd>
new CP_tatoo; // The name of the checkpoint add whatever you want :)
#define COLOR_RED 0xFF0000AA
#define COLOR_BLUE 0x0000FFAA
#define COLOR_WHITE 0xFFFFFFAA
#define COLOR_YELLOW 0xFFFF00AA
#define COLOR_GREEN 0x33AA33AA
#define COL_WHITE "{FFFFFF}"
#define COL_RED "{F81414}"
#define COL_GREEN "{00FF22}"
#define COL_LIGHTBLUE "{00CED1}"
#define COLOR_ORANGE 0xFFA500AA
new ROBBING_TATOO[MAX_PLAYERS]; //used when you rob
new tatoorobbedrecently =0; // to make the players wait before robbing more
CP_tatoo = CreateDynamicCP(-201.2237,-42.7339,1002.2734, 2.0, .interiorid = 3); // creating the checkpoint CP_tatoo
CreateDynamicCP(Float:x, Float:y, Float:z, Float:size, .interiorid = the id);
public OnPlayerEnterDynamicCP(playerid, checkpointid) //Add this anywhere
{
if(checkpointid == CP_tatoo) //Checking if player is in the checkpoint "Tatoo"
{
SendClientMessage(playerid, COLOR_RED, "Start robbery by typing /robthis"); //Sending message so that player knows that to rob. he must type this command
}
return 1;
}
CMD:robthis(playerid, params[])
{
#pragma unused params // we dont need the params
if(IsPlayerInDynamicCP(playerid, CP_tatoo)) // Checking if player is in the checkpoint
{
if(tatoorobbedrecently >=1) //checking if tatoo shop has been robbed recently
{
SendClientMessage(playerid, COLOR_RED, "Tatoo Shop has been robbed recently"); // sending error message
return 1;
}
ROBBING_TATOO[playerid] = 60; // setting the robbery timer
tatoorobbedrecently =180; // Time the players needs to wait for starting an another robbery in the same place
}
return 1;
}
forward ServerRobbery();
SetTimer("ServerRobbery",1000,1);// Ticks every 1 second
public ServerRobbery()
{
for(new i=0; i<MAX_PLAYERS; i++)
{
if(IsPlayerConnected(i)) // checking if player connected
{
//ROBBERIES
if(ROBBING_TATOO[i] > 1) // Checking if robbery time is above 1
{
ROBBING_TATOO[i] --; // Decreasing time
new time[20]; //adding time variable
format(time,sizeof(time),"Robbery Time: %d",ROBBING_TATOO[i]);
GameTextForPlayer(i,time,500,3); //shows gametext showing the time remaining for the robbery
}
if(ROBBING_TATOO[i] == 1) // IF the timer reached 1
{
new string[64], pName[MAX_PLAYER_NAME];// getting player name
GetPlayerName(i,pName,MAX_PLAYER_NAME);
SendClientMessage(i, COLOR_GREEN, "Robbery Complete"); //sending message to the player that robbery was complete
SetPlayerWantedLevel(i, GetPlayerWantedLevel(i) + 1); //giving player 1 wanted level
ROBBING_TATOO[i] =0; // RESET timer
new mrand =random(50000);
GivePlayerScore(i,1);
format(string,sizeof(string),"[ROBBERY] %s(%d) has robbed a total of $%d from the tatoo shop! LOL!",pName,i,mrand);
SendClientMessageToAll(COLOR_RED,string);
GivePlayerMoney(i, mrand);
}
}
}
return 1;
}
public OnPlayerLeaveDynamicCP(playerid, checkpointid)
{
if(checkpointid == CP_tatoo) // checking if the player is leaving the CP tatoo
{
if(ROBBING_TATOO[playerid] >= 1) //checking if the person was robbing and his robbery timer was above 1
{
SendClientMessage(playerid, COLOR_RED, "[ERROR]Robbery Failed"); //Error message that he failed
ROBBING_TATOO[playerid] =0; // Setting Robbing_tatoo to 0. to stop the counter
return 1;
}
}
return 1;
}
ROBBING_SEXSHOP[playerid] =0;
ROBBING_TATOO[playerid] =0;
C:\Users\Owner\Downloads\Server (1) (1)\Server (1)\The_Server\gamemodes\Rob_System.pwn(59) : error 021: symbol already defined: "SetTimer" C:\Users\Owner\Downloads\Server (1) (1)\Server (1)\The_Server\gamemodes\Rob_System.pwn(83) : error 017: undefined symbol "GivePlayerScore" Pawn compiler 3.2.3664 Copyright © 1997-2006, ITB CompuPhase 2 Errors.
I am not sure if i was able to fix my earlyer problem(i probly did a mistake) but now it compiles. My question is where defuq is the tatoo shop? XD
|
I am not sure if i was able to fix my earlyer problem(i probly did a mistake) but now it compiles. My question is where defuq is the tatoo shop? XD
|
good attempt but its some how misleading e.g: new time[20]; //adding time variable
this actually is declaring an array to be used as string which will be used to display a message. So better to write it like //declaring a string to send a message or something like that. ROBBING_TATOO[playerid] =0; // RESET THE TIMER well timer is quite different thing. It is more like a counter variable or a variable to be used as counter unless it reach specific value. Therefore it need some improved explanations at many points. Thats just few things to spot for now but it has to be improved. |
Code:
C:\Users\Owner\Downloads\Server (1) (1)\Server (1)\The_Server\gamemodes\Rob_System.pwn(59) : error 021: symbol already defined: "SetTimer" C:\Users\Owner\Downloads\Server (1) (1)\Server (1)\The_Server\gamemodes\Rob_System.pwn(83) : error 017: undefined symbol "GivePlayerScore" Pawn compiler 3.2.3664 Copyright © 1997-2006, ITB CompuPhase 2 Errors. |
stock GivePlayerScore( playerid, score ) SetPlayerScore( playerid, GetPlayerScore( playerid ) + score );
GivePlayerMoney(i, mrand);