#1

why cops can plant bomb and why terrorists can defuse i only want cops can defuse-terrorists can plant but i don't know how to add it here:

Код:
    // This is a comment
    // uncomment the line below if you want to write a filterscript
    //#define FILTERSCRIPT

    // includes
    #include <a_samp>
    #include <streamer>
    #include <sscanf2>
    #include <zcmd>
    #include <foreach>
    // normale defines zoals kleuren etc, dingen voor IEDEREEN
    // red, blue, green FF0000  0000FF   00FF00 ( gewoon om iets te onthouden xD)
    #define COLOR_RED 0xFF0000FF
    #define COLOR_GREEN 0x00FF00FF
    #define COLOR_YELLOW 0xFFFF00AA
    #define COLOR_PURPLE 0xFF00FFAA
    #define ORANGE 0xFF8000AA
    #define COLOR_BLUE 0x0000FFFF
    #define COLOR_ORANGE 0xFF9000FF
    #define COLOR_GREY 0xAFAFAFAA
    #define COLOR_WHITE 0xFFFFFFAA
    #define COLOR_DARKBLUE 0x00007AFF
    #define COLOR_PINK 0xFF007AFF
    #define COLOR_BLACK 0x000000FF
    #define COLOR_LIGHTGREEN 0x82FF82FF
    #define lightblue 0x33CCFFAA
    #define red 0xFF0000AA
    #define DIALOG_CMDS   30538

    // de defines voor de teams, zoals je kunt zien zijn dat terrorists en army, komen later nog stunt etc bij
    #define C1 0
    #define T1 1
    // de team kleuren die ze krijgen bij spawn, army is blauw en terrorists is rood

    // de callback die we gaan gebruiken om de teams te onderscheiden
    new AllTeams[MAX_PLAYERS];
    new BombExplodeTimer;
    new TeamTerrorists;
    new Bomb, PlantbombCP;
    new BombPlanted = 0;
    new DefuseTimer, Defusing;
    // sets the timer that says how many seconds till bomb explodes
    new ExplodeBomb[MAX_PLAYERS];
    // random spawns voor elke class
    // army base randomspawns



    public OnFilterScriptInit()
    {
    
    PlantbombCP = CreateDynamicCP(259.2780,1855.8953,8.7578, 6.0, -1, -1, -1, 100.0);
            print("\n--------------------------------------");
            print(" Blank Filterscript by your name here");
            print("--------------------------------------\n");
            return 1;
    }

    public OnFilterScriptExit()
    {

            

            return 1;
    }


    main()
    {
            print("\n----------------------------------");
            print(" Blank Gamemode by your name here");
            print("----------------------------------\n");
    }


    public OnGameModeInit()
    {
            // Don't use these lines if it's a filterscript
            return 1;
    }

    public OnGameModeExit()
    {
            return 1;
    }

    public OnPlayerRequestClass(playerid, classid)
    {

            return 1;
    }

    public OnPlayerConnect(playerid)
    {
            return 1;
    }

    public OnPlayerDisconnect(playerid, reason)
    {
            return 1;
    }

    public OnPlayerSpawn(playerid)
    {
            return 1;
    }

    public OnPlayerDeath(playerid, killerid, reason)
    {
            return 1;
    }

    public OnVehicleSpawn(vehicleid)
    {
            return 1;
    }

    public OnVehicleDeath(vehicleid, killerid)
    {
            return 1;
    }

    public OnPlayerText(playerid, text[])
    {
            return 1;
    }

    public OnPlayerCommandText(playerid, cmdtext[])
    {
            if (strcmp("/mycommand", cmdtext, true, 10) == 0)
            {
                    // Do something here
                    return 1;
            }
            return 0;
    }

    public OnPlayerEnterVehicle(playerid, vehicleid, ispassenger)
    {
            return 1;
    }

    public OnPlayerExitVehicle(playerid, vehicleid)
    {
            return 1;
    }

    public OnPlayerStateChange(playerid, newstate, oldstate)
    {
            return 1;
    }

    public OnPlayerEnterCheckpoint(playerid)
    {
            return 1;
    }

    public OnPlayerLeaveCheckpoint(playerid)
    {
            return 1;
    }

    public OnPlayerEnterRaceCheckpoint(playerid)
    {
            return 1;
    }

    public OnPlayerLeaveRaceCheckpoint(playerid)
    {
            return 1;
    }

    public OnRconCommand(cmd[])
    {
            return 1;
    }

    public OnPlayerRequestSpawn(playerid)
    {
            return 1;
    }

    public OnObjectMoved(objectid)
    {
            return 1;
    }

    public OnPlayerObjectMoved(playerid, objectid)
    {
            return 1;
    }

    public OnPlayerPickUpPickup(playerid, pickupid)
    {
            return 1;
    }

    public OnVehicleMod(playerid, vehicleid, componentid)
    {
            return 1;
    }

    public OnVehiclePaintjob(playerid, vehicleid, paintjobid)
    {
            return 1;
    }

    public OnVehicleRespray(playerid, vehicleid, color1, color2)
    {
            return 1;
    }

    public OnPlayerSelectedMenuRow(playerid, row)
    {
            return 1;
    }

    public OnPlayerExitedMenu(playerid)
    {
            return 1;
    }

    public OnPlayerInteriorChange(playerid, newinteriorid, oldinteriorid)
    {
            return 1;
    }

    public OnPlayerKeyStateChange(playerid, newkeys, oldkeys)
    {
            return 1;
    }

    public OnRconLoginAttempt(ip[], password[], success)
    {
            return 1;
    }

    public OnPlayerUpdate(playerid)
    {
            return 1;
    }

    public OnPlayerStreamIn(playerid, forplayerid)
    {
            return 1;
    }

    public OnPlayerStreamOut(playerid, forplayerid)
    {
            return 1;
    }

    public OnVehicleStreamIn(vehicleid, forplayerid)
    {
            return 1;
    }

    public OnVehicleStreamOut(vehicleid, forplayerid)
    {
            return 1;
    }

    public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
    {
            return 1;
    }

    public OnPlayerClickPlayer(playerid, clickedplayerid, source)
    {
            return 1;
    }

    public OnPlayerEnterDynamicCP(playerid, checkpointid)
    {
            if(checkpointid == PlantbombCP)
            {
                if(AllTeams[playerid] == C1 && (BombPlanted == 1))
                    {
                        DefuseTimer = SetTimerEx("DefuseBomb", 10000, false, "is", playerid);
                        Defusing = 1;
                        GameTextForAll("~b~Cops is trying to defuse the bomb!!~n~~r~Terrorists, Try to stop them!", 3000, 3);
                        return 1;
                    }
                    else return 0;
            }
            return 1;
    }
    public OnPlayerLeaveDynamicCP(playerid, checkpointid)
    {
            if(checkpointid == PlantbombCP && (Defusing == 1 && (AllTeams[playerid] == C1)))
            {
                KillTimer(DefuseTimer);
                Defusing = 0;
                GameTextForAll("~b~Cops Failed to defuse the bomb", 2000, 3);
            }
            return 1;
    }
    forward DefuseBomb(playerid);
    public DefuseBomb(playerid)
    {
            if(Defusing == 1)
            {
                    KillTimer(DefuseTimer);
                    KillTimer(BombExplodeTimer);
                    KillTimer(ExplodeBomb[playerid]);
                    GameTextForAll("~b~Cops successfully defused the bomb!", 3000, 3);
                    GivePlayerMoney(playerid, 10000);
                    Defusing = 0;
                    BombPlanted = 0;
                    DestroyObject(Bomb);
                    SetPlayerScore(playerid, GetPlayerScore(playerid) +10);
                    SendClientMessage(playerid, COLOR_GREEN, "you earned {FF0000}$10000 {00FF00}and {FF0000}10 score {00FF00}for defusing the bomb");
                    return 1;
            }
            return 1;
    }
    CMD:plantbomb(playerid, params[])
    {
            if(IsPlayerInDynamicCP(playerid, PlantbombCP) && (AllTeams[playerid] == TeamTerrorists && (BombPlanted == 0)))
            {
                    Bomb = CreateObject(3786,259.2780,1855.8953,8.7578,196.8689,0,0, 100.0);
                    BombExplodeTimer = SetTimer("BombExplodes", 110000, 0);
                    GameTextForAll("~r~BOMB HAS BEEN PLANTED!", 4000, 3);
                    BombPlanted = 1;
            }
            else if(IsPlayerInDynamicCP(playerid, PlantbombCP) && (AllTeams[playerid] == TeamTerrorists && (BombPlanted != 0))) return SendClientMessage(playerid, COLOR_RED, "The bomb is already planted!");
            return 1;
    }
    forward BombExplodes(playerid);
    public BombExplodes(playerid)
    {
            GameTextForAll("~R~Bomb explodes in 10 seconds!!, get the hell out of there!", 3000, 3);
        ExplodeBomb[playerid] = SetTimerEx("ExplodeBombTimer", 10000, false, "d", playerid);
        return 1;
    }
    forward ExplodeBombTimer(playerid);
    public ExplodeBombTimer(playerid)
    {
            CreateExplosion(259.2780,1855.8953,8.7578, 7, 5000.0);
            DestroyObject(Bomb);
            GameTextForAll("~r~BOOOOM!!!", 1000, 3);
            BombPlanted = 0;
            SendClientMessage(playerid, COLOR_GREEN, "you earned {FF0000}$10000 {00FF00} and {FF0000}10 score {00FF00} for planting the bomb in cops base");
            GivePlayerMoney(playerid, 10000);
            SetPlayerScore(playerid, GetPlayerScore(playerid) +10);
            return 1;
    }
