Jump to content
Bekijk in de app

Een betere weg om onze GTA community te volgen. Leer meer.

GTAGames.nl - De Nederlandse Grand Theft Auto Community!

Een volledig scherm app op het beginscherm inclusief notificaties, badges en meer.

Om deze app op je iPhone en iPad te installeren
  1. Druk op het icoon in Safari
  2. Scroll in het menu en druk op Zet op beginscherm.
  3. Druk op Voeg toe rechts bovenaan.
Om deze app op je Android toe te voegen
  1. Druk op het 3-punten menu (⋮) rechts bovenaan in de browser.
  2. Druk op Toevoegen aan beginscherm of Installeer app.
  3. Druk op Toevoegen om te bevestigen.
Geplaatst:
comment_1641031

Hey,

Ik heb een rare bug in mijn server en ik wete hem niet op te lossen. De commando's werken niet. Hier is de code

public OnPlayerCommandText(playerid, cmdtext[])
{
   dcmd(deposit,7,cmdtext);
dcmd(withdraw,8,cmdtext);
dcmd(bank,4,cmdtext);

new pName[MAX_PLAYER_NAME];
GetPlayerName(playerid,pName,sizeof(pName));
new string[248];
if (strcmp("/licenses", cmdtext, true, 10) == 0)
{
    if(IsPlayerInRangeOfPoint(playerid,5.0,-2031.7733,-116.9298,1035.1719))
    {
		new dtests[] = "1\tDriving License - 800$\n2\tFlying License - 2000$\n3\tGun License - 500$";
   		ShowPlayerDialog(playerid,999,DIALOG_STYLE_LIST,"Licenses, Chose One:",dtests,"Test","Exit");
   		return 1;
	}
	else if(!IsPlayerInRangeOfPoint(playerid,5.0,-2031.7733,-116.9298,1035.1719))
	{
	    SendClientMessage(playerid,grey,"--> This command is only used at the SanFiero School.");
	}
	return 1;
}
if (strcmp("/sl", cmdtext, true, 10) == 0)
{
    SendClientMessage(playerid,grey," Use: /sl [driving/flying/gun].");
    return 1;
}
if (strcmp("/sl driving", cmdtext, true, 10) == 0)
{
    if(PlayerInfo[playerid][DrivingLicense] == 0)
    {
        format(string,sizeof(string)," %s doesnt have a valid Driving License",pName);
        SendClientMessageToAll(aquablue,string);
	}
	else if(PlayerInfo[playerid][DrivingLicense] == 1)
    {
        format(string,sizeof(string)," %s shows a legit Driving License.",pName);
        SendClientMessageToAll(aquablue,string);
	}
    return 1;
}
if (strcmp("/sl flying", cmdtext, true, 10) == 0)
{
    if(PlayerInfo[playerid][FlyingLicense] == 0)
    {
        format(string,sizeof(string)," %s doesn't have a valid Flying License",pName);
        SendClientMessageToAll(aquablue,string);
	}
	else if(PlayerInfo[playerid][FlyingLicense] == 1)
    {
        format(string,sizeof(string)," %s shows a legit Flying License.",pName);
        SendClientMessageToAll(aquablue,string);
	}
}
if (strcmp("/sl gun", cmdtext, true, 10) == 0)
{
    if(PlayerInfo[playerid][GunLicense] == 0)
    {
    	format(string,sizeof(string)," %s doesn't have a valid Gun License",pName);
        SendClientMessageToAll(aquablue,string);
	}
	else if(PlayerInfo[playerid][GunLicense] == 1)
    {
        format(string,sizeof(string)," %s shows a legit Gun License.",pName);
        SendClientMessageToAll(aquablue,string);
	}
}
return 0;
}

En hier zijn de DCMD commando's. Deze werken ook niet dus moet de bug wel in OnPlayerCommandText zijn...

