[Ajuda] DynamicCP
#1

Estou com um problema no sistema de entregas no meu servidor, quando executo o comando ele aparece o checkpoint para carregar normal, mas quando entro nele , eles fala como se tivesse carregado e chegado local de descarga. Jб tentei varias formas e ainda nгo obtive sucesso. Agradeзo toda ajuda!

PHP код:
// Topo do GM
enum ALocations_C {
    
ALOC_NAME[24],
    
ALOC_CITY[24],
    
Float:ALOCX,
    
Float:ALOCY,
    
Float:ALOCZ,
    
ALOC_MIN,
    
ALOC_MAX
}
new 
ALocVAR_C[][ALocations_C] = {
    {
"Exportacao""BlueBerry"51.8294 , -284.4816 ,1.2638 135 395},
    {
"Loja de conveniencia""Los Santos"986.7144 ,-920.6162 ,42.7584 250680},
    {
"Burger King""Los Santos"1214.8322, -884.7917 43.5170150490}
new 
CPCarregar[MAX_PLAYERS];
new 
CPDescarregar[MAX_PLAYERS]; 

PHP код:

//Comando /trabalhar
CMD:trabalhar(playerid)
{
    switch(
Player[playerid][pProfissaoID])
    {
        case 
0:
        {
            
SendClientMessage(playeridCOLOR_RED"[ ERRO ] Vocк й um desempregado.");
            
SendClientMessage(playeridCOLOR_RED"[ ERRO ] Vб na prefeitura e escolha um emprego na agкncia de empregos");
        }
        case 
1:
        {
            if(!
IsPlayerinVeiculoTrabalho_C(playerid))
                return 
SendClientMessage(playeridCOLOR_RED,"[ ERRO ] Vocк nгo estб no seu veнculo de trabalho");
            if(!
IsTrailerTrabalhoAttached_C(playerid))
                return 
SendClientMessage(playeridCOLOR_RED,"[ ERRO ] Vocк nгo estб conectado com o seu trailer");
            if(
Player[playerid][pProfissaoID] != 1)
                return 
SendClientMessage(playeridCOLOR_RED"[ ERRO ] Esse veнculo nгo pertece a sua profissгo");
            if(
PlayerWorking[playerid] == true)
                return 
SendClientMessage(playeridCOLOR_RED"[ ERRO ] Vocк jб estб trabalhando");
            
CPCarregar[playerid] = CreateDynamicCP(-172.6250, -210.3235 1.00285.0,  -1, -1playerid STREAMER_CP_SD, -1,  0);
            
SendClientMessage(playeridCOLOR_YELLOW"[ Fleish Berg ] Carregue os produtos na HQ para comeзar a sua entrega.");
            
PlayerWorking[playerid] = true;
        }
    }
    return 
1;
}
alias:trabalhar("t"); 
PHP код:

// OnPlayerEnterDynamicCP
public OnPlayerEnterDynamicCP(playeridcheckpointid)
{
    new 
string[150];
    if(
checkpointid == CPCarregar[playerid])
    {
        
DestroyDynamicCP(CPCarregar[playerid]);
        switch(
Player[playerid][pProfissaoID])
        {
            case 
0SendClientMessage(playeridCOLOR_RED"??????????????????");
            case 
1:
            {
                
DestroyDynamicCP(CPCarregar[playerid]);
                new 
index random(sizeof(ALocVAR_C));
                new 
pay RandomPay(ALocVAR_C[index][ALOC_MIN], ALocVAR_C[index][ALOC_MAX]);
                
format(stringsizeof(string), "[ Fleish Berg ] Leve os produtos a {FFFFFF}%s {FDFF00}localizado em {FFFFFF}%s {FDFF00}para completar a entrega."ALocVAR_C[index][ALOC_NAME], ALocVAR_C[index][ALOC_CITY]);
                
SendClientMessage(playeridCOLOR_YELLOWstring);
                
SetPVarInt(playerid"DinheiroEntrega_C"pay);
                
CPDescarregar[playerid] = CreateDynamicCP(ALocVAR_C[index][ALOCX], ALocVAR_C[index][ALOCY] , ALocVAR_C[index][ALOCZ], 5.0,  -1, -1playerid STREAMER_CP_SD, -1,  0);
            }
        }
    }
    if(
checkpointid == CPDescarregar[playerid])
    {
        switch(
Player[playerid][pProfissaoID])
        {
            case 
0SendClientMessage(playeridCOLOR_RED"??????????????????");
            case 
1:
            {
                new 
pay GetPVarInt(playerid"DinheiroEntrega_C");
                
DestroyDynamicCP(CPDescarregar[playerid]);
                
SendClientMessage(playeridCOLOR_YELLOW"[ Fleish Berg ] Vocк entregou os produtos ao seu destino");
                
format(stringsizeof(string), "[ Fleish Berg ] Vocк ganhou {15FF00}$%d {FDFF00}como pagamento."pay);
                
SendClientMessage(playeridCOLOR_YELLOWstring);
                
PlayerWorking[playerid] = false;
                
GivePlayerMoney(playeridpay);
                
DeletePVar(playerid"DinheiroEntrega_C");
            }
        }
    }
    return 
1;

Realmente ainda nгo entendi por que acontece isso, mas enfim, espero que possam me ajudar ;-
Reply
#2

eu recomendaria utilizar minha include para isso, por ser muito mais simples eficaz de fazer qualquer coisa
https://sampforum.blast.hk/showthread.php?tid=635066
Reply
#3

Quote:
Originally Posted by RazorGuigo
Посмотреть сообщение
eu recomendaria utilizar minha include para isso, por ser muito mais simples eficaz de fazer qualquer coisa
https://sampforum.blast.hk/showthread.php?tid=635066
Suas includes nгo sгo 0.3DL?
Reply
#4

Quote:
Originally Posted by Cauezin
Посмотреть сообщение
Suas includes nгo sгo 0.3DL?
nгo, essa й funciona em qualquer versгo do SA-MP
Reply
#5

Quote:
Originally Posted by RazorGuigo
Посмотреть сообщение
nгo, essa й funciona em qualquer versгo do SA-MP
Vou testar aqui, fique de olho nesse tуpico, se eu tiver duvidas com a sua include vou perguntar aqui :3



EDIT

Serio que precisa de foreach? ;-
Reply
#6

PHP код:
undefined symbol "OnPlayerEnterDynArea" 
Reply
#7

Serio que precisa de foreach? ;-[/QUOTE]
й o metodo que pensei para reaproveitar o ID de CPs deletados, se tiver uma ideia para compensar nгo utilizar, estou aberto para sugestхes

Quote:
Originally Posted by Cauezin
Посмотреть сообщение
PHP код:
undefined symbol "OnPlayerEnterDynArea" 
troque Dyn por Dynamic

Quote:

proximo patch vou fazer uma correзгo para verificar se o stream utilizando, contem "OnPlayerEnterDynArea", "OnPlayerEnterDynamicArea", OnPlayerEnterArea"

Reply
#8

Razor , nгo foi , pode tenar arranjar um soluзгo pro problema , estou tentando des das 4 da tarde ;-
Reply
#9

Quote:
Originally Posted by Cauezin
Посмотреть сообщение
Razor , nгo foi , pode tenar arranjar um soluзгo pro problema , estou tentando des das 4 da tarde ;-
nгo tenho bola de cristal, qual o problema que estб ocorrendo?
Reply
#10

Quote:

Estou com um problema no sistema de entregas no meu servidor, quando executo o comando ele aparece o checkpoint para carregar normal, mas quando entro nele , eles fala como se tivesse carregado e chegado local de descarga. Jб tentei varias formas e ainda nгo obtive sucesso. Agradeзo toda ajuda!

Ele entra no checkpoint pra carregar, inves de criar outro checkpoint para descarregar, ele nгo o faz. Ele simplesmente termina a entrega.
Reply


Forum Jump:


Users browsing this thread: 2 Guest(s)