Gibt es da eine Spezielle Format Funktion oder sowas ?
Das Wiki kann helfen
[wiki]Format[/wiki]
und da mal in die Tabelle unter %q schauen ![]()
oder du nutzt: http://wiki.sa-mp.com/wiki/MySQL/R33#mysql_format
Und dort eben %e ![]()
Gibt es da eine Spezielle Format Funktion oder sowas ?
Das Wiki kann helfen
[wiki]Format[/wiki]
und da mal in die Tabelle unter %q schauen ![]()
oder du nutzt: http://wiki.sa-mp.com/wiki/MySQL/R33#mysql_format
Und dort eben %e ![]()
Um eine funktionsfähige Waffe auf einem Auto abzufeuern, bzw erstmal zu montieren, da ich denke das Attach da nicht funktioniert (?)
Redest du jetzt von einem Raketenwerfer oder einer MP?
Denn wie gesagt, dass mit der MP ist deutlich aufwändiger.
Aber beide Verfahren funktionieren relativ ähnlich, du erstellst das gewünschte Objekt und dann nutzt du [wiki]AttachObjectToVehicle[/wiki].
Anschließend lässt du einen Timer laufen, der die Rotation von dem Objekt dem Kameravektor von dem Spieler anpasst. Hier mit Beispiel: [wiki]GetPlayerCameraFrontVector[/wiki]
Anschließend musst du prüfen, ob der Spieler schießen gedrückt hat unter [wiki]OnPlayerKeyStateChange[/wiki]
Wenn dem so ist, hast du ja die Koordinaten durch den FrontVector, wo der Spieler hinschießt.
Je nach Wunsch fliegt dann entweder eine Rakete in die Richtung und explodiert oder ein virtueller Schuss und trifft dann diesen Spieler, wenn er auf dieser Bahn sich befindet, und dann kann man Schaden abziehen und gewünschte Animationen durchführen lassen.
Natürlich ist das alles nicht ganz trivial umzusetzen, aber dennoch relativ gut möglich.
Erwarte aber jetzt keinen kompletten Code von mir, ich glaube im Englischen Forum wirst du Schnipsel finden und joa google + Wiki ist mächtig xD
Für was?
Raketenwerfer + Auto = Klappt
Schüsse im Sinne von einer MP ist nicht so einfach.
Man könnte da gewisse Dinge simulieren, also mit Schaden, Animation, Sound, aber die Schüsse selbst zu simulieren ist nicht so gut möglich.
das man ins Fahrzeug nicht rein sehen kann, und man den "Nametag" des Spielers nicht sieht? da die Scheiben Verdunkelt sind?
Ja, mit ein bissche tricksen sollte das evtl möglich sein ![]()
Also:
1. Den Nametag kannst du erstmal unabhängig von der Scheibe verschwinden lassen, mit: [wiki]ShowPlayerNameTagForPlayer[/wiki]
2. Das mit der Scheibe ist so eine Sache. Da müsstest du schauen, ob du mit [wiki]CreateObject[/wiki] und [wiki]AttachObjectToVehicle[/wiki] eine Scheibe vor die eigentliche Scheibe machst, dadurch würde das dann natürlich dunkler werden, aber weiß nicht, ob das so passt, mit etwas Glück vielleicht ![]()
3. Mit 0.3.8 sollen, soweit ich das noch richtig in Erinnerung habe Mods möglich sein, da kannst du dann eh sogut wie alles ändern
bzw kannst du dir dann auch ein perfektes Objekt für die Scheibe designen und dann attachen
Mal schauen, was da noch alles kommt ![]()
Hoffe ich konnte ein bisschen helfen ![]()
Mal den ganzen Auszug vom Log bitte.
Immer nur 3 Zeilen, wo die Hälfte fehlt ist nicht gerade sehr hilfreich ![]()
Eigentlich brauchst du hier kein Pattern, klar ist es eine schöne Überprüfung, ob die Werte passen und co, aber in diesem spezifischen Fall eigentlich nicht erforderlich, da du das ja eh nur 1:1 übertragen willst in eine andere Form.
Da kannst du theoretisch auch nur so etwas tun:
<?php
function getValues($input,&$values)
{
$tmp = explode('"',$input);
$names =
["id","interior","collissions","alpha","doublesided","model","scale","dimension","posX","posY","posZ","rotX","rotY","rotZ"];
for($i=1,$counter=0; $i<count($tmp); $i+=2)
{
$values[$names[$counter++]] = $tmp[$i];
}
}
//Nutzung:
$values = []; //Am besten außerhalb deiner Schleifen
//Beispiel $str:
$str = '<object id="object (ballypllr01_lvs) (1)" interior="0" collisions="true" alpha="255" doublesided="false" model="3437" scale="1" dimension="0" posX="3349.21826" posY="-1396.10474" posZ="257.07605" rotX="0" rotY="90" rotZ="0"></object>';
getValues($str,$values);
echo $values["model"]; //Gibt jetzt z.B. das model aus
?>
Alles anzeigen
Schreibe in Zeile 56:
format(string,sizeof(string),"* Oamt Mitarbeiter %s hat dein Fahrzeug abgeschleppt!",GetName(playerid)); //Evtl Funktion GetName anpassen
SendClientMessage(i,BLAU,string);
Es fehlt das ShowPlayerProgressBar ![]()
#Handy
Nutze mal crashdetect, lösche den server_log.txt und poste, was dann in der server_log.txt steht ![]()
Das ist mir schon klar...und genau das, machst du doch mit dem switch...
Soll das ein Scherz sein?
Du hast doch da den Code schon stehen..pack den switch einfach runter in die while Schleife...1:1 und nutz die Variable wie ich es gezeigt habe...
switch(["Adminlevel"])
Diese Schreibweise ist mir neu ![]()
Da müssen erstmal die Werte gefecht werden und dann sowas wie $row_lvl["Adminlevel"] verwendet werden.
Keine Ahnung, was du mit dem Rang 3 meinst...du sortierst es doch..
Hab ich doch :o
Hier, deinen Code mal ein wenig optimiert:
forward CheckTacho();
public CheckTacho()
{
new string[200],Float:vHealth,vehicleid,h;
for(new i=GetPlayerPoolSize(); i!=-1; i--)
{
if(!IsPlayerConnected(i) || IsPlayerNPC(i)) continue;
vehicleid = GetPlayerVehicleID(i);
if(!vehicleid) continue;
GetVehicleHealth(vehicleid,vHealth);
valstr(string,GetPlayerSpeed(i));
PlayerTextDrawSetString(i,CarSpeed[i],string);
h = floatround(vHealth, floatround_round)/10;
if(Praxis[i] == 1)
{
format(string,sizeof string,"Zustand: ~g~%i",h);
PlayerTextDrawSetString(i,Textzustand[i],string);
}
format(string,sizeof string,"Fahrzeug: ~g~%s~n~~w~T\172ren: %s~w~~n~Zustand: %s%d ~w~Prozent",PlayerVehicle[GetVehicleModel(vehicleid)-400],((tuer[vehicleid])?("~g~Offen"):("~r~Geschlossen")),((h<30)?("~r~"):(h<50)?("~y~"):("~g~")),h);
PlayerTextDrawSetString(i,CarFahrzeug[i],string);
}
return 1;
}
Alles anzeigen
Dann steht da auch ein ü und kein ue, bei Türen ![]()
13667
Richtig langweilig, hättest ihm die Modelid von einem Spiegel oder so geben müssen ![]()
- Ihr müsst euch mit gängigen Programmiersprachen auskennen
Und wofür, wenn man nur Pawn skripten soll? ![]()
Kam aufeinmal in meiner Konsole :o?
Musst auch prüfen, dass die modelid nicht 0 ist.
Also, dass er sich auch wirklich in einem Fahrzeug befindet.
zB, Skin 1 - 10 hat man zur Auswahl, das man dann mit mit dem Drücken der Leertaste von Skin 7 zu Skin 8 Gewechselt.
Das kommt darauf an...
Wenn du sie in aufsteigener Reihenfolge hast, dann kannst du einfach einen Counter nutzen.
Unter [wiki]OnPlayerKeyStateChange[/wiki] kannst du prüfen welche Taste er drückt und dann einfach eine globale Spielervariable hochzählen lassen und setzen lassen.
Oder du hast den Counter + ein Skin Array:
//Global deklarieren
stock const auswahl_skins[] = {5,10,19,237,311};
new auswahl_counter[MAX_PLAYERS];
//Und dann so, wenn er die Leertaste drückt:
if(auswahl_counter[playerid] == sizeof(auswahl_skins)) auswahl_counter[playerid] = 0; //Wieder von vorne Anfangen
SetPlayerSkin(playerid, auswahl_skins[auswahl_counter[playerid]++]); //Musst es nicht in eine Zeile quetschen xD Nur zur Verdeutlichung
Erstmal Danke für deinen Kommentar.
Schade dass du in der Zeit wie es scheint nicht persönlich vorbei kamst, denn es gab noch wesentlich mehr, als nur die paar Missionen die in dem Video zu sehen waren.
Ich hatte mal die Idee den Singleplayer in SAMP nach zu machen,
Sowas habe ich auch mal gemacht gehabt mit Aktoren: Neues Dynamisches Fußgänger Skript :)
Das neue Update welches rausgekommen ist, bietet dafür noch eine weitere gute Funktion, damit wäre es möglich alle Dinge noch besser umzusetzen. Mal sehen ob ich da mal was für realese, damit man endlich die Singleplayer Leute hat ![]()
Box mit einem Textdraw erstellen oder gibt es da einen Trick?
Also das was du da abgescreent hast wurde mit einem Include einfach erstellt: