Zitat...
...
...
Es kann doch nicht so schwer sein auf die Hitbox zu zielen?
Wenns hochkommt schiess einfach Rechts unten neben die Knie.
Von mir kann ich aber kurz ne Runde mit dir spielen.
Zitat...
...
...
Es kann doch nicht so schwer sein auf die Hitbox zu zielen?
Wenns hochkommt schiess einfach Rechts unten neben die Knie.
Von mir kann ich aber kurz ne Runde mit dir spielen.
Du musst es natürlich auch anpassen...
Siehe @Casey:'s Beispiel.
Vergiss nicht es über allen anderen Funktionen in deinem /matskaufen Befehl o.Ä einzufügen ![]()
if(mats==500)return SendClientMessage(playerid,-1,"Du darfst nicht mehr als 500 Mats tragen");
Vielleicht so? ![]()
Du musst noch die // vor #define Filterscript löschen.
OnPlayerStreamIn
Das ist der public deiner wahl ![]()
Weil MD5 oder etwas anderes was das Passwort verschlüsselt Includiert und benutzt wird ![]()
Schreib doch einfach das es dann Bugusing ist ![]()
Ansonsten
if(GetPlayerSpecialAction(playerid) == SPECIAL_ACTION_DRINK_SPRUNK && health>=50)return GetPlayerHealth(playerid,health),if(health==99)return 0;SetPlayerHealth(playerid,health+15);
Nein,
if(GetPlayerSpecialAction(playerid) == SPECIAL_ACTION_DRINK_SPRUNK && health>=50)return GetPlayerHealth(playerid,health),SetPlayerHealth(playerid,health+15);
Ja aber halt über allen anderen Code.
(Sonst bringt das Return ja nichts)
#if defined FILTERSCRIPT
#endinput
#endif
#if defined _moneyhax_included
#endinput
#endif
#define _moneyhax_included
#define CHECK_TIME 30 // in seconds to check if money is equal to the saved one.
new PMoney[MAX_PLAYERS];
forward GetPlayerMonez(playerid);
forward ResetPlayerMonez(playerid);
forward GivePlayerMonez(playerid,money);
forward MoneyCheck();
public MoneyCheck()
{
new money;
#if defined _foreach_included
foreach(Player,playerid)
{
money = GetPlayerMoney(playerid);
if( money < PMoney[playerid] && money > -1 ) PMoney[playerid]=money;
ResetPlayerMoney(playerid);
GivePlayerMoney(playerid,PMoney[playerid]);
}
#else
for(new playerid;playerid<MAX_PLAYERS;playerid++) if(IsPlayerConnected(playerid))
{
money = GetPlayerMoney(playerid);
if( money < PMoney[playerid] && money > -1 ) PMoney[playerid]=money;
ResetPlayerMoney(playerid);
GivePlayerMoney(playerid,PMoney[playerid]);
}
#endif
return 1;
}
public GivePlayerMonez(playerid, money)
{
new rmoney = GetPlayerMoney(playerid);
if( rmoney < PMoney[playerid] && rmoney > -1 ) PMoney[playerid]=rmoney;
PMoney[playerid]+=money;
ResetPlayerMoney(playerid);
GivePlayerMoney(playerid,PMoney[playerid]);
return 1;
}
public ResetPlayerMonez(playerid)
{
ResetPlayerMoney(playerid);
PMoney[playerid]=0;
return 1;
}
public GetPlayerMonez(playerid) return PMoney[playerid];
#define GivePlayerMoney GivePlayerMonez
#define GetPlayerMoney GetPlayerMonez
#define ResetPlayerMoney ResetPlayerMonez
public OnGameModeInit()
{
SetTimer("MoneyCheck",CHECK_TIME*1000,true);
if (funcidx("moneyhax_OnGameModeInit") != -1)
{
return CallLocalFunction("moneyhax_OnGameModeInit", "");
}
return 1;
}
#if defined _ALS_OnGameModeInit
#undef OnGameModeInit
#else
#define _ALS_OnGameModeInit
#endif
#define OnGameModeInit moneyhax_OnGameModeInit
forward moneyhax_OnGameModeInit();
public OnPlayerConnect(playerid)
{
PMoney[playerid]=0;
if (funcidx("moneyhax_OnPlayerConnect") != -1)
{
return CallLocalFunction("moneyhax_OnPlayerConnect", "i", playerid);
}
return 1;
}
#if defined _ALS_OnPlayerConnect
#undef OnPlayerConnect
#else
#define _ALS_OnPlayerConnect
#endif
#define OnPlayerConnect moneyhax_OnPlayerConnect
forward moneyhax_OnPlayerConnect(playerid);
Das zum Include machen und und im Gamemode Includieren.
Danach GivePlayerMoney mit GivePlayerMonez ersetzten (Replace Funktion hilft).
Falsche MySQL Version vielleicht?
Bzw. versuch mal das neuste Include downzuloaden.
Zeilen sind egal, die Features sind wichtig.
Vielleicht ein Aktien System, ein Laptop System mit Textdraws ein Handy System mit Textdraws und ein Bedürfnissystem.
Das wichtigste ist aber die Community.
Nein du sollst mit SetTimerEx & OnPlayerConnect arbeiten.
Den Timer nennst du dann gleich wie deinen Forward und dann auch den Public.
z.B
OnPlayerConnect
{
SetTimerEx("anticheathp",900,1,"d",playerid);
return 1;
}
forward anticheathp(playerid);
public anticheathp(playerid)
{
// Code
return 1;
}
Tipp: Arbeite mit SetTimerEx anstatt OnPlayerUpdate, viel besser.
Ich setz mich gleich mal an deinen Code ![]()
Okay wie oft gibts das Tutorial schon?
3 Mal?
Find ich jetzt eher Unnötig.
ShowPlayerDialog(playerid,DIALOG_TUTORIAL,DIALOG_STYLE_MSGBOX,"Tutorial","Möchtest du das Tutorial machen?","Ja","Nein");
Und das dann nach deinem Register Dialog.
@Kankuro:
Aber wie soll ein (falls benutzt) Mittelsmann dann die Summe überprüfen? (Des Gutscheins)
Er meint glaube ich das man dir einen Gutschein im wert von 10€ etc. andrehen könnte
aber es nicht gleich bemerkt wird