Recycler, 27.06.2007, 18:10 |
---|
Kleine Codes Hier könnt ihr kleine Funktionen und Commands usw. posten, die ihr mit anderen teilen wollt Dies können auch einfache Coding-Tipps sein, die beim Scripten helfen. Boolean Benutzt keine normalen Variablen, wenn sie nur entweder den Wert "true" (1) oder den Wert "false" (0) beinhalten sollen. Sondern eine Boolean-Variable: MfG Recycler |
SMG, 29.10.2007, 15:50 |
---|
(Ich weiss hier bin ich da falsch aber....) Wo muss ich denn die script beispiele genau ein fügen? |
FloRaX, 29.10.2007, 18:01 |
---|
//POST 1 1.Realltime Uhr in SA-MP ist z.B. so Zitat: TogglePlayerClock(playerid,1); ------------------------------------------------------- 2.Alle waffen im interior eingeblendet,das man im Haus schissen kann^^ Zitat: AllowInteriorWeapons(true); ------------------------------------------------------ 3.Wenn man z.B. ein Neuen Public macht z.b so: Zitat: public cmd(playerid) Dann kann man unten drunter ein SendClientMessage(playerid,Farbe_Grün,"Text"); z.B. schreiben. Aber meist kommt ja ein warning weil es sowas nicht gibt den public.Dann macht man einfach über main()^^ Zitat: forward cmd(playerid); Und schon ist der warning weg^^ ----------------------------------------------------- 4.Beim einsteigen eines auto das da steht Gute fahrt oder sonst: So sollte es dann ausehen Zitat: public OnPlayerEnterVehicle(playerid, vehicleid, ispassenger) { GameTextForPlayer(playerid,"~w~Gute Fahrt!",5000,1); return 1; } Ich hoffe ich hab euch einige tipps gegeben //POST 2 Oder auch ein kleiner code womit man vom himmel fählt Ihr könnt auch das mit SetPlayerPos(playerid,x,y,z,500); ändern also 500 bedeutet 500 meter hoch und wenn ihr 1000 macht sind es das doppelte^^ //POST 3 Oder auch ein kleiner code womit man vom himmel fählt Ihr könnt auch das mit SetPlayerPos(playerid,x,y,z,500); ändern also 500 bedeutet 500 meter hoch und wenn ihr 1000 macht sind es das doppelte^^ //EDIT Noch einmal ein Doppelpost und du wirst verwarnt! MfG Rafioso |
FloRaX, 24.11.2007, 14:40 |
---|
Der code ist auch cool Damit kann man z.B. wenn einer reinkommt im Server und das es ein Ton ergibt sowie Aber mit dem code hört nur 1 Spieler denn sound. Das jeder denn Sound hört müsst ihr denn Code reinkopieren! Das ist egal irgendwo Dann gebt ihr Dafür braucht ihr kein playerid! Um denn warning Zitat: SoundForAll(sound) nicht kommen zu lassen kopiert ihr denn code über main() |
Rafioso, 26.01.2008, 02:07 |
---|
Kleiner Multi-Checkpoint-Maker WICHTIG 1: Sollte nur bei sehr kleinen Scripts angewendet werden. WICHITG 2: Es sieht nur bei 2 Checkpoints "gut" aus. WICHITG 3: Dient eigentlich der Entwicklung. -/-/-/-/-/-/-/-/-/-/-/-/-/-/-/-/-/-/-/-/-/-/-/ Über main() In public OnGameModeInit() Irgendwo drunter =) =) =) =) |
FloRaX, 26.01.2008, 09:55 |
---|
Wie viele CP´s kann man da erstellen? |
dödel, 26.01.2008, 12:14 |
---|
Unendlich Nur das alle immer blinken, darum laufen meine Checkpoints über IsPlayerInCircle, jedoch muss denn in die Prüfung OnPlayerEnterCheckpoint auch IsPlayerInCircle eingebaut werden Sonst währe ja jeder CP gleich vom Zweck. |
FloRaX, 26.01.2008, 12:26 |
---|
Aso^^ Ok danke für denn tipp. |
Rafioso, 26.01.2008, 18:27 |
---|
dödel hat folgendes geschrieben: Unendlich Wie gesagt klappt es nur mit 2 "gut". Bei mehreren, werden diese nur ab und zu angezeigt. =) =) =) =) |
FloRaX, 23.08.2008, 21:40 |
---|
Spieler-ID - Script Hi, hab euch mal ein kleines Script hier, was euch erlaubt mit: bsp.: "/kick [spielerid]" eine funktion zu erstellen. Und zwar geht das so: Auserhalb von denn Public's: |
TrexXx, 29.08.2008, 02:13 |
---|
Kleiner Tipp am meisten für GameModes mit einer Save funktion, statt static ... einfach das Zitat: enum PlayerInfo { Name[24], Password[24] } new pInfo[MAX_PLAYERS][PlayerInfo]; In einer Funktion wie if einfach ...if(pInfo[playerid][Name]...! Einfach über main und dabei folgendes beachten: 1. Immer bei der letzten Variable vor }, hier ist es Passwort[24] kein , dahinter! 2. Nur bei Inhalten wie Namen Passwörtern, etc. ein [24] dahinter sonst einfach, als Beispiel Kicks also ... kicks, ... Viel Spaß damit |
Jermuk, 11.10.2008, 13:39 |
---|
Wem es hilft: Viel Spaß! Gruß Jermuk |
FloRaX, 17.10.2008, 19:49 |
---|
Hätte mal auch einen kleinen Code: Jetzt müsst Ihr nicht immer /afk /back tippen sondern nur einmal /afk zum einschalten und noch einmal /afk um ihn abzuschalten. @ Jermuk zu deinem /getinfo Code, fehlen ein paar dinge: den ganz oben in "OnPlayerCommandText(playerid,cmdtext[]) {" Nicht zu vergessen den CMD: Die farbe hast du auch vergessen: Dann hast du noch das PlayerName vergessen: Und das strtock, das zu dem "cmd" und "idx" passt: Viele wissen nicht was dann reinkommen soll, wenn schon 15-16-20 Errors da sind. Ich hab das mal ausgebessert, nicht das immer so irre fragen im Forum wieder gepostet werden |
Yoda, 17.10.2008, 22:23 |
---|
da stimmt was nicht florax xD oben steht: Zitat: if(afksystem[playerid] == 1) unten : Zitat: afksystem[playerid] = 0; aba wo steht: afksystem[playerid] = 1; ??? xD .... |
FloRaX, 18.10.2008, 09:53 |
---|
Naja dödel sagte mir das afksystem[playerid] = 1; wär überflüssig |
dödel, 18.10.2008, 11:23 |
---|
FloRaX hat folgendes geschrieben: Naja dödel sagte mir das afksystem[playerid] = 1; wär überflüssig Und wann in Gottes Namen soll ich das getan Haben |
FloRaX, 18.10.2008, 11:29 |
---|
lol? Das hast du mir in ICQ gesagt |
dödel, 18.10.2008, 11:45 |
---|
Was ich sagte war zu deinem Beispiel in dem ei9n logischer Denkfehler vorhanden war, was jede Person auf anhieb sehen müsste ICQ dödel hat folgendes geschrieben: ich sagte niemals es sei überflüssig ich sagte das wäre der fehler if(bla[playerid] == 1) { bla[playerid] = 1; } wenn 1 stell auf 1 ->wie kann man das verwechseln !? |
FloRaX, 18.10.2008, 11:59 |
---|
Denn hab ich mich überlesen, aber naja schon ok. |
Jermuk, 23.10.2008, 13:34 |
---|
FloRaX hat folgendes geschrieben: Hätte mal auch einen kleinen Code: Viele wissen nicht was dann reinkommen soll, wenn schon 15-16-20 Errors da sind. Ich hab das mal ausgebessert, nicht das immer so irre fragen im Forum wieder gepostet werden Vielen Dank! Aber fortgeschrittene können sich das schon denken! Nur leider Anfänger nicht! Gruß Jermuk |
FloRaX, 25.10.2008, 13:40 |
---|
Hab auch noch einen kleinen Code, damit könnt Ihr selber stock's erstellen, die Farben schon enthalten. Wie z.B. "SendRedMessage" |
Rafioso, 26.02.2009, 23:39 |
---|
Viel Spaß. |
FloRaX, 27.02.2009, 00:25 |
---|
Was bringt der Code genau? |
dödel, 27.02.2009, 00:35 |
---|
Das man wenn man spawnt und weniger als 1000$ hat, genau diese gutgeschrieben bekommt.(?) |
Recycler, 27.02.2009, 13:56 |
---|
Deutlich optimiert: MfG Recycler |
Rafioso, 27.02.2009, 15:14 |
---|
Ich hatte es auch mal ohne else, aber da bekam der Spieler nach einem Kill nicht immer 1000 sondern mal 900. Nur mit else hat es reibungslos funktioniert. Btw. SetPlayerMoney habe ich gar nicht in meinem Pawno o_O, das wäre ja viel besser gewesen. Trotzdem danke für die Optimierung. |
Rafioso, 05.03.2009, 21:53 |
---|
FloRaX, 20.04.2009, 22:44 |
---|
Hab auch einen Code für euch womit ihr eure eigenen Level oder andere Systeme schnell und einfach Generieren könnt. Als erstes benötigen wir diesen stock: Dazu benötigen wir auch die Variable "lvl", die erstellen wir so: So und jetzt fehlt nur noch der Command was man ausführen will, wenn man diesen System Level besitzt: Ich weis zwar nicht ob da alles klappt, wollte es eigentlich auch als Mod/Admin System entwickeln wie bei IsPlayerAdmin, klappt aber nicht so wie ichs will Naja hoffe ich konnte euch einen kleinen Tipp geben. MfG FloRaX |
FloRaX, 14.10.2009, 20:38 |
---|
Hi, da ich mich seit einiger Zeit mit dem Beta SA-MP 0.3 beschäftige, zeig ich euch mal hier den Code, wie ihr eure NPCs selbst erstellen könnt. Was sind NPCs?: Ich bin mir nicht sicher ob man das nun so ausschreibt aber ich begründe es mal nach meines Wissens: NPCs sind sowas ähnliche wie Bots im Server, nur das man sie nicht in der Server-Liste sieht, sie ziehen ledeglich nur Slots ab, das heißt, habt ihr 500 Slots, und 1NPC sind noch 499 Slots übrig. Und gleichzeitig bekommt der Bot auch eine ID. Nun zum Code: Dies kommt dann in euren npcmodes Ordner rein, und natürlich auch Compilen. Danach erstellt ihr entweder ein Filterscript oder fügt dies zu eurem Gamemode hinzu: So mach ich es aufjedenfall und es funktioniert einwandfrei. Jetzt noch die frage die ihr euch stellen werdet: Was sind REC Dateien? Rec dateien sind, die aufgenommen Scenen die ihr während des Spielens aufgenommen habt. Dafür gibt es ein Script das sich "npc_record" nennt, tippt ein für: Laufende Bots: /ofrecord NAME-DER-REC und ihr recordet schon Tippt ein /stoprecord und es wird dann in Scriptfiles abgespeichert, kopiert die REC datei in den ordner npcmodes/recording und schon könnt ihr fortfahren mit dem Scripten. Das gleiche gilt auch für /vrecord NAME-DER-REC und wird ebenso in Scriptfiles abgespeichert. Nur müsst ihr dann bei fahrende Bots: #define RECORDING_TYPE 1 nehmen und bei laufende: #define RECORDING_TYPE 2 So ich wünsch euch schonma viel Spaß, so mach ichs und es funzt tadellos, wer vielleicht fehler findet, bitte ich um korriegieren |
N0rax, 20.05.2010, 19:16 |
---|
Text Dialoge erstellen
Ich zeig euch hier, wie ihr einfache Text Dialoge ohne Auswahlmenü, erstellen könnt. Als erstes Definiert ihr euer eigenen Dialog, und gibt ihn die Dementsprechende ID: Wo was hinkommt, solltet ihr zumindest schon wissen. Danach erstellen wir einen Command, der den Dialog abruft: Das wars auch schon, eine kleine sache ist jedoch zu beachten, wenn man jetzt z.b. schreibt: Ist das Falsch, denn man muss schon im ersten Dialog, eine neue Zeile erzeugen, das geht hiermit: Ihr könnt auch nach dem \n_ eine Leertaste reinhauen, alles kein thema, aber damit der Text weiter Links ist, damit ihr genügend Platz für Text habt, solltet ihr direkt nach dem "\nTEXT" machen. Hoffentlich hab ich euch eine kleinigkeit gezeigt. Viel spaß |
N0rax, 30.05.2010, 20:33 |
---|
OnPlayerPickUpPickup funktion
Hab einige fragen bekommen, wie diese Funktion benutzt wird, sie ist ganz simpel und einfach: Eigene Arrays bzw. Admin/Mod funktionen basteln Falls mal jemand selbst ein Admin System bauen will, und keine Ahnung hat wie es funktioniert, aber es auf die schnelle haben will, hab ich hier für euch mal mein Code: Jetzt könnt ihr euer Script beliebig nach euren wünschen anpassen sei es z.B. so: Wie komm ich jetzt an die Rechte das ich Admin bin? Könnt ihr in euren Codes integrieren z.B.: 1 = Besitzt ( 1 = true == ja) 0 = Besitzt nicht ( 0 = false == nein) Crex |
N0rax, 25.06.2010, 21:26 |
---|
2 Nützliche Stock's die euch das SetPlayerScore erleichtern:
Und die nutzt man dann so: Viel spaß! |
N0rax, 10.07.2010, 22:36 |
---|
Hier ein nützlicher Code womit man die Spieler-ID eines Spielers auslesen kann:
Kann man jetzt z.B. so anwenden: Viel spaß! |
Rafioso, 10.07.2010, 22:55 |
---|
Wohl nur halb nachgedacht? Naja, kann ich verstehen bei der Hitze: So gehts doch auch, ohne GetPlayerID(). |
N0rax, 10.07.2010, 23:02 |
---|
Zitat: Wohl nur halb nachgedacht? Naja, kann ich verstehen bei der Hitze: Ignorier ich besser! Probier mal das mit printf("blub %d",playerid); will ich sehen ob du die richtige ID bekommst |
Rafioso, 10.07.2010, 23:07 |
---|
Wenn nicht %d, dann %i. Warum soll das nicht gehen? Du machst doch genau das gleiche, in deinem stock hast du ja keine Typumwandlung oder sonstiges. Teste ich übrigens mal morgen oder so. Ich gebe auf jeden Fall Bescheid. |
N0rax, 10.07.2010, 23:31 |
---|
Bei mir zeigt es immer eine falsche ID an wenn ich nur "playerid" nutze!
|
Rafioso, 14.07.2010, 19:18 |
---|
Dann muss bei dir was anderes nicht stimmen, bei mir klappt es zumindest so ohne Probleme: |
N0rax, 14.07.2010, 22:33 |
---|
Hmm, du hast recht! Wahrscheinlich hab ich nicht richtig geachtet. Komisch, aber danke für den
Hinweis das war mir eine Lehre wert |
N0rax, 09.04.2011, 10:36 |
---|
Tag, melde mich wieder, mit einem kleinen Code der euch was bringen könnte
Mit diesem Code könnt ihr 2 ausführungen in 1 Befehl einbauen. Wenn ihr wollt sogar 100x mal... Die Zahl "|1|" funktioniert nur bei dieser Position, wenn der Spieler am BSN ist. Die Zahl "|2|" funktioniert nur bei dieser Position, wenn der Spieler am LSPD ist. Das SendFormatText ist auch einfach: Damit spart ihr euch folgenden Code und ist auch viel einfacher: Naja viel spaß! |
N0rax, 16.07.2012, 15:32 |
---|
Es ist schon ziemlich lange her das ich mal ein kleinen Scriptcode geteilt habe, derzeitig habe ich
leider kein Internet und sehr wenig zeit um Online zu gehen wenn mir überhaupt die möglichkeit dazu bereitsteht. Dieser kleine Schnipsel erlaubt es einen Spieler vom Fahrzeug in einer begrenzten Zeit zu entfernen. Das heißt wenn Ihr jetzt per "/exit" einstellen wollt, dass das Fahrzeug angehalten werden muss und das in z.b. 10 Sekunden, wird der Spieler das Fahrzeug erst in der gegebenen Zeit vom Fahrzeug entfernt, wie ihr den Timer ändern könnt steht oben. |
Rafioso, 16.07.2012, 21:02 |
---|
Hi, bist du dir sicher? Das sieht eher danach aus, dass beim Aufruf von RemovePlayerFromVehicleEx(p) der Spieler zuerst eingefroren wird, dann aus dem Fahrzeug geschmissen wird und erst danach via Timer entschieden wird, dass, wie in diesem Beispiel, der Spieler sich erst wieder nach einer Sekunde bewegen kann -> aber zu diesem Zeitpunkt ist der Spieler nicht mehr im Fahrzeug. Viele Grüße Rafioso |
N0rax, 17.07.2012, 08:56 |
---|
Hab es auch gerade bemerkt, das Original Script von mir ist nicht auf dem Schullaptop vorhanden,
hab das jetzt aus dem gewissen raus geschrieben, muss ich nochmal nachgucken. Danke für die Info. lg. N0rax -------------------------------------- Codekürzel für einen Befehl: |