[Ajuda] Tipo de cуdigo muito complexo! :/
#1

Resolvido!
Reply
#2

PHP код:
#include a_samp
forward FuncaoGangZone(playeridTypeOrgNameGZ[]);
public 
FuncaoGangZone(playeridTypeOrgNameGZ[]){
    for (new 
iMAX_PLAYERSi++){
        if(
TypeOrg == 1){
            
// Org 01
        
}
        else if(
TypeOrg == 2){
            
// Org 02
        
}
        else if(
TypeOrg == 2){
            
// Org 03
        
}
    }
    return 
1;
}
FuncaoGangZone(playeridGetPlayerOrg(playerid), "Nome da GZ"); //Na hora que chama a funзгo 
Lembre-se: Quando se for escrever uma string( ou seja, que tenha caracteres ) deve se usar [] como visto acima. Abraзos
Reply
#3

Quote:
Originally Posted by ProKillerpa
Посмотреть сообщение
Lembre-se: Quando se for escrever uma string( ou seja, que tenha caracteres ) deve se usar [] como visto acima. Abraзos
Utilizar switch й bem mais viбvel.
Reply
#4

Quote:
Originally Posted by Lуs
Посмотреть сообщение
Utilizar switch й bem mais viбvel.
Bem lembrado...
Reply
#5

Resolvido!
Reply
#6

Entгo, por isso usamos o else if.

O Primeiro if verificarб se й igual 1, o else if й um caso o if acima nгo ser igual ao oque eu comparo vou executar o else if.
Reply
#7

Resolvido!
Reply
#8

Resolvido!
Reply
#9

Vocк que frequenta o fуrum hб um tempo, jб deveria saber resolver alguns problemas, principalmente quando й por variбvel indefinida e arrays.

Se vocк quer verificar variбveis do tipo String, utilize strcmp.
Reply
#10

PHP код:
new string[128]; 
Reply
#11

Tipo, tб dando й erro na variбvel NameGZ, tipo, aqui..