Reply
#2

Maybe because you are not assigning any value (a team id) to this variable: AllTeams[playerid].

Make your OnPlayerRequestClass to ask for a team, Terrorists or Counter-Terrorists, or make a command for that, or assign a team to every player based on whether his id is odd or even, it's your choice.
Reply
#3

can u create

use

Quote:

// This is a comment
// uncomment the line below if you want to write a filterscript
//#define FILTERSCRIPT

// includes
#include <a_samp>
#include <streamer>
#include <sscanf2>
#include <zcmd>
#include <foreach>
// normale defines zoals kleuren etc, dingen voor IEDEREEN
// red, blue, green FF0000 0000FF 00FF00 ( gewoon om iets te onthouden xD)
#define COLOR_RED 0xFF0000FF
#define COLOR_GREEN 0x00FF00FF
#define COLOR_YELLOW 0xFFFF00AA
#define COLOR_PURPLE 0xFF00FFAA
#define ORANGE 0xFF8000AA
#define COLOR_BLUE 0x0000FFFF
#define COLOR_ORANGE 0xFF9000FF
#define COLOR_GREY 0xAFAFAFAA
#define COLOR_WHITE 0xFFFFFFAA
#define COLOR_DARKBLUE 0x00007AFF
#define COLOR_PINK 0xFF007AFF
#define COLOR_BLACK 0x000000FF
#define COLOR_LIGHTGREEN 0x82FF82FF
#define lightblue 0x33CCFFAA
#define red 0xFF0000AA
#define DIALOG_CMDS 30538

