Jump to content
  • 0

pomoc Podmienka


vopojtepek

Dotaz

Zdravím, vysvetlil by mi niekto ako mám správne spraviť podmienku ? lebo návodu od Petra som moc nepochopil ... Chcem spraviť to že keď bude hráč v niakom vozidle tak sa mu ukáže Dialog a tam si vybere Opraviť.. no tiež aby mu to opravilo a strhlo peniaze iba ak je v aute ...

#include <a_samp>
//===================================
//              Zamestnania
//===================================
new pracovnyurad;
new pizza[MAX_PLAYERS];
new gps_uradprace[MAX_PLAYERS];
//===================================
//            Firmy & Služby
//===================================
new autosalon;

main()
{
	print("\n----------------------------------");
	print(" Mod 0.1a");
	print("----------------------------------\n");
}


public OnGameModeInit()
{
	SetGameModeText("Mod 0.1a");
	AddPlayerClass(0,1687.3682,1448.5511,10.7685,272.5189,0,0,0,0,0,0);
	pracovnyurad = CreatePickup(1239, 1, 2023.5581, 1916.2732, 12.3315, -1);
	autosalon = CreatePickup(1239, 1, 2062.3059, 2238.2158, 10.2011, -1);
	return 1;
}

public OnGameModeExit()
{
	return 1;
}

public OnPlayerRequestClass(playerid, classid)
{
	SetPlayerPos(playerid, 1958.3783, 1343.1572, 15.3746);
	SetPlayerCameraPos(playerid, 1958.3783, 1343.1572, 15.3746);
	SetPlayerCameraLookAt(playerid, 1958.3783, 1343.1572, 15.3746);
	return 1;
}

public OnPlayerConnect(playerid)
{
    new pname[MAX_PLAYER_NAME], string[22 + MAX_PLAYER_NAME];
    GetPlayerName(playerid, pname, sizeof(pname));
    format(string, sizeof(string), "%s sa pripojil na server", pname);
    SendClientMessageToAll(0xAAAAAAAA, string);
    ShowPlayerDialog(playerid, 1, DIALOG_STYLE_MSGBOX, "{0000FF}Zdravíme tě, vítej na našem serveru.","Pravidlá sú následovné:","Súhlasím","Nesúhlasím");
	return 1;
}

public OnPlayerDisconnect(playerid, reason)
{
    new pname[MAX_PLAYER_NAME], string[39 + MAX_PLAYER_NAME];
    GetPlayerName(playerid, pname, sizeof(pname));
    switch(reason)
    {
        case 0: format(string, sizeof(string), "%s sa odpojil zo servera.", pname);
        case 1: format(string, sizeof(string), "%s sa odpojil zo servera.", pname);
        case 2: format(string, sizeof(string), "%s sa odpojil zo servera.", pname);
    }
    SendClientMessageToAll(0xAAAAAAAA, string);
    return 1;
}

public OnPlayerSpawn(playerid)
{
	GivePlayerWeapon(playerid, 22, 100);
	SetPlayerArmour(playerid, 100);
	return 1;
}