PHP Code:
if (NameGZ == TypeOrg//aqui tб o erro :/ 
O problema й que nгo passei por isso e nгo sei resolver.
Reply
#12

Como vocк estб utilizando a funзгo FuncaoGangZone?
Reply
#13

Tipo isso..

obs: TypeOrg й o id da org;

PHP Code:
FuncaoGangZone(playeridGetPlayerOrg(playerid), "GZIdlewooddono"); //chama a funзгo 
ou caso seja outra

PHP Code:
FuncaoGangZone(playeridGetPlayerOrg(playerid), "gzLasColinasdono"); //chama a funзгo 
ae tipo era para ficar tipo assim..

PHP Code:
    if (GZIdlewooddono == TypeOrg)
    {
        
format(stringsizeof(string), "ERRO: Este territуrio jб pertence a sua %s."Org(playerid));
        return 
SendClientMessage(playeridCOLOR_GRAD1string);
    } 
ou

PHP Code:
    if (gzLasColinasdono == TypeOrg)
    {
        
format(stringsizeof(string), "ERRO: Este territуrio jб pertence a sua %s."Org(playerid));
        return 
SendClientMessage(playeridCOLOR_GRAD1string);
    } 
Code:
C:\Documents and Settings\P.Henrique\Desktop\gamemode\gamemodes\123.pwn(2311) : error 033: array must be indexed (variable "NameGZ")
C:\Documents and Settings\P.Henrique\Desktop\gamemode\gamemodes\123.pwn(2321) : error 033: array must be indexed (variable "NameGZ")
C:\Documents and Settings\P.Henrique\Desktop\gamemode\gamemodes\123.pwn(2329) : error 033: array must be indexed (variable "NameGZ")
C:\Documents and Settings\P.Henrique\Desktop\gamemode\gamemodes\123.pwn(2337) : error 033: array must be indexed (variable "NameGZ")
C:\Documents and Settings\P.Henrique\Desktop\gamemode\gamemodes\123.pwn(2345) : error 033: array must be indexed (variable "NameGZ")
C:\Documents and Settings\P.Henrique\Desktop\gamemode\gamemodes\123.pwn(2353) : error 033: array must be indexed (variable "NameGZ")
C:\Documents and Settings\P.Henrique\Desktop\gamemode\gamemodes\123.pwn(2361) : error 033: array must be indexed (variable "NameGZ")
C:\Documents and Settings\P.Henrique\Desktop\gamemode\gamemodes\123.pwn(2369) : error 033: array must be indexed (variable "NameGZ")
Pawn compiler 3.2.3664	 	 	Copyright © 1997-2006, ITB CompuPhase


13 Errors.
Reply
#14

Como estб a variбvel NameGZ?
Reply
#15

PHP Code:
forward FuncaoGangZone(playeridTypeOrgNameGZ[]);
public 
FuncaoGangZone(playeridTypeOrgNameGZ[]) 
<!> Variбvel usada para mandar a funзгo tipo assim;

Quero definir "gzLasColinasdono" e manda pela public.. que postei no tуpico, ae manda o valor no modo NameGZ.. e tб dando erro..


Eu postei recentemente.. pule o tуpico para trais Luan para ver fazendo um favor.
Reply
#16

Qual й o modo certo amigo?

PHP Code:
    if (NameGZ[] == TypeOrg)
    {
        
format(stringsizeof(string), "ERRO: Este territуrio jб pertence a sua %s."Org(playerid));
        return 
SendClientMessage(playeridCOLOR_GRAD1string);
    } 
obs: desse modo ae em cima da isso..

HTML Code:
C:\Documents and Settings\P.Henrique\Desktop\gamemode\gamemodes\BSL.pwn(2299) : error 029: invalid expression, assumed zero
C:\Documents and Settings\P.Henrique\Desktop\gamemode\gamemodes\BSL.pwn(2309) : error 029: invalid expression, assumed zero
C:\Documents and Settings\P.Henrique\Desktop\gamemode\gamemodes\BSL.pwn(2317) : error 029: invalid expression, assumed zero
C:\Documents and Settings\P.Henrique\Desktop\gamemode\gamemodes\BSL.pwn(2325) : error 029: invalid expression, assumed zero
C:\Documents and Settings\P.Henrique\Desktop\gamemode\gamemodes\BSL.pwn(2333) : error 029: invalid expression, assumed zero
C:\Documents and Settings\P.Henrique\Desktop\gamemode\gamemodes\BSL.pwn(2341) : error 029: invalid expression, assumed zero
C:\Documents and Settings\P.Henrique\Desktop\gamemode\gamemodes\BSL.pwn(2349) : error 029: invalid expression, assumed zero
C:\Documents and Settings\P.Henrique\Desktop\gamemode\gamemodes\BSL.pwn(2357) : error 029: invalid expression, assumed zero
ou

PHP Code:
    if ("NameGZ" == TypeOrg)
    {
        
format(stringsizeof(string), "ERRO: Este territуrio jб pertence a sua %s."Org(playerid));
        return 
SendClientMessage(playeridCOLOR_GRAD1string);
    } 
Reply
#17

PHP Code:

//A enumeraзгo irб enumerar as gangzones por ordem, comeзa no 0
enum
{
    
GANGZONE_PARQUE//0
    
GANGZONE_HOSPITAL//1
    
GANGZONE_MORRO//2
    
GANGZONE_AREA51 //3
}
forward FuncaoGangZone(playeridorgGangZone);
//playerid - id do jogador
//org - organizaзгo
//GangZone - Serб o valor da gangzone, ou seja, 0 seria GANGZONE_PARQUE
FuncaoGangZone(playeridGetPlayerOrg(playerid), GANGZONE_PARQUE); //Chamamos a callback
public FuncaoGangZone(playeridorgGangZone)

    switch(
GangZone//utilizamos switch pois estamos a trabalhar com condiзхes sequкncias, ou seja, 0,1,2,3 й melhor que o if
    
{
        case 
GANGZONE_PARQUE:
        {
            
//colocamos aqui o cуdigo..
        
}
        case 
GANGZONE_HOSPITAL:
        {
        }
        case 
GANGZONE_MORRO:
        {
        }
        case 
GANGZONE_AREA51:
        {
        }
    }

Este й um mйtodo eficaz, estuda a lуgica e serб fбcil.
Reply
#18

Quote:
Originally Posted by BlueX
View Post
PHP Code:

//A enumeraзгo irб enumerar as gangzones por ordem, comeзa no 0
enum
{
    
GANGZONE_PARQUE//0
    
GANGZONE_HOSPITAL//1
    
GANGZONE_MORRO//2
    
GANGZONE_AREA51 //3
}
forward FuncaoGangZone(playeridorgGangZone);
//playerid - id do jogador
//org - organizaзгo
//GangZone - Serб o valor da gangzone, ou seja, 0 seria GANGZONE_PARQUE
FuncaoGangZone(playeridGetPlayerOrg(playerid), GANGZONE_PARQUE); //Chamamos a callback
public FuncaoGangZone(playeridorgGangZone)

    switch(
GangZone//utilizamos switch pois estamos a trabalhar com condiзхes sequкncias, ou seja, 0,1,2,3 й melhor que o if
    
{
        case 
GANGZONE_PARQUE:
        {
            
//colocamos aqui o cуdigo..
        
}
        case 
GANGZONE_HOSPITAL:
        {
        }
        case 
GANGZONE_MORRO:
        {
        }
        case 
GANGZONE_AREA51:
        {
        }
    }

Este й um mйtodo eficaz, estuda a lуgica e serб fбcil.
Amigo tentei fazer mais quando eu estava fazendo nгo ia dar certo pois й assim, exemplo, 1 й DPLS, 2 й FBI, 5 Aztecas, 12 й vagos, 15 grove e 16 ballas. Ae tipo, vou dar um exemplo, GZIdlewooddono й para definir, o dono da gz, ou seja, queria colocar isso tipo assim..

PHP Code:
FuncaoGangZone(playeridGetPlayerOrg(playerid), "GZIdlewooddono"); 
e mandar para a Funзгo

PHP Code:
forward FuncaoGangZone(playeridTypeOrgNameGZ[]);
public 
FuncaoGangZone(playeridTypeOrgNameGZ[]) 
e assim vendo o valor definido, ou seja, caso seja a GZ de Idlewood vai ser GZIdlewooddono(Tem outras tambйm como gzLasColinasdono e etc.. mais o exemplo agora й GZIdlewooddono), entгo quero ajuda no seguinte.. tб dando erro aqui..


Nгo sei como colocar aqui
PHP Code:
if ("NameGZ" == ?) 
PHP Code:
    if ("NameGZ" == TypeOrg)
    {
        
format(stringsizeof(string), "ERRO: Este territуrio jб pertence a sua %s."Org(playerid));
        return 
SendClientMessage(playeridCOLOR_GRAD1string);
    }
        if (
"NameGZ" == 1)
        {
            if (
GetPlayerOrg(i) == 1)
            {
                
format(string256"* %s estгo tentando conquistar %s."NomeORG(playerid), GetZone(XYZ));
                
SendClientMessage(i0x00A5FFFFstring);
            }
        }
        else if (
"NameGZ" == 2)
        {
            if (
GetPlayerOrg(i) == 2)
            {
                
format(string256"* %s estгo tentando conquistar %s."NomeORG(playerid), GetZone(XYZ));
                
SendClientMessage(i0x00A5FFFFstring);
            }
        }
        else if (
"NameGZ" == 5)
        {
            if (
GetPlayerOrg(i) == 5)
            {
                
format(string256"* %s estгo tentando conquistar %s."NomeORG(playerid), GetZone(XYZ));
                
SendClientMessage(i0x00A5FFFFstring);
            }
        }
        else if (
"NameGZ" == 12)
        {
            if (
GetPlayerOrg(i) == 12)
            {
                
format(string256"* %s estгo tentando conquistar %s."NomeORG(playerid), GetZone(XYZ));
                
SendClientMessage(i0x00A5FFFFstring);
            }
        }
        else if (
"NameGZ" == 15)
        {
            if (
GetPlayerOrg(i) == 15)
            {
                
format(string256"* %s estгo tentando conquistar %s."NomeORG(playerid), GetZone(XYZ));
                
SendClientMessage(i0x00A5FFFFstring);
            }
        }
        else if (
"NameGZ" == 16)
        {
            if (
GetPlayerOrg(i) == 16)
            {
                
format(string256"* %s estгo tentando conquistar %s."NomeORG(playerid), GetZone(XYZ));
                
SendClientMessage(i0x00A5FFFFstring);
            }
        } 
Mais nгo sei como definir isso NameGZ, pois sempre dб erro nessa linha, pois nгo sei se coloco "NameGZ" ou NameGZ[] ou "NameGZ[]", sei lб.. nгo sei como colocar ae sempre dб erro, esse й o X da questгo.
Reply
#19

@edit
Reply
#20

Rapaz primeiramente aconselho-te a aprender a programar, depois disso aconselho a sentares e analisares muito bem o cуdigo, o que tu estas a criar й completamente errado, esta codiзгo if("NomeGZ" == 5) nгo existe, as condiзхes if foram criadas para comparar variбveis com valores e/ou variбveis.

PHP Code:
if(== 1)
if(
== y
Depois uma string й uma array, imagina a array como uma estante, vamos dizer que a estande tem 3 divisхes, cada divisгo contйm um valor os caracteres nгo passam de valores que estгo definidos na tabela ASCII.

Antes de tirares a tua dъvida, por favor, lк estes tutoriais:

https://sampforum.blast.hk/showthread.php?tid=296519
https://sampforum.blast.hk/showthread.php?tid=404151
https://sampforum.blast.hk/showthread.php?tid=372148
https://sampforum.blast.hk/showthread.php?tid=470075
https://sampforum.blast.hk/showthread.php?tid=484602
https://sampforum.blast.hk/showthread.php?tid=480985
https://sampforum.blast.hk/showthread.php?tid=240266
https://sampwiki.blast.hk/
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)