// de defines voor de teams, zoals je kunt zien zijn dat terrorists en army, komen later nog stunt etc bij
#define C1 0
#define T1 1
// de team kleuren die ze krijgen bij spawn, army is blauw en terrorists is rood

// de callback die we gaan gebruiken om de teams te onderscheiden
new AllTeams[MAX_PLAYERS];
new BombExplodeTimer;
new TeamTerrorists;
new Bomb, PlantbombCP;
new BombPlanted = 0;
new DefuseTimer, Defusing;
// sets the timer that says how many seconds till bomb explodes
new ExplodeBomb[MAX_PLAYERS];
// random spawns voor elke class
// army base randomspawns



public OnFilterScriptInit()
{

PlantbombCP = CreateDynamicCP(259.2780,1855.8953,8.7578, 6.0, -1, -1, -1, 100.0);
print("\n--------------------------------------");
print(" Blank Filterscript by your name here");
print("--------------------------------------\n");
return 1;
}

public OnFilterScriptExit()
{



return 1;
}


main()
{
print("\n----------------------------------");
print(" Blank Gamemode by your name here");
print("----------------------------------\n");
}


public OnGameModeInit()
{
// Don't use these lines if it's a filterscript
return 1;
}

public OnGameModeExit()
{
return 1;
}

public OnPlayerRequestClass(playerid, classid)
{

return 1;
}

public OnPlayerConnect(playerid)
{
return 1;
}

public OnPlayerDisconnect(playerid, reason)
{
return 1;
}

public OnPlayerSpawn(playerid)
{
return 1;
}

public OnPlayerDeath(playerid, killerid, reason)
{
return 1;
}

public OnVehicleSpawn(vehicleid)
{
return 1;
}

public OnVehicleDeath(vehicleid, killerid)
{
return 1;
}

public OnPlayerText(playerid, text[])
{
return 1;
}

public OnPlayerCommandText(playerid, cmdtext[])
{
if (strcmp("/mycommand", cmdtext, true, 10) == 0)
{
// Do something here
return 1;
}
return 0;
}

public OnPlayerEnterVehicle(playerid, vehicleid, ispassenger)
{
return 1;
}

public OnPlayerExitVehicle(playerid, vehicleid)
{
return 1;
}

public OnPlayerStateChange(playerid, newstate, oldstate)
{
return 1;
}

public OnPlayerEnterCheckpoint(playerid)
{
return 1;
}

public OnPlayerLeaveCheckpoint(playerid)
{
return 1;
}

public OnPlayerEnterRaceCheckpoint(playerid)
{
return 1;
}

public OnPlayerLeaveRaceCheckpoint(playerid)
{
return 1;
}

public OnRconCommand(cmd[])
{
return 1;
}

public OnPlayerRequestSpawn(playerid)
{
return 1;
}

public OnObjectMoved(objectid)
{
return 1;
}

