01.10.2010, 19:46
Olб gostaria de pedir ajuda com FS, uso ele para criar veiculos sу que estou com problema pois ele da respawn automaticamente, gostaria de retirar ou aumentar o tempo de respawn.
Codigo do FS
Agradeзo desde jб.
Codigo do FS
Код:
/*============================================================================//
\\ // ||===\
\\ // || ||
\\ // ||===/
\\// ||
Veiculo Player
Feito por Stakline
www.homehots.blogspot.com
Comando: /veiculoplayer playerid modeloid cor1 cor2 (Logado an RCON)
//============================================================================*/
#include <a_samp>
#define MAX_VEICULOS 2000
#define vermelho 0xD90000AA
#define verde 0x00C605AA
#define ARQUIVO_VEICULO "Veiculos.stakline"
enum vp{dono[20]} new VEICULO_DONO[MAX_VEICULOS][vp];
public OnGameModeInit()
{
new Argumento[8][100];
new str[256];
new modeloid,Float:x,Float:y,Float:z,Float:a,cor1,cor2,veiculoid;
new File: ArquivoVeiculo = fopen(ARQUIVO_VEICULO, io_read);
if (ArquivoVeiculo)
{
for(new id; id<MAX_VEICULOS; id++)
{
fread(ArquivoVeiculo, str);
split(str, Argumento, ',');
modeloid = strval (Argumento[0]);
x = floatstr (Argumento[1]);
y = floatstr (Argumento[2]);
z = floatstr (Argumento[3]);
a = floatstr (Argumento[4]);
cor1 = strval (Argumento[5]);
cor2 = strval (Argumento[6]);
veiculoid = AddStaticVehicle(modeloid,x,y,z,a,cor1,cor2);
format(VEICULO_DONO[veiculoid][dono],20,Argumento[7]);
}
fclose(ArquivoVeiculo);
}
return 1;
}
//============================================================================//
public OnPlayerCommandText(playerid, cmdtext[])
{
new idx;
new cmd[256],tmp[256];
cmd = strtok(cmdtext, idx);
if(strcmp(cmd, "/veiculoplayer", true) == 0) {
if(!IsPlayerAdmin(playerid)){return 0;}
new plid, modeloid,cor1,cor2;
tmp = strtok(cmdtext, idx);
if(!strlen(tmp)){
SendClientMessage(playerid, vermelho, "[VP]: /veiculoplayer [PlayerID] [ModeloID] [Cor1] [Cor2]");
return 1;
}
plid = strval(tmp);
//======================================================================
tmp = strtok(cmdtext, idx);
if(!strlen(tmp)) {
SendClientMessage(playerid, vermelho, "[VP]: /veiculoplayer [PlayerID] [ModeloID] [Cor1] [Cor2]");
return 1;
}
modeloid = strval(tmp);
//======================================================================
tmp = strtok(cmdtext, idx);
if(!strlen(tmp)) {
SendClientMessage(playerid, vermelho, "[VP]: /veiculoplayer [PlayerID] [ModeloID] [Cor1] [Cor2]");
return 1;
}
cor1 = strval(tmp);
//======================================================================
tmp = strtok(cmdtext, idx);
if(!strlen(tmp)) {
SendClientMessage(playerid, vermelho, "[VP]: /veiculoplayer [PlayerID] [ModeloID] [Cor1] [Cor2]");
return 1;
}
cor2 = strval(tmp);
//======================================================================
if(!IsPlayerConnected(plid)){
SendClientMessage(playerid, vermelho, "[VP]: Jogador nгo estб conectado!");
return 1;
}
if(modeloid >= 400 && modeloid <= 611){
if(CriarVeiculoPlayer(playerid,plid,modeloid,cor1,cor2)){
SendClientMessage(playerid, verde, "[VP]: Veiculo Criado e Salvo com sucesso!");
new msg[256];
format(msg,256,"[VP]: %s criou um veiculo exclusivo para vocк!",PlayerNome(playerid));
SendClientMessage(plid, verde, msg);
}else{
SendClientMessage(playerid, verde, "[VP]: Erro ao criar o veiculo!");
}
return 1;
}else{
SendClientMessage(playerid, vermelho, "[VP]: Modelo ID Incorreto! (400-611)");
return 1;
}
}
return 0;
}
//============================================================================//
public OnPlayerEnterVehicle(playerid, vehicleid, ispassenger)
{
if(!ispassenger){
if(VeiculoDono(playerid, vehicleid) == -1){return 1;}
if(VeiculoDono(playerid, vehicleid)){
SendClientMessage(playerid, verde, "[VP]: Bem Vindo ao Seu Veiculo.");
}else{
RemovePlayerFromVehicle(playerid);
new Float:x,Float:y,Float:z;
GetPlayerPos(playerid,x,y,z);
SetPlayerPos(playerid,x,y,z+0.5);
new msg[256];
format(msg,256,"[VP]: Este veiculo й exclusivo de %s!",VEICULO_DONO[vehicleid][dono]);
SendClientMessage(playerid, vermelho, msg);
}
}
return 1;
}
//============================================================================//
stock strtok(const string[], &index)
{
new length = strlen(string);
while ((index < length) && (string[index] <= ' '))
{
index++;
}
new offset = index;
new result[20];
while ((index < length) && (string[index] > ' ') && ((index - offset) < (sizeof(result) - 1)))
{
result[index - offset] = string[index];
index++;
}
result[index - offset] = EOS;
return result;
}
//============================================================================//
stock PlayerNome(id){
new Nome[MAX_PLAYER_NAME];
GetPlayerName(id, Nome, MAX_PLAYER_NAME);
return Nome;
}
//============================================================================//
stock CompararStrings(String1[],String2[]){
if(strlen(String1) == 0 || strlen(String2) == 0){
return false;
}
if(strcmp(String1 ,String2, true ) == 0 ){
//printf("'%s' й igual б '%s'!",String1,String2);
return true;
}else{
//printf("'%s' й diferente de '%s'!",String1,String2);
return false;
}
}
//============================================================================//
stock CriarVeiculoPlayer(playerid,plid,modeloid,cor1,cor2){
new Float:x, Float:y, Float:z, Float:a, string[256], File:temp, veiculoid;
GetPlayerPos(playerid, x, y, z);
GetPlayerFacingAngle(playerid,a);
format(string, sizeof(string), "%d,%f,%f,%f,%f,%d,%d,%s,\r\n", modeloid,x,y,z,a,cor1,cor2,PlayerNome(plid));
temp = fopen(ARQUIVO_VEICULO, io_append);
fwrite(temp, string);
fclose(temp);
veiculoid = AddStaticVehicle(modeloid,x,y,z,a,cor1,cor2);
format(VEICULO_DONO[veiculoid][dono],20,PlayerNome(plid));
return 1;
}
//============================================================================//
stock VeiculoDono(playerid, veiculoid){
if(strlen(VEICULO_DONO[veiculoid][dono]) == 0){
return -1;
}
if(!CompararStrings(VEICULO_DONO[veiculoid][dono],PlayerNome(playerid))){
return 0;
}
return 1;
}
//============================================================================//
forward split(const strsrc[], strdest[][], delimiter);
public split(const strsrc[], strdest[][], delimiter)
{
new i, li;
new aNum;
new len;
while(i <= strlen(strsrc)){
if(strsrc[i]==delimiter || i==strlen(strsrc)){
len = strmid(strdest[aNum], strsrc, li, i, 128);
strdest[aNum][len] = 0;
li = i+1;
aNum++;
}
i++;
}
return 1;
}
//============================================================================//