public OnPlayerDeath(playerid, killerid, reason)
{
    SendDeathMessage(killerid, playerid, 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("/menu", cmdtext, true, 10) == 0)
	{
		// Menu hráča
		ShowPlayerDialog(playerid,2,DIALOG_STYLE_LIST,"MENU","GPS\nPremium\nStart","Potvrdiť","Zavriet");
		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)
{
	if (pizza[playerid] ==1)//id CP
	{
	DisablePlayerCheckpoint(playerid); // Vymaže všetky ostatné CP
	SendClientMessage(playerid,0xFFFFFFAA,"{FFAAFF}[Rozvoz Pizze] {FFFFFF}Môžeš začať roznášať pizzu"); // A znova zpráva
	SetPlayerCheckpoint(playerid, 1884.7261, 2290.2390, 10.8203, 3.0);
	pizza[playerid] ++;
	return true;
	}
	if (pizza[playerid] ==2)//id CP
	{
	DisablePlayerCheckpoint(playerid); // Vymaže všetky ostatné CP
	SendClientMessage(playerid,0xFFFFFFAA,"{FFAAFF}[Rozvoz Pizze] {FFFFFF}Zanes ďalšiu pizzu"); // A znova zpráva
	SetPlayerCheckpoint(playerid, 1451.2224, 2575.3909, 10.8203, 3.0);
	pizza[playerid] ++;
	return true;
	}
	if (pizza[playerid] ==3)//id CP
	{
	DisablePlayerCheckpoint(playerid); // Vymaže všetky ostatné CP
	SendClientMessage(playerid,0xFFFFFFAA,"{FFAAFF}[Rozvoz Pizze] {FFFFFF}Zanes ďalšiu pizzu"); // A znova zpráva
	SetPlayerCheckpoint(playerid, 1233.2695, 2616.6936, 10.8203, 3.0);
	pizza[playerid] ++;
	return true;
	}
	if (pizza[playerid] ==4)//id CP
	{
	DisablePlayerCheckpoint(playerid); // Vymaže všetky ostatné CP
	SendClientMessage(playerid,0xFFFFFFAA,"{FFAAFF}[Rozvoz Pizze] {FFFFFF}Zanes ďalšiu pizzu"); // A znova zpráva
	SetPlayerCheckpoint(playerid, 1367.7560, 1934.6665, 11.4683, 3.0);
	pizza[playerid] ++;
	return true;
	}
	if (pizza[playerid] ==5)//id CP
	{
	DisablePlayerCheckpoint(playerid); // Vymaže všetky ostatné CP
	SendClientMessage(playerid,0xFFFFFFAA,"{FFAAFF}[Rozvoz Pizze] {FFFFFF}Za svoje služby si dostal 7000$"); // A znova zpráva
	GivePlayerMoney(playerid, 7000);
	pizza[playerid] ++;
	return true;
	}
	if (gps_uradprace[playerid] ==1)//id CP
	{
	DisablePlayerCheckpoint(playerid); // Vymaže všetky ostatné CP
	SendClientMessage(playerid,0xFFFFFFAA,"{FFAAFF}[GPS] {FFFFFF}Dorazil si na Úrad Práce"); // A znova zpráva
	return 0;
	}

	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)
{
	if( pickupid == pracovnyurad)
	{
	ShowPlayerDialog(playerid,3,DIALOG_STYLE_LIST,"Pracovný úrad","Rozvoz Pizze\nKamionista\nAutobus","Zamestnať sa","Zavriet");
	return 1;
	}
	if( pickupid == autosalon)
	{
		if (!IsPlayerInAnyVehicle(playerid))
			{
			ShowPlayerDialog(playerid,6,DIALOG_STYLE_LIST,"Autosalón","Oprava vozidla\nNitro","Kúpiť","Zavrieť");
			}
		return 1;
	}
	return 0;
}

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[])
{
	if(dialogid == 2) //MENUUUUUUU
	{
		if(response == 1) //Tlačidlo 1 (Ľavé tlačidlo)
		{
		if(listitem == 0) //Prvá položka v dialógu
		{
			ShowPlayerDialog(playerid,4,DIALOG_STYLE_LIST,"Navigácia","Úrad práce\nBanka\nAutosalon","Potvrdiť","Zavrieť");
		}
		else if(listitem == 1) //Druhá položka v dialógu
		{
			SendClientMessage(playerid,0xFFFFFFFF,"{FFAAFF}[Server] {FFFFFF}Čoskoro dostupné :)");
		}
		else if(listitem == 2) //Tretia položka v dialógu
		{
			SendClientMessage(playerid,0xFFFFFFFF,"{FFAAFF}[Server] {FFFFFF}Čoskoro dostupné :)");
		}
		}
		return 1;
	}
	if(dialogid == 1) //Welcome Message
	{
		if(response == 1) // Tlačidlo 1 (Ľavé tlačidlo)
		{
			SendClientMessage(playerid,0xFFFFFFFF,"{FFAAFF}[Server] {FFFFFF}Obdržal si 50 000$");
			GivePlayerMoney(playerid, 50000);
		}
		else if(response == 0) //Tlačidlo 2 (Pravé tlačidlo)
		{
			SendClientMessage(playerid,0xFFFFFFFF,"{FFAAFF}[Server] {FFFFFF}Odpoj sa!");
			Kick(playerid);
		}
		return 1;
	}
	if(dialogid == 3) //ID Dialógu
	{
		if(response == 1) //Tlačidlo 1 (Ľavé tlačidlo)
		{
		if(listitem == 0) //Pizza
		{
		    pizza[playerid] =1;
			SendClientMessage(playerid,0xFFFFFFFF,"{FFAAFF}[Rozvoz pizze] {FFFFFF}Prídi si pre motorku s pizzou");
   			SetPlayerCheckpoint(playerid, 2075.1833, 2227.1455, 10.8203, 3.0);
   			CreateVehicle(448, 2075.1833, 2227.1455, 10.8203, 178.4946, 0, 0, 0);
		}
		else if(listitem == 1) //Druhá položka v dialógu
		{
			SendClientMessage(playerid,0xFFFFFFFF,"{FFAAFF}[Server] {FFFFFF}Čoskoro dostupné :)");
		}
		else if(listitem == 2) //Tretia položka v dialógu
		{
			SendClientMessage(playerid,0xFFFFFFFF,"{FFAAFF}[Server] {FFFFFF}Čoskoro dostupné :)");
		}
		}
		return 1;
	}
	if(dialogid == 4) //MENUUUUUUU
	{
		if(response == 1) //Tlačidlo 1 (Ľavé tlačidlo)
		{
		if(listitem == 0) //Prvá položka v dialógu
		{
		    gps_uradprace[playerid] =1;
			SetPlayerCheckpoint(playerid, 2023.5581, 1916.2732, 12.3315, 3.0);
		}
		else if(listitem == 1) //Druhá položka v dialógu
		{
			SendClientMessage(playerid,0xFFFFFFFF,"{FFAAFF}[Server] {FFFFFF}Čoskoro dostupné :)");
		}
		else if(listitem == 2) //Tretia položka v dialógu
		{
			SendClientMessage(playerid,0xFFFFFFFF,"{FFAAFF}[Server] {FFFFFF}Čoskoro dostupné :)");
		}
		}
		return 1;
	}
	if(dialogid == 6) //Autosalón
	{
		if(response == 1) //Tlačidlo 1 (Ľavé tlačidlo)
		{
		if(listitem == 0) //Prvá položka v dialógu
		{
	    	if (!IsPlayerInAnyVehicle(playerid))
			{
   				RepairVehicle(GetPlayerVehicleID(playerid));
   				SendClientMessage(playerid, 0xFFFFFFFF, "{FFAAFF}[Autosalón] {FFFFFF}Vozidlo opravené");
			}
		}
		else if(listitem == 1) //Druhá položka v dialógu
		{
			SendClientMessage(playerid,0xFFFFFFFF,"{FFAAFF}[Server] {FFFFFF}Čoskoro dostupné :)");
		}
		}
		return 1;
	}

	return 0;
}

public OnPlayerClickPlayer(playerid, clickedplayerid, source)
{
	return 1;
}
Link to comment
Share on other sites

3 odpovědí na tuto otázku

Recommended Posts

  • 0

při vytváření pickupu pro auto musíš použit model 14 a ne 1

tzn: CreatePickup(1239,14,x,y,z,-1);
wiki : 

14 Disappears after pickup, can only be picked up with a vehicle. Triggers checkpoint sound.

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...