public OnPlayerObjectMoved(playerid, objectid)
{
return 1;
}

public OnPlayerPickUpPickup(playerid, pickupid)
{
return 1;
}

public OnVehicleMod(playerid, vehicleid, componentid)
{
return 1;
}

public OnVehiclePaintjob(playerid, vehicleid, paintjobid)
{
return 1;
}

public OnVehicleRespray(playerid, vehicleid, color1, color2)
{
return 1;
}

public OnPlayerSelectedMenuRow(playerid, row)
{
return 1;
}

public OnPlayerExitedMenu(playerid)
{
return 1;
}

public OnPlayerInteriorChange(playerid, newinteriorid, oldinteriorid)
{
return 1;
}

public OnPlayerKeyStateChange(playerid, newkeys, oldkeys)
{
return 1;
}

public OnRconLoginAttempt(ip[], password[], success)
{
return 1;
}

public OnPlayerUpdate(playerid)
{
return 1;
}

public OnPlayerStreamIn(playerid, forplayerid)
{
return 1;
}

public OnPlayerStreamOut(playerid, forplayerid)
{
return 1;
}

public OnVehicleStreamIn(vehicleid, forplayerid)
{
return 1;
}

public OnVehicleStreamOut(vehicleid, forplayerid)
{
return 1;
}

public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
{
return 1;
}

public OnPlayerClickPlayer(playerid, clickedplayerid, source)
{
return 1;
}

public OnPlayerEnterDynamicCP(playerid, checkpointid)
{
if(checkpointid == PlantbombCP)
{
if(AllTeams[playerid] == C1 && (BombPlanted == 1))
{
DefuseTimer = SetTimerEx("DefuseBomb", 10000, false, "is", playerid);
Defusing = 1;
GameTextForAll("~b~Cops is trying to defuse the bomb!!~n~~r~Terrorists, Try to stop them!", 3000, 3);
return 1;
}
else return 0;
}
return 1;
}
public OnPlayerLeaveDynamicCP(playerid, checkpointid)
{
if(checkpointid == PlantbombCP && (Defusing == 1 && (AllTeams[playerid] == C1)))
{
KillTimer(DefuseTimer);
Defusing = 0;
GameTextForAll("~b~Cops Failed to defuse the bomb", 2000, 3);
}
return 1;
}
forward DefuseBomb(playerid);
public DefuseBomb(playerid)
{
if(Defusing == 1)
{
KillTimer(DefuseTimer);
KillTimer(BombExplodeTimer);
KillTimer(ExplodeBomb[playerid]);
GameTextForAll("~b~Cops successfully defused the bomb!", 3000, 3);
GivePlayerMoney(playerid, 10000);
Defusing = 0;
BombPlanted = 0;
DestroyObject(Bomb);
SetPlayerScore(playerid, GetPlayerScore(playerid) +10);
SendClientMessage(playerid, COLOR_GREEN, "you earned {FF0000}$10000 {00FF00}and {FF0000}10 score {00FF00}for defusing the bomb");
return 1;
}
return 1;
}
CMDlantbomb(playerid, params[])
{
if(IsPlayerInDynamicCP(playerid, PlantbombCP) && (AllTeams[playerid] == TeamTerrorists && (BombPlanted == 0)))
{
Bomb = CreateObject(3786,259.2780,1855.8953,8.7578,196.86 89,0,0, 100.0);
BombExplodeTimer = SetTimer("BombExplodes", 110000, 0);
GameTextForAll("~r~BOMB HAS BEEN PLANTED!", 4000, 3);
BombPlanted = 1;
}
else if(IsPlayerInDynamicCP(playerid, PlantbombCP) && (AllTeams[playerid] == TeamTerrorists && (BombPlanted != 0))) return SendClientMessage(playerid, COLOR_RED, "The bomb is already planted!");
return 1;
}
forward BombExplodes(playerid);
public BombExplodes(playerid)
{
GameTextForAll("~R~Bomb explodes in 10 seconds!!, get the hell out of there!", 3000, 3);
ExplodeBomb[playerid] = SetTimerEx("ExplodeBombTimer", 10000, false, "d", playerid);
return 1;
}
forward ExplodeBombTimer(playerid);
public ExplodeBombTimer(playerid)
{
CreateExplosion(259.2780,1855.8953,8.7578, 7, 5000.0);
DestroyObject(Bomb);
GameTextForAll("~r~BOOOOM!!!", 1000, 3);
BombPlanted = 0;
SendClientMessage(playerid, COLOR_GREEN, "you earned {FF0000}$10000 {00FF00} and {FF0000}10 score {00FF00} for planting the bomb in cops base");
GivePlayerMoney(playerid, 10000);
SetPlayerScore(playerid, GetPlayerScore(playerid) +10);
return 1;
}

Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)