Hast dir mal geprintet, was da so die Werte von item sind?
Eventuell musst du das abfangen? Kannst ja per Debug herausfinden, an welcher Stelle der Code crasht...
Hast dir mal geprintet, was da so die Werte von item sind?
Eventuell musst du das abfangen? Kannst ja per Debug herausfinden, an welcher Stelle der Code crasht...
vehiclesMenu.ItemSelect.on
Sollte das nicht:
vehiclesMenu.OnItemSelect
heißen? o:
und bei dem Anderen eben auch? ![]()
Folgender stock speichert nicht die Stats
Du musst auch immer wieder den string hinten dran hängen (also als Parameter angeben, das %s hast du immer brav gemacht ^^)
stock SaveUserStats(playerid)
{
//Wenn der Spieler nicht eingeloggt ist, dann speichere seine Statistiken nicht
if(!pInfo[playerid][pLoggedIn]) return 1;
//Ansonsten speichere sie
new query[256];
mysql_format(handle, query, sizeof(query), "UPDATE `users` SET `level` = '%d', `admin` = '%d', `frak` = '%d', `fraklevel` = '%d', `job` = '%d',", pInfo[playerid][pLevel], pInfo[playerid][pAdmin], pInfo[playerid][pFrak], pInfo[playerid][pFraklevel], pInfo[playerid][pJob]);
mysql_format(handle, query, sizeof(query), "%s `money` = '%d', `bank` = '%d', `kills` = '%d', `deaths` = '%d', `prem` = '%d', `maxcars` = '%d'", query, pInfo[playerid][pMoney], pInfo[playerid][pBank], pInfo[playerid][pKills], pInfo[playerid][pDeaths], pInfo[playerid][pPrem], pInfo[playerid][pMaxcars]);
mysql_format(handle, query, sizeof(query), "%s WHERE `uid` = '%d'", query, pInfo[playerid][p_ID]);
mysql_pquery(handle, query);
return 1;
}
Alles anzeigen
Ich hoffe ich hatte dich richtig verstanden: Kleines Mörser Skript
Hahaha xD
Kannst ja einen Kommentar mal drunter geben xD
Hallöle,
hier ein kleines Skript, womit man ein Projektil in den Himmel feuern kann und es dann wieder runterkommt.
Angestoßen durch den Thread: SA:MP Mörser 1 & 2 WK.
Nur kurz als Information:
Das Include dient eher als Prototyp für Skripter und nicht direkt für Endnutzer.
Primär ging es mir nur darum, dass das Projektil einen Bogen fliegt und nicht straight einfach wie von einem Raketenwerfer gefeuert fliegt.
Habe mal mit ein paar schönen Bällchen die Flugbahn simuliert:
Funktionen im Include:
/*
Erstellt eine Route mit den Bällchen von Punkt A nach Punkt B.
(Dient nur zur Demonstration ist für die eig Missile nicht notwendig)
*/
ShowRoute(Float:x,Float:y,Float:z, Float:x2,Float:y2,Float:z2);
DestroyRoute(); //Löscht die Route eben wieder
/*
Rakete fliegt von Punkt A nach Punkt B.
In dem Bogen, der per ShowRoute angezeigt werden kann.
*/
StartMissile(Float:x,Float:y,Float:z, Float:x2,Float:y2,Float:z2);
Es gibt einen Callback:
public OnMissileFinished(Float:x,Float:y,Float:z)
{
CreateExplosion(x,y,z,2,20); //Damit es bumms macht
return 1;
}
Das erstellt am Zielort eine Explosion, wenn die Rakete eben da ist (Rakete wird automatisch zerstört).
Wenn die Rakete höher fliegen soll, kann man einfach mit dem Define MAX_MISSILE_HEIGHT ein wenig rumspielen ![]()
BUGs:
Also die Ziel und End Höhe (Z-Koordinate) sollte ca gleich sein, ansonsten kommt es zu Fehlern.
Dann bleibt die Rakete über dem Ziel oder unter dem Ziel hängen. Allerdings sind die End-Koordinaten bei OnMissileFinished, immer die des Ziels!
Downlaod: PasteBin
Related Work:
https://forum.sa-mp.com/showthread.php?t=630602
https://forum.sa-mp.com/showthread.php?t=446286
https://forum.sa-mp.com/showthread.php?t=591010
Mit freundlichen Grüßen,
Euer Kalle ![]()
es mit schwerkraft umzusetzen nur ist das halt extrem Ressourcenfressend
Nur wenn du col-Andreas oder das große Physic Include nutzt.
Was du aber eigentlich beides hier nicht benötigst.
Wenn es um das reine fliegen geht, sollte das alles erheblich einfacher sein.
Ich kann später mal schauen, ob was erstelle, was dir hilft ![]()
Ich versuche gerade dem objekt phsysics zu geben
Und wozu genau?
Ich rate dir davon ab...
Das frisst mega viel, gerade wenn du das auf einem Server mit vielen Leuten machen magst ![]()
Dabei würde der String "00000000+Bankgeld" ergeben.
Nein, das ist falsch.
format(tmp,sizeof(tmp),"%08d",123); //Ergibt: 00000123
Also genau das, was du willst ![]()
Das füllt immer nur die Nullen bis zu der n-ten Stelle auf.
Hier mal an einer Tabelle und dem Format %02d deutlich gemacht ![]()
| %02d | Input | Ouput |
5 |
05 |
|
10 |
10 |
modelid: 2936
txd: kmb_rckX
texture: larock256
![]()
Hast du eine Idee wie ich das machen kann?
Habe ich doch gesagt? ![]()
Gehe bei deinem Server in den Browser und greife auf die URL zu...dann müsstest du vermutlich ein Captcha lösen und gut ist ![]()
Kannst du nicht den Browser vom Server nutzen...könnte das ein Problem darstellen.
Dann müsstest du dir evtl eine REST-API bauen, die die Werte ermittelt oder sowas...die dann woanders liegt...
Gibt es trotzdem eine Möglichkeit den Inhalt zu laden?
Anscheinend hat sich da eine andere Seite vorgeschaltet (siehe: <h2>This website is using a security service to protect itself from online attacks.</h2>).
Nun...kannst du über den Server auf die Seite zugreifen im Browser, dann könntest du die Aufgabe lösen und würdest denke darauf zugreifen können xD
Mach doch mal console.log(html); Was steht denn da so drinnen? ![]()
Wie sieht denn dein aktueller Code aus?
Wie machst du es denn auf der anderen Seite?
Da es ein starkes Problem ist
Das ist kein starkes Problem, du machst daraus nur ein starkes Problem, indem du uns nicht alle wichtigen Details gibst.
Geb doch wenigstens von den Problem Schranken die genauen Koordinaten und Start-Rotationen an...
Damit wir das reproduzieren können und selber testen können.
Desweiteren nutzt du wie ich sehe ein paar Funktionen falsch...also MoveDynamicObject(ZollMaut[i], 0.0, -2.0, 0.0, 1, 0.0, 0.0, 0.0);
da nutzt du ja nur MoveDynamicObject mit einem Speed von 1...auf den 0 Punkt?!
Keine Ahnung, magst du uns mal den Erstell Code geben und alle Rotations-Achsen angeben, danke ![]()
ich habs so gemacht:
Zum testen supi!
Aber das System was er nutzt, öffnet immer nur die Schranke, die am nähsten bei ihm ist und schließt diese automatisch, sobald er nicht mehr in der Nähe ist.
Funktionieren tut das System, nur er verwendet einfach irgendwo falsche Parameter bzw Koordinaten. ![]()
Tab ich mich rein und raus scheint es halb zu gehen, woran liegt das?
...wie sieht denn dein Code aktuell aus?
Und welche Modelid hat deine Schranke?
Kannst du einen screen uns zeigen, wie deine Ordnerstruktur/Files aussehen...einfach aus FileZilla n screen machen, während du verbunden bist mit dem Webspace ![]()
Dies funktioniert nicht, nichts passiert.
Was machst du da auch?
Du sollst da doch nur die neue Rotation angeben...wtf
90.0-90 Was erwartest du passiert da?
90-90 = 0
Der Fehler liegt in GetConfig, welchen Typ hat denn die Variable immer var nutzen find ich im Code irgendwie dirty..
Da man so überhaupt nicht weiß, welche Datenstrukturen verwendet werden ![]()
Also der Fehler entsteht vermutlich dadurch, dass du auf einen index zugreifst, der nicht existiert...
Also vllt mit einer Abfrage vorher das abfragen ![]()
was kann ich wieder machen
Naa...einfach wieder das format hinten dran hängen:
new query[500];
mysql_format(handle,query,sizeof(query),"UPDATE `user` SET `X`='%d', \
`X`='%d', \
`X`='%d', \
`X`='%d', \
`X`='%d', \
`X`='%d', \
`X`='%d', \
`X`='%d', \
`X`='%d',",
pInfo[playerid][X],
pInfo[playerid][X],
pInfo[playerid][X],
pInfo[playerid][X],
pInfo[playerid][X],
pInfo[playerid][X],
pInfo[playerid][X],
pInfo[playerid][X],
pInfo[playerid][X]);
mysql_format(handle,query,sizeof(query),"%s \
`X`='%d', \
`X`='%d', \
`X`='%d', \
`X`='%d', \
`X`='%d', \
`X`='%d', \
`X`='%d', \
`X`='%d'", //Beachte, hier kein komma hinter dem '%d'
query,
pInfo[playerid][X],
pInfo[playerid][X],
pInfo[playerid][X],
pInfo[playerid][X],
pInfo[playerid][X],
pInfo[playerid][X],
pInfo[playerid][X],
pInfo[playerid][X]);
//Das muss zum Schluss kommen!
mysql_format(handle,query,sizeof(query),"%s \
WHERE `ID`=%d",
query,
pInfo[playerid][db_id]);
Alles anzeigen