26/11/2020 12:30
(Esta mensagem foi modificada pela última vez a: 26/11/2020 15:44 por LeleziiN.)
A parte de criar o objeto
A base que fiz o meu
Código:
if(strcmp(cmd, "/cacar", true) == 0)
{
if(Profissao[playerid] == Cacador || VerificarADM(playerid) == 1)
{
if(CacaInProgress[playerid] == 1)
{
SendClientMessage(playerid, CORX1, "| ERRO | Você já está caçando!");
return 1;
}
if(CacaInProgress[playerid] == 0)
{
new Float:X, Float:Y, Float:Z;
GetPlayerPos(playerid,X,Y,Z);
if(AreaCaca[playerid] == 1)
{
new indx = random(sizeof(VeadosCF));
Veados[0] = CreateDynamicObject(19315, VeadosCF[indx][0], VeadosCF[indx][1], VeadosCF[indx][2], 0, 0, 0);
SetPlayerCheckpoint(playerid, VeadosCF[indx][0], VeadosCF[indx][1], VeadosCF[indx][2], 1.0);
//SetPlayerMapIcon(playerid, 90, Float:X, Float:Y, Float:Z, 56, 0, MAPICON_GLOBAL_CHECKPOINT);
//PlayerPlaySound(playerid, 1057, 0.0, 0.0, 10.0 );
SendClientMessage(playerid, COR_MARA1, "| INFO | Caça iniciada. Há informações de um animal a poucos metros de você, siga o icone amarelo no mapa para chegar ao local!");
CacaInProgress[playerid] = 1;
//return 1;
}
else
{
SendClientMessage(playerid,CORX1,"| ERRO | Você não está na área de caça.");
return 1;
}
}
}
else
{
SendClientMessage(playerid,CORX1,"| ERRO | Você não tem permissão!");
return 1;
}
return 1;
}
A base que fiz o meu
Código:
#include <a_samp>
#include <streamer>
#include <zcmd>
new Veados[10];
new Cacas[MAX_PLAYERS];
new PodePegar[MAX_PLAYERS];
new Float: ViadosCF[9][3] =
{
{-1719.8383,-2234.2600,50.4234}, // X Y Z coord 1
{-1772.4163,-2231.8875,66.7393}, // X Y Z coord 2
{-1804.1705,-2206.6208,75.7214}, // X Y Z coord 3
{-1834.0166,-2185.7173,80.4917}, // X Y Z coord 4
{-1861.4663,-2166.8967,82.6432}, // X Y Z coord 5
{-1928.5894,-2141.1968,76.4992}, // X Y Z coord 6
{-1962.7743,-2111.5525,78.2001}, // X Y Z coord 7
{-2002.7104,-2027.5487,80.9751}, // X Y Z coord 8
{-1997.5974,-2008.5566,85.7108} // X Y Z coord 9
};
main()
{
print("\n----------------------------------");
print("By Juliano Carrinho");
print("----------------------------------\n");
}
public OnGameModeInit()
{
// Don't use these lines if it's a filterscript
SetGameModeText("Caça");
AddPlayerClass(18, -1633.5469, -2233.8367, 31.4766, 0, 0, 0, 0, 0, 0);
//System Caçador By Juliano Carrinho
//
CreatePickup(358, 23, -1633.5469, -2233.8367, 31.4766, -1);
Create3DTextLabel("Pegue Seu Rifle de Caca Aqui\n/rifle\nBoa Caca!!", -1, -1633.5469, -2233.8367, 31.4766, 40.0, 0, -1);
//
CreatePickup(19315, 23, -1628.9717,-2239.3115,31.4766, -1);
Create3DTextLabel("Aperte 'F' Para Ver As Instrucoes!!", -1, -1628.9717,-2239.3115,31.4766, 40.0, 0, -1);
//
AddStaticVehicle(471,-1646.0482,-2247.6357,30.6148,91.9894,77,82); // Quad 1
AddStaticVehicle(471,-1645.7937,-2245.8611,30.4259,89.7857,77,82); // Quad 2
//
new Cacador = CreateActor (18, -1632.7811, -2247.2131, 31.4766, 2.5765);
ApplyActorAnimation(Cacador, "ped","IDLE_chat", 4.1,1,0,0,1,0);
Create3DTextLabel("Venda Suas Cacas Aqui\n/vendercaca", -1, -1632.7811,-2247.2131,31.4766, 40.0, 0, -1);
//
return 1;
}
public OnGameModeExit()
{
return 1;
}
public OnPlayerRequestClass(playerid, classid)
{
SetPlayerPos(playerid, -1633.5469, -2233.8367, 31.4766);
SetPlayerCameraPos(playerid, -1633.5469, -2233.8367, 31.4766);
SetPlayerCameraLookAt(playerid, -1633.5469, -2233.8367, 31.4766);
return 1;
}
public OnPlayerSpawn(playerid)
{
SetPlayerPos(playerid, -1633.5469, -2233.8367, 31.4766);
for(new i; i < 100; i++)
{
SendClientMessage(playerid ,-1, " ");
}
PodePegar[playerid] = 0;
return 1;
}
public OnPlayerDeath(playerid)
{
PodePegar[playerid] = 0;
return 1;
}
CMD:rifle(playerid)
{
if(PodePegar[playerid] == 1) return SendClientMessage(playerid, -1, "| ERRO | Voce Ja Pegou um Rifle");
GivePlayerWeapon(playerid, 34, 9999);
SendClientMessage(playerid, -1, "| INFO | Voce Pegou Seu Rifle de Caca, Leia As Instrucoes, Boa Caca!!");
PodePegar[playerid] = 1;
return 1;
}
CMD:cacarv(playerid)
{
if(IsPlayerInRangeOfPoint(playerid, 1000.0, -1633.5469, -2233.8367, 31.4766))
{
new indx = random(sizeof(ViadosCF));
Veados[0] = CreateDynamicObject(19315, ViadosCF[indx][0], ViadosCF[indx][1], ViadosCF[indx][2], 0, 0, 0);
SetPlayerCheckpoint(playerid, ViadosCF[indx][0], ViadosCF[indx][1], ViadosCF[indx][2], 1.0);
}
else SendClientMessage(playerid, -1, "| ERRO | Voce Nao Esta na Area de Caca");
return 1;
}
CMD:vendercacav(playerid)
{
if(IsPlayerInRangeOfPoint(playerid, 2.0, -1632.7811,-2247.2131,31.4766))
{
if(Cacas[playerid] < 3) return SendClientMessage(playerid, -1, "| ERRO | Voce Nao Tem Casas Suficiente!!");
new GranaExp = randomEx(50, 100), Str[55];
format(Str, 55, "| INFO | Voce recebeu R$ %i,00 Pela Caca!", GranaExp);
SendClientMessage(playerid, 0x33AA33AA, Str);
GivePlayerMoney(playerid, GranaExp);
}
else SendClientMessage(playerid, -1, "| ERRO | Voce Nao Esta na Area de Caca");
return 1;
}
public OnPlayerKeyStateChange(playerid,newkeys,oldkeys)
{
if(newkeys & KEY_SECONDARY_ATTACK)
{
if(IsPlayerInRangeOfPoint(playerid, 3.0, -1628.9717,-2239.3115,31.4766))
{
SendClientMessage(playerid, -1, "| INFO | Voce Comecou a Casa, Procure Os Veados Pela Area e Mate-os!!");
SendClientMessage(playerid, -1, "| INFO | Cada Vez Que Voce Matar Um Veado, Voce Ganha 1Kg De Carne, Depois e So Vender");
SendClientMessage(playerid, -1, "| INFO | Use o Quad Para Se Movimentar Melhor Pela Area.. E /cacar Para Cacar");
}
}
return 1;
}
public OnPlayerShootDynamicObject(playerid, weaponid, objectid, Float:x, Float:y, Float:z)
{
for(new i; i != 10; i++)
{
if(objectid == Veados[i])
{
DestroyDynamicObject(Veados[i]);
SendClientMessage(playerid, -1, "| CACA | Voce Acertou Um Veado");
DisablePlayerCheckpoint(playerid);
Cacas[playerid] ++;
}
}
return 1;
}
stock randomEx(min, max)
return random(max - min) + min;