FACEPALM !
Schreibe SetTimerEx unter OnPlayerLogin und frage da schon ab, ob der Spieler Medic ist oder nicht ![]()
mfg. ![]()
FACEPALM !
Schreibe SetTimerEx unter OnPlayerLogin und frage da schon ab, ob der Spieler Medic ist oder nicht ![]()
mfg. ![]()
und genau so eins möchte ich auch
Ja, dann schreibe es dir, dauert nicht sehr lange, also du wirst denke ich mal keinen Tag für ein dynamisches Gangfight system brauchen ! (bzw ich habe nur 2std gebraucht)
mfg. ![]()
Ich persönlich finde es ARM Sachen aus anderen Scripts zu kopieren !
Benutze doch das als deine Vorlage und versuche es mal selber: http://wiki.sa-mp.com/wiki/Main_Page_DE
mfg. ![]()
Klar, du nimmst den Quellcode und compilierst ihn mit einem 0.3d Compiler ![]()
mfg. ![]()
Da hast du Recht
Ja, so muss es tatsächlich sein.
Also: In der IF-Abfrage "playerid" durch "i" ersetzen!
//Kaliber:
Aber es wird ja gefragt ob "i" in der Fraktion Medic ist, oder nicht? Dann geht das doch?
Quatsch !
Ich habe recht
Verwende meinen Code und lass dir jetzt nichts einreden @SunRise !
mfg. ![]()
//Edit SA:MP
Du darfst das doch nicht unter OnGameModeInit schreiben ![]()
Schreibe das in keinen Callback einfach ganz unten hin den "public" ![]()
Achja, ihr benutzt ja alle GF ![]()
Die haben da so ein Makro drinnen richtig gay !
Okay, es muss dann glaube ich so heißen:
function Fillup()
mfg. ![]()
Muss es nicht so heißen ?
if(PlayerInfo[i][pMember] == /* Fraktion */ || PlayerInfo[i][pLeader] == /*Fraktion*/)
{
SendClientMessage(i, FARBE, str);
}
Nein, da ja dem Spieler (der der Medic ist = playerid) eine Nachricht gesendet werden soll und nicht dem, der kaum noch Leben hat ![]()
mfg. ![]()
Bei mir gibt es das garnicht ..
![]()
-.- Vielleicht benutzt ihr nicht das selbe Script, aber das muss es ja geben, da er einen Timer zu diesem Callback erstellt hat ![]()
mfg. ![]()
Schreibe es so:
SetTimerEx("Health", 1000, 1, "i", playerid);
//Irgendwo außerhalb eines Callbacks:
forward Health(playerid);
//Irgendwo darunter:
public Health(playerid)
{
for(new i; i < MAX_PLAYERS; i++)
{
new Float:health[MAX_PLAYERS];
health = GetPlayerHealth(i);
if(health[i] < 10)
{
new name[MAX_PLAYER_NAME], str[256];
GetPlayerName(i, name, sizeof(name));
format(str, sizeof(str), "%s hat unter 10 Health, kümmere Dich um ihn!", name);
if(PlayerInfo[playerid][pMember] == /* Fraktion */ || PlayerInfo[playerid][pLeader] == /*Fraktion*/)
{
SendClientMessage(playerid, FARBE, str);
}
}
}
return 1;
}
mfg. ![]()
Schick mir mal deine TeamViwer Daten per PM, ich mach dir das schnell ![]()
mfg. ![]()
So muss das geschrieben werden:
SetPlayerAttachedObject(playerid,0,19347,16,0.115999,-0.205000,0.447000,93.899971,3.700009,135.900161,1.410998,1.212999,4.876999,0xFF00FF00);
mfg. ![]()
Das muss nicht bei OnGameModeInit rein sondern unter OnVehicleSpawn oder OnVehicleStreamIn, dass muss dann aber auch so aussehen:
new engine,lights,alarm,doors,bonnet,boot,objetive;
GetVehicleParamsEx(vehicleid, engine, lights, alarm, doors, bonnet, boot, objective);
SetVehicleParamsEx(vehicleid, false, lights, alarm, doors, bonnet, boot, objective);
mfg. ![]()
Es gibt "Fillup" nur 1 mal.. Und das bei /tanken.
So soll es ja auch sein ![]()
Wir wollen wissen wie das aussieht:
public Fillup()
{
//pls Inhalt posten
}
mfg. ![]()
ZitatSetTimerEx("Health", 1000, true);
Das ist falsch, muss so lauten:
SetTimerEx("Health", 1000, 1, "i", playerid);
Du musst die ganzen Funktionen auch noch ergänzen und in den richtigen Callback schreiben ![]()
mfg. ![]()
Naja..... 4/10 !
mfg. ![]()
Eindeutig ein Klammerfehler (zu 99.9%), denn normalerweise gibt der Compiler, wenn du einen Callback ohne forward deklariert hast, nur 1 Warning aus und nicht 5 oder so...
Also erinnere dich an das letzte was du gemacht hast und passe die Klammern an ![]()
mfg. ![]()
Ich schaffe es nicht
So sollte der Timer aussehen:
SetTimerEx("Fillup",RefuelWait,0,"i",playerid);
Doch poste mal den Callback Fillup ![]()
mfg. ![]()
Oben in dein Script:
#include <sscanf>
und dann unter deine Includes:
stock PlayerName(playerid)
{
new name[MAX_PLAYER_NAME];
GetPlayerName(playerid, name, sizeof name);
return name;
}
mfg. ![]()