dcmd_bank(playerid,params[])
{
#pragma unused params
if (IsPlayerInRangeOfPoint(playerid,20.0,1459.22, -1012.63, 28.84) || IsPlayerInRangeOfPoint(playerid,20.0,-1495.398,919.942,7.187))
{
    ShowPlayerDialog(playerid,DIALOG_BANK,DIALOG_STYLE_LIST,"--> Withdraw, deposit, or see how much money you have?","Deposit\nWithdraw\nCheck Bank Account","Choose","Cancel");
}
else return SendClientMessage(playerid,red,"--> You must be near the Bank! [The Money Sign]");
return 1;
}

dcmd_deposit(playerid,params[])
{
new amout=strval(params);
if (IsPlayerInRangeOfPoint(playerid,20.0,1459.22, -1012.63, 28.84))
{
    if (strlen(params)>0)
    {
        if (IsNumeric(params))
        {
			if (GetPlayerMoney(playerid)>=amout)
			{
			    GivePlayerMoney(playerid,-amout);
			    bnk_UserSetInt(PlayerName(playerid),"in",bnk_UserInt(PlayerName(playerid),"in")+amout);
			    new string[200];
			    format(string,sizeof(string),"--> You have succesfully deposited %i$ , Now in bank : %i$ .",amout,bnk_UserInt(PlayerName(playerid),"in"));
				SendClientMessage(playerid,red,string);
			}
			else return SendClientMessage(playerid,red,"--> You don't have enough money!");
        }
        else return SendClientMessage(playerid,red,"--> Amout must be numeric !");
    }
    else return SendClientMessage(playerid,red,"--> Syntax Error: /deposit [AMOUT]");
}
else return SendClientMessage(playerid,red,"--> You must be near a bank . ");
return 1;
}
dcmd_withdraw(playerid,params[])
{
new amout=strval(params);
if (IsPlayerInRangeOfPoint(playerid,20.0,1459.22, -1012.63, 28.84))
{
    if (strlen(params)>0)
    {
        if (IsNumeric(params))
        {
            if (amout<=bnk_UserInt(PlayerName(playerid),"in"))
            {
                bnk_UserSetInt(PlayerName(playerid),"in",bnk_UserInt(PlayerName(playerid),"in")-amout);
                new string[200];
				format(string,sizeof(string),"--> You have succesfully withdrawed %i$ , Now in bank : %i$ .",amout,bnk_UserInt(PlayerName(playerid),"in"));
                SendClientMessage(playerid,yellow,string);
                GivePlayerMoney(playerid,amout);
            }
            else return SendClientMessage(playerid,red,"--> Not enough money in the bank!");
        }
        else return SendClientMessage(playerid,red,"--> Amout must be numeric !");
    }
    else return SendClientMessage(playerid,red,"--> Syntax Error: /withdraw [amount]");
}
else return SendClientMessage(playerid,red,"--> You must be near the bank");
return 1;
}

IsNumeric(const string[])
{
for (new i = 0, j = strlen(string); i < j; i++)
{
if (string[i] > '9' || string[i] < '0') return 0;
}
return 1;
}

Ik hoop dat iemand het weet,

Groeten, Jochem

Bewerkt: door Jochemd

Featured Replies

Geplaatst:
  • Auteur
comment_1641112

Ik denk eerder dat jij bugged hebt getypt, of gewoon verkeerd de regels heb afgesloten.

kijk nog 1x goed naa

met { en }

Onmogelijk. In een filterscript staat hetzelfde. Die werken wel. Bovendien geeft hij geen SERVER: UNKNOWN COMMAND. Er moet dus een andere fout zijn...

Bewerkt: door Jochemd

Geplaatst:
comment_1641670

je kan bijv inplaats dan dit:

if (strlen(params)>0) 
{
..
}
else return SendClientMessage(playerid,red,"--> Amout must be numeric !");

gewoon dit doen:

if (strlen(params)<0) return SendClientMessage(playerid,red,"--> Syntax Error: /withdraw [amount]");

als je niks heb ingegeven stopt het command als je het wel hebt gedaan gaat het gewoon verder

Een reactie plaatsen

Je kan nu een reactie plaatsen en pas achteraf registreren. Als je al lid bent, log eerst in om met je eigen account een reactie te plaatsen.

Gast
Op dit onderwerp reageren...

Recent actief 0

  • Er zijn hier geen geregistreerde gebruikers aanwezig.

Configureer push berichten

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.