Hau den Timer mal bisschen weiter runter vom aktualisieren der Textdraws...
stell das mal auf 2500 anstatt 1000
und ehm, vielleicht irgendwelche Textdraws doppelt definiert?
Hau den Timer mal bisschen weiter runter vom aktualisieren der Textdraws...
stell das mal auf 2500 anstatt 1000
und ehm, vielleicht irgendwelche Textdraws doppelt definiert?
Ich denke die Theards sind da um Probleme zu lösen.
Dann schreib bitte auch die Verbesserung dazu anstatt eine Kritik
Wie das mit dem Killstreak ausrechnet weiß ich leider nicht....
Öhm das mit den Toden hochrechen stimmt, aber du musst halt nur den Textdraw aktualisieren
/// Edit: Das über mir is besser
Ich habe auf meinem DM Server diese:
/kick ** /admin ** /setweather ** /cc ** /repp ** /(un)freeze ** /(un)tv ** /carrespawn ** /gun ** /ator ** /asay ** /aw ** /spawn
/(un)ban ** /setskin ** /veh ** /explode ** /getip ** /(un)mute ** /restart ** /goto ** /gethere ** /(un)jail ** /dc ** /makeadmin **/ooc
cc um Chatlog zu clearen
tv um Spieler zu specen
ator um Tore zu öffnen (man kann damit halt auch die öffnen, wenn man nicht in der Frakk ist.
asay um der Community was mitzuteilen
dc Um Cars zu löschen
ooc um Public Chat aus/anzuschalten
Der Rest ist denke klar.
Habs:
format(string,128,"Name: %s\nVermögen: %i\nScore: %d\nAdminlevel: %i",name,Geld,Level,Adminlevel);
Du musstest die % Dinger verändern...
Und zwar ist Vermögen eine Variabel, deswegen %i, bei Adminlevel genau das selbe.
Score ist von SAMP aus definiert deswegen %d, war schon richtig
und %s ist beim Namen auch richtig
Aso, ja das mit dem enum's passt ja, wenn du halt
willst das es speicherst müsstest du dini verwenden, da gibt es genug Tutorials...
Nen Timer könntest du so machen:
forward InfoBoxAktualisieren();
OnGameModeInit:
SetTimer("InfoBoxAktualisieren", 1000, 1);
public InfoBoxAktualisieren()
{
for(new i; i<MAX_PLAYERS; i++)
{
new str2[128];
format(str2, sizeof(str2), "Kills: %d ~n~Tode: %d ~n~Killstreaks: %d,GetPVarInt(i,"Kills"),GetPVarInt(i,"Tode"),GetPVarInt(i,"Killstreak"));
TextDrawSetString(InfoBox[i],str2);
TextDrawShowForPlayer(i,InfoBox[i]);
}
return 1;
}
/// Edit: Code verbessert
je nach dem, wenn du z.b. mit ocmd arbeitest müsstest du es so machen
ocmd:take(playerid,params[])
{
new Spieler;
if(sscanf(params,"d",Spieler))return SendClientMessage(playerid, Farbe, "Benutze: /take [Spieler]");
In das "" nach params schreibt man Flogendes:
Bei ID's verwendet man "d"
Bei Variabeln verwendet man "i"
Bei Schriftzeichen verwendet man "s"
MfG FaridBangSAMP
//Edit1: Code verbessert.
//Edit2: Edit hinzugefügt
Das ist mit TextDrawSetString möglich, ist genau so wie bei ein Textdraw der Punkte zählt
format(string,128,"Name: %s\nVermögen: %d\nScore: %d\nAdminlevel: \d",name);
Du hast nur den Namen Definiert, du musst noch das Vermögen, die Score und das Adminlevel definieren....
format(string,128,"Name: %s\nVermögen: %d\nScore: %d\nAdminlevel: \d",name, deine vermoegendefinierung, score, adminlevel);
Hau das in irgend ein Timer rein, der ganzezeit durchläuft, ist einfachher und
hast du irgendwie ein enum oder Sonstiges verwendet, dass der Textdraw gesaved wird?
for(new i; i<MAX_PLAYERS; i++)
{
new str2[128];
format(str2, sizeof(str2), "Kills: %d ~n~Tode: %d ~n~Killstreaks: %d,GetPVarInt(i,"Kills"),GetPVarInt(i,"Tode"),GetPVarInt(i,"Killstreak"));
TextDrawSetString(InfoBox[i],str2);
TextDrawShowForPlayer(i,InfoBox[i]);
MfG
FaridBangSAMP
///edit: Textdraw sieht nice aus
Passiert auch wenn irgend welche Kinder auf dem Server ihr ganzes GTA mit Mods verseucht haben und plötzlich in deine nähe kommen
Hallo,
ralle den Fehler einfach nicht....
bekomme hier ganzezeit den Error bei den beiden Scriptzeilen:
I:\Test Server\gamemodes\Test.pwn(930) : warning 213: tag mismatch
I:\Test Server\gamemodes\Test.pwn(931) : warning 213: tag mismatch
Habe bei der Definierung auch kein [MAX_PLAYERS] oder so verwendet....
new str3[3];
format(str3, sizeof(str3),"%d",amount);
UpdatePlayer3DTextLabelText(playerid, Schaden, Farbe2, str3); /// ERROR ZEILE
DeletePlayer3DTextLabel(playerid,Schaden); /// ERROR ZEILE
MfG FaridBangSAMP
// Ganz Oben
new TextVorhanden[MAX_PLAYERS] = 0;
new Text3D:Text[MAX_PLAYERS];
ocmd:text(playerid,params[])
{
new string[128], nachricht;
if(sscanf(params,"s",nachricht))return SendClientMessage(playerid,ROT,"Benutze: /text [Text]");
if(TextVorhanden == 0)
{
Text = Create3DTextLabel("string", Farbe, 30.0, 40.0, 50.0, 50.0,0,1);
Attach3DTextLabelToPlayer(Text, playerid, 0.0, 0.0, 0.7);
TextVorhanden = 1;
}
else
{
Update3DTextLabelText(Text, Farbe, string);
}
return 1;
}
Ist ungetestet, keine ahnung ob es geht...
Hallo,
und zwar bin ich dabei eine Schadenanzeige
zu scripten. Jedoch aktualisiert sie sich nicht
bei erneuten Treffern und verschwindet auch nicht
Ich weiß auch nicht ob ich mit SetTimerEx arbeiten muss bei 3D Text Labeln, da es ja jeder sehen soll.
Und wenn bitte Code Schnipsel schicken, danke
new Text3D:Schadenanzeige;
public OnPlayerTakeDamage(playerid, issuerid, Float: amount, weaponid)
{
new str3[3];
format(str3, sizeof(str3),"%d",amount);
Schadenanzeige = Create3DTextLabel(str3, Farbe, 30.0, 40.0, 50.0, 50.0,0,1);
Attach3DTextLabelToPlayer(Schadenanzeige, playerid, 0.0, 0.0, 0.7);
SetTimer("DamageAnzeige", 1500, 0);
return 1;
}
public DamageAnzeige(Float: amount)
{
new str3[3];
format(str3, sizeof(str3),"%d",amount);
Update3DTextLabelText(Schadenanzeige, Farbe, str3);
Delete3DTextLabel(Schadenanzeige);
return 1;
}
Freue mich auf Hilfe
MfG FaridBangSAMP
/// Edit: [ vergessen
Ahh vergessen, Thx
Hallo,
kann man die EndCode Datei irgendwie zum PWN Code konvertieren oder so?
Ich habe den TextDrawEditor von Zambaroth benutzt, jedoch sehen
meine TextDraws übelst komisch aus wenn ich sie im Script angucke....
Mfg FaridBangSAMP
Waffe und Skin kann man mit GetPlayerWepon und GetPlayerSkin abfragen,
Bei den Animationen müsstest du Variabeln benutzen...
Wollte es so haben dass immer 1 Label übern Kopf is, der nach 1.5 sekunden weggeht oder sich löscht wenn man wieder schaden zu sich genommen hat... Am besten mit Codeschnipsel...
Hallo,
Wollte eine Damage Anzeige machen,
Jedoch weiß ich nicht wie Finde auch nichts...
Und zwar möchte ich dass über den getroffenen Spieler der Schaden steht,
aber wie mache ich es am besten, dass der Label sich wieder löscht?
Hätte da jmd. Ein par Codeschnipsel?
MfG FaridBangSAMP