SA-MP Forums

Go Back   SA-MP Forums > Non-English > Languages > Português/Portuguese

Reply
 
Thread Tools Display Modes
Old 12/06/2020, 12:25 PM   #1
denisebr
Little Clucker
 
Join Date: Jun 2014
Posts: 24
Reputation: 0
Default Erro na função

Olá estou tentando armazenar numa variável o dinheiro, mas esta dando erro

PHP Code:
enum ENUM_PLAYER_MONEY
{
    
ID,
    
Name[25],
    
    
Money,

    
CachePlayer_Money,
    
bool:MoneyPlayer
}

new 
mInfo[MAX_PLAYERS][ENUM_PLAYER_MONEY]; 

PHP Code:
 forward public SetMoney(playeriddinheiro);
public 
SetMoney(playeriddinheiro){
    
cache_set_active(mInfo[playerid][Player_Money]);
    
mInfo[playerid][Name] = playerid;
      
mInfo[playerid][dinheiro] = mInfo[playerid][Money] + dinheiro;


Erro

PHP Code:
 error 010invalid function or declaration
 error 010
invalid function or declaration 
O erro é nas seguintes linhas:

PHP Code:
forward public SetMoney(playeriddinheiro);
public 
SetMoney(playeriddinheiro){ 
Quando eu tiro o dinheiro ele funciona normal, agora assim da erro.
denisebr is offline   Reply With Quote
Old 12/06/2020, 12:50 PM   #2
darkxdll
High-roller
 
darkxdll's Avatar
 
Join Date: Jul 2012
Location: C:\Windows\DLLs
Posts: 1,634
Reputation: 89
Default Re: Erro na função

PHP Code:
 forward public SetMoney(playeriddinheiro);
public 
SetMoney(playeriddinheiro){
    
cache_set_active(mInfo[playerid][Player_Money]);
    
mInfo[playerid][Name] = playerid;
      
mInfo[playerid][dinheiro] = mInfo[playerid][Money] + dinheiro;



//correto seria:

forward SetMoney(playeriddinheiro);
public 
SetMoney(playeriddinheiro){

cache_set_active(mInfo[playerid][Player_Money]);

new 
name[24];
GetPlayerName(playeridnamesizeof name);
strcat(mInfo[playerid][Name], name);// se queres por o nome do jogador na array, é assim que deve ser feito, mas é bom limpar a string antes, 'strdel' faz isto

//mInfo[playerid][dinheiro] //isso não está declarado na enum.
mInfo[playerid][Money] = mInfo[playerid][Money]+dinheiro;
return 
1;

__________________
Discord: darkxdll#9097

Consulte valores.

Last edited by darkxdll; 12/06/2020 at 01:50 PM.
darkxdll is offline   Reply With Quote
Old 12/06/2020, 01:02 PM   #3
denisebr
Little Clucker
 
Join Date: Jun 2014
Posts: 24
Reputation: 0
Default Re: Erro na função

Olá obrigada por responder, mas o erro continua aqui
PHP Code:
 forward public SetMoney(playeriddinheiro);
public 
SetMoney(playeriddinheiro){ 
Eu tenho que declarar o dinheiro em uma variavel antes? dinheiro é um inteiro tentei colocar int:dinheiro,
mas continua o problema
denisebr is offline   Reply With Quote
Old 12/06/2020, 01:49 PM   #4
darkxdll
High-roller
 
darkxdll's Avatar
 
Join Date: Jul 2012
Location: C:\Windows\DLLs
Posts: 1,634
Reputation: 89
Default Re: Erro na função

Nem reparei kkk, usa-se assim:
PHP Code:
forward MinhaPublic(parametros);
public 
MinhaPublic(parametros)
{
//funções

ou seja

PHP Code:
forward SetMoney(playeriddinheiro);
public 
SetMoney(playeriddinheiro){ 
__________________
Discord: darkxdll#9097

Consulte valores.
darkxdll is offline   Reply With Quote
Old 12/06/2020, 02:56 PM   #5
denisebr
Little Clucker
 
Join Date: Jun 2014
Posts: 24
Reputation: 0
Default Re: Erro na função

mas da o erro la em cima nessas duas linhas
error 010: invalid function or declaration
error 010: invalid function or declaration
denisebr is offline   Reply With Quote
Old 12/06/2020, 02:58 PM   #6
ThiagoiHarDz
Banned
 
Join Date: May 2020
Location: Macarani-BA
Posts: 102
Reputation: 0
Default Re: Erro na função

Você está colocando forward public por isso está dando erro tente fazer assim

Code:
forward SetMoney(playerid, dinheiro);
public SetMoney(playerid, dinheiro){
ThiagoiHarDz is offline   Reply With Quote
Old 12/06/2020, 03:49 PM   #7
denisebr
Little Clucker
 
Join Date: Jun 2014
Posts: 24
Reputation: 0
Default Re: Erro na função

fiz isso continua o erro
denisebr is offline   Reply With Quote
Old 12/06/2020, 04:03 PM   #8
ThiagoiHarDz
Banned
 
Join Date: May 2020
Location: Macarani-BA
Posts: 102
Reputation: 0
Default Re: Erro na função

Você definiu o dinheiro? Exemplo:
enum pInfo
{
Dinheiro
};
new PlayerInfo[MAX_PLAYERS][pInfo];

Ou

new Dinheiro;
ThiagoiHarDz is offline   Reply With Quote
Old 12/06/2020, 04:16 PM   #9
denisebr
Little Clucker
 
Join Date: Jun 2014
Posts: 24
Reputation: 0
Default Re: Erro na função

Mas precisa? Eu so quero informar o dinheiro quando chamar a função.
Ai ele vai guardar dentro de money no cache
denisebr is offline   Reply With Quote
Old 12/06/2020, 04:22 PM   #10
darkxdll
High-roller
 
darkxdll's Avatar
 
Join Date: Jul 2012
Location: C:\Windows\DLLs
Posts: 1,634
Reputation: 89
Default Re: Erro na função

Não precisa definir, já que está declarando na forward já...

Do modo que está usando talvez seja melhor criar como função ou stock
PHP Code:
stock MinhaFun(parametros){
//funções
}
//ou
MinhaFun(parametros){
//funções

stock é uma função que só aparece quando é chamada, se não me engano ela reduz quantidade de memória.

https://wiki.sa-mp.com/wiki/Stocks
https://wiki.sa-mp.com/wiki/Keywords:Initialisers
__________________
Discord: darkxdll#9097

Consulte valores.
darkxdll is offline   Reply With Quote
Reply

Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off


Similar Threads
Thread Thread Starter Forum Replies Last Post
[Ajuda] Erro float função luccagomes15 Português/Portuguese 9 02/03/2016 03:19 PM
[Ajuda] Erro de funçao MySQL 3War Português/Portuguese 6 30/09/2015 01:48 AM
[Ajuda] [ERRO] Comandos estão realizando a msm função q outro cmd Sobrevizion Português/Portuguese 30 28/09/2014 11:58 PM
[Ajuda] Erro na função RemoveBuildingForPlayer. LucasTop Português/Portuguese 30 16/02/2013 03:27 AM
[Ajuda] Erro em um função '-' Ley Português/Portuguese 5 06/10/2012 01:49 AM


All times are GMT. The time now is 06:58 PM.


Powered by vBulletin® Version 3.8.6
Copyright ©2000 - 2020, Jelsoft Enterprises Ltd.