@duengonalex:
in einen Timer wäre gut?
Hat sich schon geregelt :D, danke trotzdem direkt nach dem Thread noch ne Abfrage gemacht und es hat funktioniert!
@duengonalex:
in einen Timer wäre gut?
Hat sich schon geregelt :D, danke trotzdem direkt nach dem Thread noch ne Abfrage gemacht und es hat funktioniert!
Wie kann ich eine eigenen AudioDatei im Server abspielen lassen?
Wie wäre es mit der TextDrawBox? :O
Ps. War wohl wer schneller
Ok Verzeihung, ich habe einen Dialog in den ich einen inputtext eingebe.
Dieser soll abgespeichert werden und dann im Textdraw ausgegeben werden.
Alles funktioniert, schön und gut aber es gibt Komplikationen mit der Kamera sie ist nicht mehr BehindPlayer.. und es verändert sich die Sicht usw....
Also muss irgendwo ein Fehler sein bei der Abfrage oder bei der wiedergabe der Variable.
Danke Jungs
Also funktioniert das ganze mit Timern.
ocmd:zustand(playerid,params[])
{
new string[128];
new Zustand[12] = 100;
format(string, sizeof(string),"Leben: %d%", Zustand);
ShowPlayerDialog(playerid, DIALOG_ZUSTAND, DIALOG_STYLE_MSGBOX, "Zustand", string, "Ok", "");
return 1;
}
So ich bin gerade dabei den Zustand herauszufinden.
Am Anfang sollte der Zustand immer 100% sein.
Aber sollte nach 10 Sekunden immer 1% tiefer gehen.
Wie genau kann ich das umsetzen?
Mit fehlt jetzt etwas die Idee.
Also ich habe oft gehört das ein Script welches viele Ressourcen zieht auch laggen kann und das ganze, was natürlich auch logisch klingt.
Frage 1: Mich würde mal interessieren was denn alles genau viele Ressourcen zieht, also unnötige Zeilen die man sich sparren kann?
Frage 2: Wie schauts aus mit ocmd: wenn alle Befehle mit ocmd: und strcmp sind ist das schlecht, oder was ist am besten?
Frage 3: Und ist es schlimm wenn man viele publics und stocks benutzt oder sollte man dies lieber vermeiden?
Frage 4: Und wie kann man eigentlich die Ressourcen eines Scripts herausfinden? An der Speicherkapazität eines Scripts?
Frage 5: Wenn ja wie viele MB's sollte ein komplettes, Ressourcen sparrendes Script betragen?
Danke an alle!
Habe nicht so viel mit Textdraws zutun!
Sry nochmal fürs nerven :p
ja ich sehe es lösche das <---ö
Gibt aber immer irgendwie noch Probleme mit TextDrawDestroy.
C:\Users\Alex\Desktop\Scripts\Samp-Server\filterscripts\deaglesystem.pwn(373) : warning 202: number of arguments does not match definition
C:\Users\Alex\Desktop\Scripts\Samp-Server\filterscripts\deaglesystem.pwn(374) : warning 202: number of arguments does not match definition
C:\Users\Alex\Desktop\Scripts\Samp-Server\filterscripts\deaglesystem.pwn(375) : warning 202: number of arguments does not match definition
Pawn compiler 3.2.3664 Copyright (c) 1997-2006, ITB CompuPhase
3 Warnings.
Errors:
C:\Users\Alex\Desktop\Scripts\Samp-Server\filterscripts\deaglesystem.pwn(366) : error 001: expected token: "(", but found "ö"
C:\Users\Alex\Desktop\Scripts\Samp-Server\filterscripts\deaglesystem.pwn(366) : error 001: expected token: ";", but found "-identifier-"
C:\Users\Alex\Desktop\Scripts\Samp-Server\filterscripts\deaglesystem.pwn(367) : error 001: expected token: ";", but found "ö"
C:\Users\Alex\Desktop\Scripts\Samp-Server\filterscripts\deaglesystem.pwn(369) : error 010: invalid function or declaration
C:\Users\Alex\Desktop\Scripts\Samp-Server\filterscripts\deaglesystem.pwn(371) : error 010: invalid function or declaration
C:\Users\Alex\Desktop\Scripts\Samp-Server\filterscripts\deaglesystem.pwn(378) : error 010: invalid function or declaration
Pawn compiler 3.2.3664 Copyright (c) 1997-2006, ITB CompuPhase
Kommen leider Errors wenn ich das so mache:
forward löschetextdraw();
public löschetextdraw()
{
for(new i=0;i<MAX_PLAYERS;i++)
{
if(GetPVarInt(i, "Teilnehmer"))
{
TextDrawDestroy(i, Textdraw0);
TextDrawDestroy(i, Textdraw1);
TextDrawDestroy(i, Textdraw2);
}
}
return 1;
}
Und wie kann ich den stock auffrufen ohne Timer:
SetTimer("zeigetextdraw",1,false);
Danke für deine Hilfsbereitschaft.
Will die Textdraws komplett raus nach einem bestimmten Befhel, aber keine Ahnung wie ich den stock aufbauen soll.
Genau.
Hier mal ein Tut [ SCRIPTING ] Einfache TextDraws erstellen - mit erklärung
Aber bei der Schleife solltest du noch IsPlayerConnected abfragen
Funktioniert jetzt alles einwanfrei, habe jetzt noch ne frage
Wie entferne ich die jetzt am besten wieder.
Und muss ich unbedingt einen Timer erstellen um den stock aufzurufen?
Ok danke schon mal für die Hilfe.
Also ich mache alle Textdraws bzw. die CreateTextdraws unter OnGameModeInit.......
Und lass den stock so wie er ist, also den zweiten Stock:
forward zeigetextdraw();
public zeigetextdraw()
{
for(new i=0;i<MAX_PLAYERS;i++)
{
if(GetPVarInt(i, "Teilnehmer"))
{
TextDrawShowForPlayer(i, Textdraw0);
TextDrawShowForPlayer(i, Textdraw1);
TextDrawShowForPlayer(i, Textdraw2);
}
}
return 1;
Und rufe Ihn einfach so auf:
SetTimer("zeigetextdraw",1,false);
Oder gibt es eine bessere Option ihn aufzurufen?
Post nochmal Aktualisiert.
Du zeigst es ja nicht an. Du musst es aber bei OnGameModeInit erstellen.
Wann rufst du den Stock auf das sie erstellt werden?
Gute Frage eigentlich gar nicht :o
Der stock wird nirgendswo aufgerufen?
Wie soll ich das am besten denn jetzt machen.
Danke euch..
Werde dann bald mal ein paar 'realistischere' ( runde, mit Nadel usw ) Tachos rausbringen..
Ansonsten, falls ihr ein bestimmtes Tacho haben wollt, könnt ihr mir gerne einen Screenshot / eine Zeichnung davon schicken..
New Text:Textdraw0 usw. wurde gemacht?
Vermutlich ja.
Und warum in einen Stock? Und wird der Stock aufgerufen? Wenn ja wo?
Habe ein stock gemacht, weil bei gamemodeinit tauchen die manchmal nie auf oder sie tauchen halt eben auf...
Aber die sollen nicht permanent angezeigt werden sonder lediglich sobald es beginnt.
Die Dialoge werden so:
unter einem Befehl z.B.
ocmd:/hilfe
{
SetTimer("zeigetextdraw",1,false);
return 1;
}
aufgerufen.
Schöne Dinger! Alle schauen richtig gut aus.
10/10 Für alles zusammen!
Ps. Würde mich freuen wen demnächst noch ein Update zum Haussystem kommt.
Es sollte unten rechts eine kleine Box dargestellt werden mit Text: xx.
Doch leider ist keine der Boxen identisch mit den Textdraws von mir.
Also kann man ausschließen das nur einfach ein Teil nicht dargestellt wird.
Sondern es wird alles nicht dargestellt.
@Unbekannter Soldat:
Woran kann das den liegen.
Ich weiß aufjedenfall das die Textdraws alle richtig erstellt werden.
Aber anscheinend kommt es zu einem Problem beim anzeigen.
Möglich das die Schleife das verursacht das Problem?
Alles anzeigenso weit bin ich schonmal aber wie muss ich das bei dem enum autohausEnum machen und bei new ahInfo[][autohausEnum] = ...
enum autohausEnum{
Float:s_x,
Float:s_y,
Float:s_z,
Float:s_r
}
new Float:RandomSpawn[][4] =
{-31.5830,-276.6498,5.3175,269.5427},//id: 0 1. autohaus
{-31.4291,-286.8210,5.3192,270.3276}//id: 1 2 autohaus
};
new rand = random(sizeof(RandomSpawn));
GivePlayerMoney(playerid,-ahCars[id][c_preis]);
createPlayerCar(playerid,ahCars[id][model],spawns[rand][spawnPos][0],spawns[rand][spawnPos][1],spawns[rand][spawnPos][2]);
SendClientMessage(playerid,LEUCHTENDBLAU,"Herzlichen Glückwunsch zu ihren Kauf");
SetVehiclePos(vehicleid, RandomSpawn[rand][0], RandomSpawn[rand][1],RandomSpawn[rand][2]);
NixMuss:
@duengonalex:
Probiers mal so ?