GTAvision.com - Forum - Grand Theft Auto News, Downloads, Community and more...
Position: Grand Theft Auto: San Andreas » Multiplayer » Eigener Streamer » Druckansicht
|
Jermuk, 13.10.2008, 15:10
|
Hallo an alle,
ich möchte gerne mal probieren, einen Streamer zu scripten. Deshalb wollte ich fragen was eigentlich ein Streamer ist? Ich hab das so verstanden:
Wenn ein Spieler in die nähe von einem Objekt kommt, wird dann CreateObject gemacht. Wenn der Spieler sich entfernt, wird DestroyObject gemacht.
Habe ich das richtig verstanden? Wenn ja, warum haben denn die meisten Streamer so viele Fehler? Könntet ihr mir vieleicht noch Tipps geben, z.B. Sachen die man auf keinen Fall machen sollte, wegen zuviel Ressourcen, ... ?
Vielen Dank im Voraus,
Gruß Jermuk
|
|
dödel, 13.10.2008, 15:46
|
Weil halt viele wohl garnicht wissen was sie genau da zusammenbauen  Das einzige was wirklich zuviel Ressourcen verbrauchen könnte, wäre mehrfaches GetPlayerPos(...); Da die meisten solche Funktionen nutzen wie IsPlayerInCircle(...); welche so gebaut wurden, das sie jedes mal GetPlayerPos(...); aufrufen, wird das viel zu oft gemacht, obwohl einmal pro person reicht.
Darum sollte man die Position am besten Global speichern, damit sie in verschiedenen Funtkionen auslesbar sind, statt sie neu von Spieler abzurufen, das würde dann zb. so aussehen:
Code: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
| new Float:PPosX[MAX_PLAYERS], Float:PPosY[MAX_PLAYERS], Float:PPosZ[MAX_PLAYERS];
for(new i; i<MAX_PLAYERS; i++) { if(IsPlayerConnected(i)) { GetPlayerPos(i, PPosX[i], PPosY[i], PPosZ[i]); } }
for(new o; o<MAX_STREAMED_OBJECTS; o++) { for(new a; a<MAX_PLAYERS; a++) { if(IsPlayerInRangeWithoutGetPPos(a, GvStreamData[o][HtmnObjectX], GvStreamData[o][HtmnObjectY], GvSt reamData[o][HtmnObjectZ], STREAM_DISTANCE)) } } |
Nur mal so als kleinen Einblick  (D.h. so wie es momentan aussieht wird es dir nur als beispiel dienen, nutzen kannst du es in diesem Zustand nicht einfach so, da das bedeutende nicht vorhanden ist)
|
|
Jermuk, 13.10.2008, 18:40
|
So, ich habe jetzt mal einen Anfang gemacht:
http://pastebin.com/f2833c6c3
Es sind noch zwei Fehler drinnen, und jede Menge Warnungen, aber was haltet ihr von meinem Anfang? Bin ich auf dem richtigem Weg?
Gruß Jermuk
PS: Danke für die Tipps! PS2:Hier die Fehlermeldungen:
Code: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
|
C:\Dokumente und Einstellungen\Jeremy\Desktop\SAMP\object_streamer_by_Jermuk.pwn(89) : warning 208: function with tag result used before definition, forcing reparse C:\Dokumente und Einstellungen\Jeremy\Desktop\SAMP\object_streamer_by_Jermuk.pwn(16) : warning 213: tag mismatch C:\Dokumente und Einstellungen\Jeremy\Desktop\SAMP\object_streamer_by_Jermuk.pwn(17) : warning 213: tag mismatch C:\Dokumente und Einstellungen\Jeremy\Desktop\SAMP\object_streamer_by_Jermuk.pwn(54) : warning 213: tag mismatch C:\Dokumente und Einstellungen\Jeremy\Desktop\SAMP\object_streamer_by_Jermuk.pwn(63) : warning 213: tag mismatch C:\Dokumente und Einstellungen\Jeremy\Desktop\SAMP\object_streamer_by_Jermuk.pwn(77) : warning 213: tag mismatch C:\Dokumente und Einstellungen\Jeremy\Desktop\SAMP\object_streamer_by_Jermuk.pwn(79) : error 029: in valid expression, assumed zero C:\Dokumente und Einstellungen\Jeremy\Desktop\SAMP\object_streamer_by_Jermuk.pwn(79) : warning 213: tag mismatch C:\Dokumente und Einstellungen\Jeremy\Desktop\SAMP\object_streamer_by_Jermuk.pwn(79) : warning 213: tag mismatch C:\Dokumente und Einstellungen\Jeremy\Desktop\SAMP\object_streamer_by_Jermuk.pwn(79 -- 80) : error 0 29: invalid expression, assumed zero C:\Dokumente und Einstellungen\Jeremy\Desktop\SAMP\object_streamer_by_Jermuk.pwn(92) : warning 213: tag mismatch C:\Dokumente und Einstellungen\Jeremy\Desktop\SAMP\object_streamer_by_Jermuk.pwn(94) : warning 213: tag mismatch C:\Dokumente und Einstellungen\Jeremy\Desktop\SAMP\object_streamer_by_Jermuk.pwn(96) : warning 213: tag mismatch Pawn compiler 3.2.3664 Copyright (c) 1997-2006, ITB CompuPhase
2 Errors.
|
|
|
dödel, 13.10.2008, 19:42
|
Bis auf das dein Code auch wenn du die Fehler entfernst, nicht so ganz funtionieren würde eigentlich schon rech gut 
Nur werde ich dir dabei nicht weiterhelfen, ansonsten könnte ich ja gleich meinen veröffentlichen
|
|
Jermuk, 14.10.2008, 13:41
|
Währe hier den jemand, der mir helfen würde? Das währe sehr nett! Was hat es sich eigentlich mit den ganzen Areas (z.B. in xObjects) mit sich? Ich habe jetzt die Fehler und Warnungen so weit wie möglich entfernt. Aktueller Code:
http://pastebin.com/f7d2be90e http://pastebin.com/f5ab4dbc
Ich hoffe, es gibt einen, der hier mitmachen würde!
Gruß Jermuk
Aktuelle Warnungen:
Code: 1 2 3 4 5 6 7 8 9 10
|
C:\Dokumente und Einstellungen\Jeremy\Desktop\SAMP\object_streamer_by_Jermuk.pwn(16) : warning 213: tag mismatch C:\Dokumente und Einstellungen\Jeremy\Desktop\SAMP\object_streamer_by_Jermuk.pwn(17) : warning 213: tag mismatch C:\Dokumente und Einstellungen\Jeremy\Desktop\SAMP\object_streamer_by_Jermuk.pwn(54) : warning 213: tag mismatch C:\Dokumente und Einstellungen\Jeremy\Desktop\SAMP\object_streamer_by_Jermuk.pwn(63) : warning 213: tag mismatch C:\Dokumente und Einstellungen\Jeremy\Desktop\SAMP\object_streamer_by_Jermuk.pwn(77) : warning 213: tag mismatch C:\Dokumente und Einstellungen\Jeremy\Desktop\SAMP\object_streamer_by_Jermuk.pwn(79) : warning 213: tag mismatch Pawn compiler 3.2.3664 Copyright (c) 1997-2006, ITB CompuPhase
6 Warnings.
|
Aktuelle Logischen Fehler:
Beim Starten stürtzt das Spiel ab, weil direkt alle Objekte erstellt werden.
|