Wie wird das Textdraw erstellt ?
//edit
poste mal den code beim connecten
Wie wird das Textdraw erstellt ?
//edit
poste mal den code beim connecten
Mal eine Frage tritt das auf wenn du ein bestimmte query ausführst oder allgemein, wenn du den Server nur startest und connectest
und welches plugin benutzt du ?
kommt an ihrgend wo x beliebig oder sind es vordefinierte punkte dann solltest du die punkte ein ein array setzen und dann eine zufällige Zahl auswählen
das beispiel findest du hier http://wiki.sa-mp.com/wiki/Random dazu und
anders einfach ein specktrum auswählen.
beispiel:
new rand = random(4000);
und das ganze in eine Float umwandeln
new Float:X= float(random(4000));
PlayerPlaySound(playerid,sID, 0.0, 0.0, 5.0);
das liegt daran
PlayerPlaySound(playerid,sID, 0.0, 0.0, 5.0);
das wird am punkt 0 abgespielt du musst die position des spielers auslesen und danach dies auch entsprechend setzen
also
new Float:Pos[3];
GetPlayerPos(playerid,Pos[0],Pos[1],Pos[2]);
und die Float werte richtig einsetzen bei PlayerPlaySound
Freundlicher Bitte !
es geht jetzt dank Snipers metode
und bool no war dein werk und war völliger unsin es geht jetzt
//Closse
Wenn du nur halb so schnell wärst im lesen als im schreiben würdest du wohl in dem vorletzten post von mir und auch in dem post von sniper lesen könntest
und dazu hin auch mal auf die funktion GetOwnerRangeID schauen würdest das der wert -1 beträgt wenn du nicht in der nähe ihrgend einer der fahrzeuge bist.
im klar test es wird -1 returnt wenn du nicht in der nähe eines fahrzeuges bist welches etwa smit dme system zu tun hat.
Ok ich gebe zu ich hätte mir das denken müssen gebe ich auch zu , jedoch verlange ich kein geld für system und daher schau ich auch nicht so genau drauf und wie schon auch in skype geschrieben
hatte ich das problem nicht wo ich alles nochmal durch gegangen bin und du auch nicht auf deinem homeserver.
Und wenn du nun immer noch denkst das dieses bool hier nix bringen würde obwohl es sogar offentsichlich ist was bringt dann tust mir ihrgend wie leid und du brauchst auch nicht mehr
zu mir rennen in skype wegen ihrgend welchen kleinen erweiterungen beziehungsweise probleme.
Da ich jedoch ein netter Mensch bin werde ich dir das nochmal erkären warum ich hier ein bool gesetzt habe besser gesagt für was es in dem fall auch zu gebrauchen ist.
kleines beispiel:
new bool : no;
for(new i; i < 100; ++i){
if(i == 10){
no = false;
break;
}
else no =true;
}
if(no)return SendClientMessage(playerid,-1,"I befindet sich nicht im bereich von 0 - 100");
so nun geht die schleife hier 100 mal und dabei wird auch der wert von i erhöht
und wenn der wert i den wert 10 hat so wird die schleife abgebrochen , jedoch wird die nachricht nicht ausgegeben
new bool : no;
for(new i; i < 100; ++i){
if(i == 101){
no = false;
break;
}
else no =true;
}
if(no)return SendClientMessage(playerid,-1,"I befindet sich nicht im bereich von 0 - 100");
nun würde die schleife bis zum ende durch gehen und da nun der wert von no = 1 ist wird nun auch die nachricht ausgegebenan den Spieler.
ALso benutze ich das ganze um dem Spieler jeweils eine nachricht auszugeben um das ganze etwas abzurunden.
Ein eherer benutzungsfaktor der mir spontan einfallen würde wäre ein kleines torsystem . Um dem spieler natürlich etwas mit zu teilen ob er falsch liegt sollte sei es die Fraktion
oder der Radius zum tor.
Daher bietet sich sowas an.
Ich hoffe dir ist bewusst das du beim formatieren die Zahl beziehungsweise das Adminlevel was sich
unter der Variabel PlayerInfo[playerid][pAdmin] mit ein beziehst.
Wenn du das nicht willst solltest du das jeweilige entfernen
format(string, sizeof(string), "*%d Projektleiter %s[%d]: %s", PlayerInfo[playerid][pAdmin], sendername, playerid, result);
oder du änderst hier die Zahl um
if(PlayerInfo[playerid][pAdmin] >= 6)
statt ist gleich oder größer als 6 die gewünschte zahl.
dann mach aus den defines
#define PREIS 1 // Preis Pro liter
#define PREISS 50 //Preis pro Liter nach bomben auf bohrinsel
variabeln
new PREIS = 1, PREISS = 50
die du nun mit einem command verändern kannst oder durch eine funktion
jo habs gesehen ich habe dan unten mal das mit no ture weg gemacht ud teste ma
Mal ehrlich denk mal nach du bist ja noch kaputter im Hirn als ich nach mehreren Arbeiten hinter einander
if(no) return SendClientMessage(playerid,-1,"Du bist nicht in der nähe eines deiner Fahrzeuge!");
Klar wird das auch ohne gehen aber warum benutz ich hier ein bool ?
ganz einfach wenn die schleife failt also es gibt kein treffer so wird das dem spieler mit geteilt der wert von no beleibt 1 also true.
wo genau meinst du ?
if(no) return SendClientMessage(playerid,COLOR_RED,"Du bist nicht in der nähe eines deiner Fahrzeuge!");
das hier auf if(id == -1) ändern ?
nein ganz oben xD wie es Sniper schon gepostet hatte.
dann mach ganz einfach eine abfrage rein
if(id == -1) return SendClientMessage(playerid,-1,"Du bist an keinem Auto");
der kakt wegen dem -1 ab
Wie wäre es ganz einfach, wenn du das ganze debugst mit dem netten plugin crashdetect
http://forum.sa-mp.com/showthread.php?t=262796
//edit
und warum sollte das an dem
else no=true;
liegen ?
du weißt auch das dies nur den wert von dem bool auf 0 setzt
und was ich auch nicht versteh was du überhaupt mit dem Autohaus machst ? Auf meinem homeserver geht alles wunderbar ich hatte niemals bugs drinne
Als fahrer geht das leicht aber ob der gewünschte effekt auch bei paar flugzeuge erfolgt ist fraglich beispiel beim shamal .
Ganz einfach du erstellst ein objekt und lässt es an das auto anfügen danach setzt du ganz einfach die kamera hinter das objekt.
gebrauchte funktionen
AttachObjectToVehicle
TogglePlayerSpectating
AttachCameraToObject
ocmd:admin(playerid)
{
new Float:Pos[3],PlayerText3D:Text[MAX_PLAYERS];
GetPlayerPos(playerid, Pos[0],Pos[1],Pos[2]);
for(new i; i < MAX_PLAYERS; i++){
if(IsPlayerConnected(i) && SpielerInfo[j][pAdmin] >= 2){
Text[playerid] = CreatePlayer3DTextLabel(i,"Du bist Admin 2 oder höher",0x008080FF,Pos[0],Pos[1],Pos[2],40.0);
}
}
return 1;
}
hier bitte also der command sollte gehen obwohl ich nicht versteh warum es bei dir nicht gehen sollte
um das noch zu überprüfen brauchst du natürlich noch eine forschleife.
for(new i; i < sizeof(FUEvehs); i++){
if(GetVehicleModel(vehicleid) == FUEvehs[i])
}
D.h. ich kann das nur mit mysql_Setint usw. machen ?
nur ist das falsche wort du kannst das ganze auch in ein query packen
ein Beispiel
mysql_format(g_ConnectionHandle,sql2,"UPDATE `pflanzen` SET `Leben` = '%d',`Wachstum` = '%d',`Wasser` = '%d',`Erde` = '%d'",DrogenInfo[id][Leben],DrogenInfo[id][Wachstum],DrogenInfo[id][Wasser],DrogenInfo[id][Erde]);
es wird dazu verwendet den string der ausgelesen wird zu splitten daher wie es schon Tommyx3
erwähnt hatte ist es nicht möglich du kannst jedoch die ganzen variabeln in einen string speichern und das ganze auch in einer tabelle unter bringen.
DIe Thread gibst als Parameter an
nehmen wir oben mein beispiel vom auslesen meiner drogen pflanzen
mysql_function_query(mysqlconnect, "SELECT * FROM pflanzen", true, "LoadSamen","");
1. verbindung
2. Sqlbefehl
3. soll catch aktiviert sein lohnt sich nur bei der verwendung von den cach funktionen
4. Ist der Thread was dann als public angeben wird im script
wie zum beispiel
public LoadSamen()
{
return 1;
}
5. im letzten abteil können weitere parameter hinzugefügt werden wie zum beispiel i
mysql_function_query(mysqlconnect, "SELECT * FROM pflanzen", true, "LoadSamen","i",playerid);
public LoadSamen(playerid)
{
return 1;
}
//edit link von dem Tutorial
noch
http://forum.sa-mp.com/showthread.php?t=337810
steht doch da schon
einfach eine verbindung erstellen Beispiel:
new mysqlconnect;
unter OnGameModeInit
mysqlconnect = mysql_connect("localhost", "root", "samp_db", "");
und danach
so verwenden zum beispiel:
mysql_function_query(mysqlconnect, "SELECT * FROM pflanzen", true, "LoadSamen","");
auch wenn er etwas älter ist, bzw. uralt...
ich bräuchte bitte bitte den Downloadlink...
Ich finde keine dll für diese include...
https://subversion.assembla.co…/include/Obj_Streamer.inc
Hier bitte aber warum den Streamer ? Das Streamerplugin ist weit aus besser
mit einer variabel und einem Timer nach ablauf des timers setzt du die jeweilige variabel wieder auf 0 und wenn jemand in das pickup rein geht
setzt du die variabel auf 1. Das ganze solltest du dan bei OnPlayerPickUpPickup auch abfragen welchen wert die variabel hat mit einer if abfrage