GTAvision.com - Forum - Grand Theft Auto News, Downloads, Community and more...

Position: Grand Theft Auto: San Andreas » Multiplayer » [SA-MP] Scriptbeispiele-Diskussion » Druckansicht
Recycler, 23.01.2007, 20:43
Hallo,

dieser Thread beinhaltet Scriptbeispiele und Ideen, die euch helfen werden, euren GameMode zu
erweitern und zu verbessern.
Ich habe diesen Thread zum einen eröffnet, weil viele immer nach so etwas wie "Gott-Mode" und
"MoneyArea" fragen; um das Wiederholen der gleichen Fragen zu vermeiden werde ich die
entsprechenden Scripte an diesen Post anhängen.
Zum anderen können Scripter hier ihre Ideen und Kreationen veröffentlichen und mit anderen teilen,
um so die eigenen GameModes mit neuen nützlichen Funktionen/Commands zu ergänzen.

Ich mache auch gleich mal den Anfang :-) :

-> AutoOpenCar: Alle verschlossenen Fahrzeuge werden nach einer bestimmten Zeit wieder geöffnet.
-> ClearText: Um den Chat zu löschen.
-> GottMode: Ein GottMode für Admins.
-> MoneyArea: Eine Area in der du eine bestimmte Summe Geld erhälst.
-> Speedometer: Ein Tacho der KM/H und MPH anzeigen kann.


Für alle Scripte gilt:
1. Die neuen publics kommen unter main() zwischen die anderen publics.
2. Timer kommen in der Regel zu "OnGameModeInit"
3. Commands, wie z.B.:
Code:
1
if (strcmp(cmd, "/clear", true) == 0){
kommen in
"OnPlayerCommandText"
4. "new", "#define" und "enum" kommen über main() zu den anderen, solange sie in keiner Funktion
(public) sind.
5. Bereits vorhande publics werden mit den Zeilen in den Scripten ergänzt.
Falls Fehler in den Scripten sind oder ihr Probleme beim Compilen habt, bitte fehlerhafte Zeilen
und die dazugehörigen Errors posten.

Wichtig: Wenn ihr Scripte aus diesem Thread entnehmt, müsst ihr mir ein Credit setzen falls ihr es
auf anderen Seiten veröffentlicht!


MfG
Recycler

EDIT : Der GottMode stammt nicht von mir und ist aus dem SA:MP Forum!
Recycler, 23.01.2007, 20:44
Hier noch ein paar:

-> OnPlayerExitVehicle: Wenn du Glück hast erhälst du eine Waffe beim Aussteigen eines Fahrzeuges!
-> Teleports: Du wirst zu einem von dir festgelegten Ort teleportiert.
-> AdminArea: Eine Area nur für Admins zugänglich.

Recycler, 01.02.2007, 17:32
|| Update 1.2.2007 ||

-> Lock.Unlock: Ein Fahrzeug ab- und aufschließen. (Siehe auch weiter oben AutoOpenCar)
-> ZeitundDatum: Um Ingame Zeit und Datum gezeigt zu bekommen.
-> Taxi: Um ein Taxi zu rufen.

MfG
Recycler
Rafioso, 01.02.2007, 17:55
Das mit dem Taxi hätte ich nicht so aufwendig gescriptet ;) aber OK

Ich war sogar schon vor paar Monaten dabei es so zu machen, dass nur die Personen, die in einem
Taxi sitzen die Meldung erhalten, aber durch Zeitmangel komme ich nicht mehr dazu.....

=) =) :D :D =) =)
Recycler, 01.02.2007, 18:17
ZitatRafioso hat folgendes geschrieben:
Das mit dem Taxi hätte ich nicht so aufwendig gescriptet ;) aber OK


Da hast du Recht^^
Das kommt daher weil ich diesen Scriptabschnitt vor ein paar Monaten schon gemacht habe und
"damals" hatte ich noch nicht soooo gute Script-Kenntnisse ;-)

EDIT: Sorry ich habe vergessen das dieses Taxi Script nicht mir gehört, sondern ich hab das
irgendwann aus dem SA:MP Forum entnommen...ist schon eine ganze Weile her...

MfG
Recycler
Recycler, 02.02.2007, 09:30
|| Update 2.2.2007 ||

-> Connect.Disconnect: Zeigt ein Connect bzw. Disconnect Icon wenn ein Spieler den Server
betritt/verlässt.
-> KickTeam.BanTeam: Um ein ganzes Team zu kicken bzw. zu bannen.
-> PlayerColorText: Der Text wird im Chat der Farbe des entsprechenden Schreibers angepasst.

MfG
Recycler
Recycler, 03.02.2007, 12:32
|| Update 3.2.2007 ||

-> PayDay: Du erhälst alle 10 Minuten 5000$
-> MusicAtSelectClass: Hier ein paar Tipps um Musik abspielen zu lassen während ihr euren Skin wählt.

Jetzt gehen mir so langsam die Ideen aus...;-)

Ahhh... eins habe ich noch :-P

-> Admincheck: Um zu testen ob du erfolgreich als Admin eingeloggt wurdest (Ist eigentlich sinnlos,
man sollte wissen ob man Admin ist aber egal :roll:)

MfG
Recycler

EDIT: Hab noch etwas nützliches gefunden um neue Farben zu erhalten:
Colorpicker
Allerdings müsst ihr wenn ihr z.B. das hier von der Website nehmt:
Code:
1
#F0F8FF

es in RGBA konvertieren, weil es hier in Hexadecimal steht...
bin mir nicht ganz sicher müsste aber so gehen:
#F0F8FF <-> 0xF0F8FFAA
Also # durch 0x ersetzen und hinten dran AA machen.
Gangsta, 04.02.2007, 11:19
Kann mir jemand ein gutes Tachoanzeigenscript geben? Die Anzeige sollte ganz unten in der Mitte vom
Bildschirm sein. danke schon mal im vorraus
Recycler, 04.02.2007, 11:23
Bitte vorher alles noch einmal gründlich durchlesen ;-)
-> Mein erster Post -> Speedometer

MfG
Recycler
Gangsta, 04.02.2007, 11:25
jo habs gelsen, doch die Anzeige ist in der Mitte des Bildschrims. Ich will sie ganz unten haben.
Recycler, 04.02.2007, 11:27
Welches der beiden hast du genommen?
MP/H oder KM/H?
Bei KM/H ist der Text unten am Bildschirm, bei MP/H musst du einfach bei GameTextForPlayer
folgendes wie bei KM/H hinzufügen:
Code:
1
~n~~n~~n~~n~~n~~n~~n~~n~


MfG
Recycler

EDIT: Kannst du bei SpeedMode durch 0 oder 1 definieren ;-)
Gangsta, 04.02.2007, 11:37
kommen irgendwie errors :(

Code:

1
2
3
4
5
6
7
C:\Dokumente und Einstellungen\Süleyman\Eigene Dateien\samp\tools\GTA tools\Verarbeitete script\RPGt
obytomasu mit adminfigur\von mir\RealLife\m\REAL.pwn(2101) : error 021: symbol already defined: "Upd
ateSeconds"
C:\Dokumente und Einstellungen\Süleyman\Eigene Dateien\samp\tools\GTA tools\Verarbeitete script\RPGt
obytomasu mit adminfigur\von mir\RealLife\m\REAL.pwn(4601) : error 021: symbol already defined: "Upd
ateSpeed"
C:\Dokumente und Einstellungen\Süleyman\Eigene Dateien\samp\tools\GTA tools\Verarbeitete script\RPGt
obytomasu mit adminfigur\von mir\RealLife\m\REAL.pwn(4604) : error 017: undefined symbol "SLOTS"
Pawn compiler 3.0.3367         Copyright (c) 1997-2005, ITB CompuPhase


3 Errors.



Code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
new SpeedMode = 0;
new UpdateSeconds = 1;

//-------------------------

public UpdateSpeed(){
new Float:x,Float:y,Float:z;
new Float:distance,value,string[256];
for(new i=0; i<SLOTS; i++){
if(IsPlayerConnected(i) && IsPlayerInAnyVehicle(i)){
GetPlayerPos(i, x, y, z);
distance = floatsqroot(floatpower(floatabs(floatsub(x,SavePlayerPos[i][LastX])),2)+floatpower(floata
bs(floatsub(y,SavePlayerPos[i][LastY])),2)+floatpower(floatabs(floatsub(z,SavePlayerPos[i][LastZ])),
2));
value = floatround(distance * 2500);
if(UpdateSeconds > 1){
value = floatround(value / UpdateSeconds);
}
if(SpeedMode){
format(string,sizeof(string),"~r~%d MPH",floatround(value/1600));
GameTextForPlayer(i, string, 1100, 5);
}
else{
format(string,sizeof(string),"~n~~n~~n~~n~~n~~n~~n~~n~~r~%d ~w~KM/H",floatround(value/1000));
GameTextForPlayer(i, string, 1000, 5);
}
SavePlayerPos[i][LastX] = x;
SavePlayerPos[i][LastY] = y;
SavePlayerPos[i][LastZ] = z;
}
}
}

//-------------------------

SetTimer("UpdateSpeed", UpdateSeconds*1000, 1);


© by Recycler

Recycler, 04.02.2007, 11:41
Danke für den Bericht :-)
Einen Fehler hab ich gemacht, werde die Datei gleich neu hochladen, SLOTS zu definieren;
und zwar so:
Code:
1
#define SLOTS 100

Bei den 2 anderen Fehlern vermute ich das du irgendwo in deinem Script schon einmal UpdateSeconds
und UpdateSpeed hast?
Poste mal die fehlerhaften Zeilen 2101 und 4601 ;-)

MfG
Recycler

EDIT: Ach so ein Mist hab noch mehr Fehler gemacht :roll:
Das hier bitte hinzufügen:
Code:
1
new SavePlayerPos[SLOTS][SavePlayerPosEnum];

Code:
1
2
3
4
5
enum SavePlayerPosEnum {
Float:LastX,
Float:LastY,
Float:LastZ
}

Das Enum über main() irgendwo zwischen schieben ^^
Gangsta, 04.02.2007, 11:54
ich kriegs irgendwie nicht hin :(
hast du ICQ kansnt du mir helfen
Gangsta, 04.02.2007, 12:02
so hab ichs im script


Code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
//-------------------------

public UpdateSpeed(){
new SavePlayerPos[SLOTS][SavePlayerPosEnum];
new Float:x,Float:y,Float:z;
new Float:distance,value,string[256];
for(new i=0; i<SLOTS; i++){
if(IsPlayerConnected(i) && IsPlayerInAnyVehicle(i)){
GetPlayerPos(i, x, y, z);
distance = floatsqroot(floatpower(floatabs(floatsub(x,SavePlayerPos[i][LastX])),2)+floatpower(floata
bs(floatsub(y,SavePlayerPos[i][LastY])),2)+floatpower(floatabs(floatsub(z,SavePlayerPos[i][LastZ])),
2));
value = floatround(distance * 2500);
if(UpdateSeconds > 1){
value = floatround(value / UpdateSeconds);
}
if(SpeedMode){
format(string,sizeof(string),"~r~%d MPH",floatround(value/1600));
GameTextForPlayer(i, string, 1100, 5);
}
else{
format(string,sizeof(string),"~n~~n~~n~~n~~n~~n~~n~~n~~r~%d ~w~KM/H",floatround(value/1000));
GameTextForPlayer(i, string, 1000, 5);
}
SavePlayerPos[i][LastX] = x;
SavePlayerPos[i][LastY] = y;
SavePlayerPos[i][LastZ] = z;
}
}
}
//-------------------------
Recycler, 04.02.2007, 12:05
Lösch am Besten noch mal alles und mach genau das was in der neuen Speedometer Datei steht^^
Die new´s, defines und das enum über main(), die Funktion irgendwo unter main() und der Timer in
OnGameModeInit!

MfG
Recycler
Gangsta, 04.02.2007, 12:15
habs gemacht aber dann kommt das ganze zeug


Code:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
C:\Dokumente und Einstellungen\Süleyman\Eigene Dateien\samp\tools\GTA tools\Verarbeitete script\RPGt
obytomasu mit adminfigur\von mir\RealLife\m\REAL.pwn(458) : error 017: undefined symbol "SavePlayerP
osEnum"
C:\Dokumente und Einstellungen\Süleyman\Eigene Dateien\samp\tools\GTA tools\Verarbeitete script\RPGt
obytomasu mit adminfigur\von mir\RealLife\m\REAL.pwn(458) : error 009: invalid array size (negative 
or zero)
C:\Dokumente und Einstellungen\Süleyman\Eigene Dateien\samp\tools\GTA tools\Verarbeitete script\RPGt
obytomasu mit adminfigur\von mir\RealLife\m\REAL.pwn(2104) : error 021: symbol already defined: "Sav
ePlayerPos"
C:\Dokumente und Einstellungen\Süleyman\Eigene Dateien\samp\tools\GTA tools\Verarbeitete script\RPGt
obytomasu mit adminfigur\von mir\RealLife\m\REAL.pwn(2106) : error 021: symbol already defined: "Upd
ateSeconds"
C:\Dokumente und Einstellungen\Süleyman\Eigene Dateien\samp\tools\GTA tools\Verarbeitete script\RPGt
obytomasu mit adminfigur\von mir\RealLife\m\REAL.pwn(2119) : warning 213: tag mismatch
C:\Dokumente und Einstellungen\Süleyman\Eigene Dateien\samp\tools\GTA tools\Verarbeitete script\RPGt
obytomasu mit adminfigur\von mir\RealLife\m\REAL.pwn(2119) : warning 213: tag mismatch
C:\Dokumente und Einstellungen\Süleyman\Eigene Dateien\samp\tools\GTA tools\Verarbeitete script\RPGt
obytomasu mit adminfigur\von mir\RealLife\m\REAL.pwn(2119) : warning 213: tag mismatch
C:\Dokumente und Einstellungen\Süleyman\Eigene Dateien\samp\tools\GTA tools\Verarbeitete script\RPGt
obytomasu mit adminfigur\von mir\RealLife\m\REAL.pwn(2143) : warning 213: tag mismatch
C:\Dokumente und Einstellungen\Süleyman\Eigene Dateien\samp\tools\GTA tools\Verarbeitete script\RPGt
obytomasu mit adminfigur\von mir\RealLife\m\REAL.pwn(2144) : warning 213: tag mismatch
C:\Dokumente und Einstellungen\Süleyman\Eigene Dateien\samp\tools\GTA tools\Verarbeitete script\RPGt
obytomasu mit adminfigur\von mir\RealLife\m\REAL.pwn(2145) : warning 213: tag mismatch
C:\Dokumente und Einstellungen\Süleyman\Eigene Dateien\samp\tools\GTA tools\Verarbeitete script\RPGt
obytomasu mit adminfigur\von mir\RealLife\m\REAL.pwn(5392) : warning 203: symbol is never used: "Spe
edMode"
Pawn compiler 3.0.3367         Copyright (c) 1997-2005, ITB CompuPhase


4 Errors.
Recycler, 04.02.2007, 12:23
Uploade dein Script ich füges dir ein wenn du möchtest^^

MfG
Recycler
Gangsta, 04.02.2007, 12:34
ok danke

http://pcspeicher.homeftp.org/members1/Gangsta/REAL.pwn
Recycler, 04.02.2007, 12:42
Konnte es leider nicht testen weil ich Dutils usw. nicht da hatte, hoffe es funktioniert jetzt :)

MfG
Recycler
Gangsta, 04.02.2007, 13:02
funzt irgendwie nicht wenn ich compile dann kommt Pawno hat ein problem festgestellt und muss
beendet werden
Recycler, 04.02.2007, 13:28
Probier es mit dieser Datei:
Gangsta, 04.02.2007, 13:56
wieder die selbe fehlermeldung
Rafioso, 04.02.2007, 14:20
ZitatGangsta hat folgendes geschrieben:



Ist das, das original?

Oder hast du da schon etwas ausprobiert?

=) =) :D :D =) =)
Recycler, 04.02.2007, 14:28
Ja das ist das Original...
Er hat aber schon ein Filterscript gefunden die Sache hat sich gegessen^^

MfG
Recycler

EDIT.
So nach einer Durchforstung des Scriptes habe ich den Fehler gefunden (Ein return 1; zuviel)
Gangsta wenn du möchtest kannst nun auch dieses Script verwenden:

http://rapidshare.com/files/14911750/RealMode.Gangsta.AllFixed.rar.html

EDIT 2:
Hab endlich die Problemquelle gefunden: Das Forum uppt die Dateien nicht richtig; hab die 186kb
große Datei hochgeladen, aber man konnte nur 179kb davon runterladen, weshalb es auch soviele
Fehler im Script gab.

Rafioso, 04.02.2007, 14:34
Alles klar :)


Und jetzt wieder

B2T


=) =) :D :D =) =)
Gangsta, 04.02.2007, 15:05
Danke für eure Hilfen.
Rafioso, 04.02.2007, 20:35
ZitatRecycler hat folgendes geschrieben:
EDIT 2:
Hab endlich die Problemquelle gefunden: Das Forum uppt die Dateien nicht richtig; hab die 186kb
große Datei hochgeladen, aber man konnte nur 179kb davon runterladen, weshalb es auch soviele
Fehler im Script gab.



Lade es einfach als RAR hoch ;)

Desweiteren ist mir das Problem nicht bekannt.

Vielleicht liegt es an deinem Browser?

=) =) :D :D =) =)
Recycler, 04.02.2007, 20:37
Ja möglicherweise verträgt er .pwn nicht so...werde nächstes Mal als .rar hochladen :)
Browser? Ich sag nur Firefox kann man vertrauen (siehe Avatar)

MfG
Recycler
Rafioso, 04.02.2007, 21:01
*hust*

Also ich bin gegen Firefox ;)

Und dieses Thema heisst nicht "Firefox vs. IE" sondern "Scriptbeispiele"!


Also weiter gehts mit Scriptbeispielen ;)

=) =) :D :D =) =)
Recycler, 05.02.2007, 14:47
ZitatRafioso hat folgendes geschrieben:

Und dieses Thema heisst nicht "Firefox vs. IE" sondern "Scriptbeispiele"!

Ich denke der Autor weiß wie sein Thread heißt.
ZitatRafioso hat folgendes geschrieben:

Also weiter gehts mit Scriptbeispielen ;)


|| Update 5.2.2007 ||

-> Taxi++: Basiert auf dem Taxiscript Seite 1, mit dem Unterschied das man sich nur als Fahrer
eines Fahrzeuges als Taxifahrer anbieten kann [EDIT: Und es erhalten auch nur die Spieler, die in
einem Auto sitzen die Taxianfrage] (Habe die IsPlayerPassenger und die IsPlayerDriver Function von
Sacky [SA:MP-Forum] benutzt, get it here) Hätte auch die PlayerState Function nehmen können, aber
das ist praktischer :-P

EDIT: Hab noch die Idee von Rafioso mit eingebaut (Seite 1) :-)

EDIT 2: Oh jetzt hab ich übersehen das du nicht irgendein Fahrzeug meintest sondern ein echtes
Taxi...lässt sich aber auch machen, nur ich kann natürlich nicht die VehicleId von jedem haben weil
ich ja nicht weiss wo/ob sie ein Taxi im Script haben...;-)
Gangsta, 05.02.2007, 20:46
weiß vielleicht einer wieso das script crashed obwohl es keien errors hat :( Autos sind eigentlich
nicht viele drin.

PWN:
http://pcspeicher.homeftp.org/members1/Gangsta/PSA.pwn
Rafioso, 05.02.2007, 21:57
Hast du vielleicht zuviele verschiedene Autosarten drinne?

Ich hab jetzt leider keine Zeit es anzuschaun sry.

PS: Warum schreibst du nicht selber ein script, dann weisst du, wass du falsch machst

=) =) :D :D =) =)
Recycler, 06.02.2007, 19:37
ZitatRafioso hat folgendes geschrieben:
Hast du vielleicht zuviele verschiedene Autosarten drinne?

Das wird es wohl sein.
Wann genau crasht SA:MP? Wenn nur das Connecting... kommt und es dann crasht, liegt es entweder
daran, das du mehr als 250 Autos oder mehr als 50 Autosorten in deinem Script hast. Wenn es erst
später, nach etwa 2 Minuten crasht, kann es daran liegen, das zuviele Timer zur gleichen Zeit
gesetzt wurden.
Du musst wegen den Autosorten nachzählen, ist zwar mühsam, aber wenn du den Fehler raus haben
willst muss das sein ^^

MfG
Recycler
Flash-Bang, 06.02.2007, 21:46
Hier hab ich mal ein Lotto script :-P
Edit:noch ein tank script :-P
diese scripts sind im www.sa-mp.com zu finden im forum:-P
Gangsta, 07.02.2007, 10:49
ZitatRecycler hat folgendes geschrieben:
ZitatRafioso hat folgendes geschrieben:
Hast du vielleicht zuviele verschiedene Autosarten drinne?

Das wird es wohl sein.
Wann genau crasht SA:MP? Wenn nur das Connecting... kommt und es dann crasht, liegt es entweder
daran, das du mehr als 250 Autos oder mehr als 50 Autosorten in deinem Script hast. Wenn es erst
später, nach etwa 2 Minuten crasht, kann es daran liegen, das zuviele Timer zur gleichen Zeit
gesetzt wurden.
Du musst wegen den Autosorten nachzählen, ist zwar mühsam, aber wenn du den Fehler raus haben
willst muss das sein ^^

MfG
Recycler



also autos habe ich viele entfernt crashed trotzdem. Nach cirka einer minute spielzeit kommt timeout
Recycler, 07.02.2007, 17:36
ZitatFlash-Bang hat folgendes geschrieben:
Hier hab ich mal ein Lotto script :-P
Edit:noch ein tank script :-P


Wenn man aus dem SA:MP Forum Scripte entnimmt sollte man einen Credit anhängen.


ZitatGangsta hat folgendes geschrieben:
ZitatRecycler hat folgendes geschrieben:
ZitatRafioso hat folgendes geschrieben:
Hast du vielleicht zuviele verschiedene Autosarten drinne?

Das wird es wohl sein.
Wann genau crasht SA:MP? Wenn nur das Connecting... kommt und es dann crasht, liegt es entweder
daran, das du mehr als 250 Autos oder mehr als 50 Autosorten in deinem Script hast. Wenn es erst
später, nach etwa 2 Minuten crasht, kann es daran liegen, das zuviele Timer zur gleichen Zeit
gesetzt wurden.
Du musst wegen den Autosorten nachzählen, ist zwar mühsam, aber wenn du den Fehler raus haben
willst muss das sein ^^

MfG
Recycler



also autos habe ich viele entfernt crashed trotzdem. Nach cirka einer minute spielzeit kommt timeout


Reuploade bitte dein Script, der Link oben ist nämlich down. ;-)

MfG
Recycler

EDIT: Hab den Link per ICQ erhalten, kann den Fehler aber nicht finden. Hilfreich wäre es, wenn du
uns/mir sagen könntest, was du alles selbst an dem Script gemacht hast, um die Fehlerquelle zu
finden :-)
http://pcspeicher.homeftp.org/members1/Gangsta/script.zip
Gangsta, 09.02.2007, 18:55
Recycler oder Rafisio tut ihr mir noch einen gefallen?
Also habe mich nun endgültig für ein script entschieden, doch ich will in dem script Ein Tanksystem
und eine Tachoanzeige haben. Könnt ihr mir das einfügen? Habe es mit Recylers Tankscript probiert
doch da kommen da dann viele errors xD
schaffs einfach nicht. und die füllung sol cirka 15 Minuten reichen. Kann man das auch so machen
das man auffüllen kann ohne an einer tankstelle zu sein? dann soll es das doppelte kosten wenn man
nicht an ner tanke ist. Die Anzeige soll so aussehen
Ganz unten auf dem Bildschrim in der mitte soll Fuel: Tacho:
stehen.
danke schon mal im vorraus

hier die PWN von dem script:
http://files.to/get/360482/36913/script.zip
Recycler, 09.02.2007, 19:06
Ich arbeite daran, vielleicht schaffe ich es heute noch :-)

EDIT: So hab das meiste eingebaut, hoffe so ist es in Ordnung ;-)
Allerdings finde ich es nicht so schön, das dieser Thread für andere Dinge genutzt wird.
Scriptfragen in Scriptfragen, Scriptaufträge in Scriptaufträge...Rafioso, bist du so nett und
verschiebst die entsprechenden Posts in die dazugehörigen Thread´s? Denn wo Scriptbeispiele
draufsteht sollen auch Scriptbespiele drin sein ;-)

EDIT 2: Hm hab wohl unbewusst ein Passwort hinzugefügt...hab die Datei ohne Pass nochmal
hochgeladen :-)

EDIT 3: Ich habe den Server online gesehen nur das mit dem Tanken/Tacho funktioniert nicht...da ist
wohl irgendwo der Wurm drin. Das merkwürdige daran ist es ja, das es funktioniert hat als ich es
ausprobiert habe :confused: Ich bin jetzt wirklich mit meinem Latein am Ende (und das nicht nur weil ich eben
mit meinen LA-Hausaufgaben fertig geworden bin :-P) Ghost/Rafioso guckt mal ob ihr den Fehler
findet :-(

MfG
Recycler
Gangsta, 10.02.2007, 20:45
ZitatRecycler hat folgendes geschrieben:


So hab das meiste eingebaut, hoffe so ist es in Ordnung ;-)


danke

ZitatZitat:

Rafioso, bist du so nett und verschiebst die entsprechenden Posts in die dazugehörigen Thread´s?
Denn wo Scriptbeispiele draufsteht sollen auch Scriptbespiele drin sein ;-)


oh sorry


Kannst du mir in ICQ das Passwort fürs entpacken geben?
da´nke
Rap-On, 18.02.2007, 17:06
ZitatZitat:
error 021: symbol already defined: "OnGameModeInit"

Was heist das was mache ich falsch. Wird schon definiert. Wie kann ich es machen das es endlich
läuft.
ZitatZitat:
error 021: symbol already defined: "OnPlayerCommandText"

Rafioso, 18.02.2007, 17:11
Wie wärs, wenn du das vorhandene entfernst?

Laut der Fehlermeldung gibt es das schon ;)

=) =) :D :D =) =)
Recycler, 18.02.2007, 17:56
Also bitte...
ich habe mir nicht die Mühe gemacht, alles aufzuschreiben was zu tun ist, damit es niemand liest! :/
Mein erster Post, da stehts!
Regeln die für alle Scripte gelten!

MfG
Recycler


Gangsta, 22.02.2007, 10:46
Recycler dein MoneyArea script funzt ned. Das kommt dann als error

Alex-08.pwn(5345) : error 001: expected token: ";", but found "}"
Pawn compiler 3.0.3367 Copyright (c) 1997-2005, ITB CompuPhase


1 Error.
Recycler, 22.02.2007, 18:52
Ich mag so etwas nicht.
Das ist einer der einfachsten Fehler, könnt ihr nicht einmal dieses bisschen Englisch?
Da fehlt ein ";" :evil: Das kann man doch wohl selber einfügen!
Naja habs korrigiert...trotzdem danke für den Hinweis^^

MfG
Recycler
Recycler, 25.02.2007, 14:13
|| Update 25.02.2007 ||

-> SendPlayerText: Eine Funktion die mit wenigeren Parametern als z.B. SendClientMessage auskommt.
-> SendAdminText: Eine Funktion um nur Admins eine Nachricht zu schicken.

MfG
Recycler
Littlejohny49, 01.03.2007, 08:58
ZitatRecycler hat folgendes geschrieben:
|| Update 25.02.2007 ||

-> SendPlayerText: Eine Funktion die mit wenigeren Parametern als z.B. SendClientMessage auskommt.
-> SendAdminText: Eine Funktion um nur Admins eine Nachricht zu schicken.

MfG
Recycler



Recycler ich kann die 2 dateien nich downloaden :-(
Recycler, 01.03.2007, 09:00
Oh da hast du Recht...das ist bei allen Downloads momentan so^^
Das liegt am Server, tut mir Leid da kann ich nichts machen :-(

MfG
Recycler
Recycler, 01.03.2007, 09:12
|| Update 1.03.2007 ||

-> Jail.Unjail: Ich glaube ihr wisst was das ist ;-)

EDIT: Bitte löscht jemand den anderen Post ;-)

MfG
Recycler

//EDIT

Gelöscht

MfG
Rafioso
Rafioso, 01.03.2007, 09:21
ZitatLittlejohny49 hat folgendes geschrieben:
Recycler ich kann die 2 dateien nich downloaden :-(


Wird später von uns behoben :)

=) =) :D :D =) =)
Littlejohny49, 01.03.2007, 12:53
ZitatRafioso hat folgendes geschrieben:
ZitatLittlejohny49 hat folgendes geschrieben:
Recycler ich kann die 2 dateien nich downloaden :-(


Wird später von uns behoben :)

=) =) :D :D =) =)



THX !!

wann kann man das downloaden ????
Rafioso, 01.03.2007, 13:15
Nachmittag oder gegen Abend.

Gedulde dich ein wenig, bin grade nicht daheim ;)

Oder vll auch früher, wenn ghost Zeit hat und da ist.

=) =) :D :D =) =)
Nico, 01.03.2007, 21:06
TEST


TEST
Rafioso, 01.03.2007, 23:23
So müsste wieder alles downloadbar sein :)

Gute Nacht

=) =) :D :D =) =)
Recycler, 02.03.2007, 21:06
Da dieser Thread ein wenig unübersichtlich ist, hat Ghost einen neuen Thread
"Scriptbeispiele"
erstellt.
Da werdet ihr meine Scripte nach Buchstaben sortiert in Ordnung vorfinden.

MfG
Recycler
Recycler, 03.03.2007, 18:32
|| Update 3.03.2007 ||

-> SendTextUltimatePack: Ein Pack von vielen verschiedenen SendPlayer-Funktionen.

MfG
Recycler
Littlejohny49, 04.03.2007, 10:57
Zitatghost hat folgendes geschrieben:
TEST


TEST



dein test txd geht nich zu downloaden :/

Recycler, 06.03.2007, 20:08
|| Update 6.03.2007 ||

-> Jail Secure: Eine Absicherung, damit Spieler die im Gefängnis sind sich nicht durch den /kill
Befehl befreien können.

-> Easy Functions: Mit diesem Beispiel könnt ihr lernen, wie ihr einfache IsPlayer Checks erstellen
könnt. (Gut mit "Jail Secure" zu kombinieren!)

MfG
Recycler
Rafioso, 06.03.2007, 20:19
ZitatRecycler hat folgendes geschrieben:
|| Update 3.03.2007 ||

-> SendTextUltimatePack: Ein Pack von vielen verschiedenen SendPlayer-Funktionen.

MfG
Recycler


Nochmal Hochladen per EDIT ;)

=) =) :D :D =) =)
Recycler, 06.03.2007, 20:28
Vielleicht hättest du vorher daran denken sollen die Datei auf eurem Webspace nicht zu löschen,
denn ich behalte nicht alle meine Scriptbeispiele TXT´s...dann schreibe ich sie eben neu ;-)

MfG
Recycler
Rafioso, 06.03.2007, 20:33
Habe nichts gelöscht ;) Keine Vorurteile bitte !!

//EDIT
Hat doch nicht lange gedauert ;)

=) =) :D :D =) =)
Recycler, 06.03.2007, 20:37
Tut mir Leid das wusste ich nicht. Die Datei konnte nur nicht mehr abgerufen werden also muss sie
jemand gelöscht haben^^
Aber ist ja jetzt auch egal ;-)

MfG
Recycler
Rafioso, 06.03.2007, 20:42
Es hat niemand gelöscht. Du hast es nur zu diesem Zeitpunkt hochgeladen, als das System gerade
nicht funktioniert hat, dabei kann einfach nichts gespeichert werden.

And now
B2T


=) =) :D :D =) =)
Recycler, 06.03.2007, 20:44
Aber gestern konnte ich die Datei noch downloaden? Also muss sie doch gespeichert worden sein...
Und außerdem hat Ghost die Datei hochgeladen.
Und (ja noch ein "und"!) lag die Datei nicht da wo die anderen Uploads von Usern liegen sondern
irgendwo in einem Ordner "uploads/SendTextUltimatePack"

MfG
Recycler

PS: Was bedeutet B2T ?

EDIT: Danke.


Die Datei war niemals im Forum downloadbar ;)
Du verwechselst es mit etwas, denn glaube mir, ich passe genau auf was hier passiert.

B2T...ghost hat es unter diesem Post erklärt.

MfG
Rafioso


EDIT (von Recycler): Gehört dieser Link nicht zum Forum?
http://vww-forum.xail.net/forum/uploads/SendTextUltimatePack.txt

MfG
Recycler

//Edit

Doch warum?
Falls du darauf hinaus willst, dass der Link nicht funktioniert, kann ich dir gleich sagen dass du
nur berechtigung vom Forum aus auf die Daten hast, also nicht per Link auf einen Server ;)
Sicherheitshalber. Betrifft aber nicht alle Dateien.
PS: Wie kommst auf den Link?

MfG
Rafioso


EDIT: 1. Die Datei konnte ich, weshalb auch immer, im Forum nicht hochladen.
2. Ich hab Ghost die Datei per ICQ gesendet, dieser wiederum hat sie "woanders" im Forum
hochgeladen.
3. Er hat mir den obenstehenden Link gegeben, damit ich ihn in Scriptbeispiele einfügen
konnte.
4. Bis zum 5.3.07 konnte man die Datei unter diesem Link herunterladen, und zwar alle.

MfG
Recycler

Tjo pech, lade es einfach von dem Betrag runter, wo es hochgeladen wurde ;)
DISKUSSION BEENDET

MfG
Rafioso


EDIT:
[DISKUSSION NICHT BEENDET]
Ich habe die Datei bereits wieder hochgeladen weil Ghost sie zufällig noch auf seinem Rechner hatte.
Und Pech habe ich dadurch nicht. Ich hab nur gemerkt das der Download nicht mehr funktioniert hatte
und daraus ergibt sich mir, das eine Veränderung stattgefunden haben muss. Was es nun war ist mir
vollkommen egal. Die Datei ist wieder geuppt und alles ist in Ordnung.
[/DISKUSSION NICHT BEENDET]

MfG
Recycler

Wenn gesagt wird, dass die Diskussion beendet ist, dann ist dieses einzuhalten!
>>> 4.3 <<<

MfG
Rafioso
Nico, 06.03.2007, 20:45
Back to Topic
Recycler, 06.03.2007, 20:52
Hat jemand vielleicht eine Idee was ich noch scripten könnte oder braucht jemand zu irgendeinem
Thema noch Hilfe?
Bitte nur Vorschläge machen die allen etwas nutzen, spezielle Scripte für euch brauche ich nicht
hochladen^^

MfG
Recycler
Littlejohny49, 10.03.2007, 14:10
Commands für TDM !!!
Recycler, 10.03.2007, 15:49
Das sagt mir nicht viel...daraus kann ich auch keine Ideen nehmen^^
Hast du vielleicht eine Vorstellung von TDM Commands?

MfG
Recycler
Recycler, 10.03.2007, 16:56
|| Update 10.3.2007 ||

Dieses Update wird wahrscheinlich viele erfreuen, denn dieses Scriptbeispiel ist, sozusagen, Most
Wanted
:

-> Bankscript: Ein Bankscript ohne Checkpoints, mit den Commands:

- /speichern
- /abheben
- /konto

-> UnlockAllCars: Eine Funktion um alle Autos z.B. mit einem Command zu öffnen.

MfG
Recycler
Rap-On, 10.03.2007, 17:25
Hä? Alles geht keine Error skeine Warnings bis ich dann die if /speichern etc. einfüge.

Ich muss die doch einfach unter OnplayerCommandText einfügen? Und braucht er irgendwelche new ...
oder so?
Rafioso, 10.03.2007, 17:30
ZitatRap-On hat folgendes geschrieben:
Und braucht er irgendwelche new ... oder so?


Ich dachte mir du kennst dich aus....es ist doch ein new enthalten ;)

=) =) :D :D =) =)
Rap-On, 10.03.2007, 17:34
ja. Und denn habe ich auch schon eingefügt über der main () nur.
Es steht nachher undefinied Symbol cmd etc.
Was muss ich da oben rein?
Rafioso, 10.03.2007, 17:43
Sieht ganz danach aus, dass du die Zeilen vergessen hast einzufügen:

Code:
1
2
   new cmd[256];
   cmd = strtok(cmdtext, idx);


=) =) :D :D =) =)
Rap-On, 10.03.2007, 17:45
Nunja einen weniger.

ZitatZitat:
C:\PROGRA~1\ROCKST~1\GTASAN~1\GAMEMO~1\src\rlg.PWN(244) : error 017: undefined symbol
"idx"
C:\PROGRA~1\ROCKST~1\GTASAN~1\GAMEMO~1\src\rlg.PWN(250) : error 017: undefined symbol
"idx"
C:\PROGRA~1\ROCKST~1\GTASAN~1\GAMEMO~1\src\rlg.PWN(273) : error 017: undefined symbol
"idx"
C:\PROGRA~1\ROCKST~1\GTASAN~1\GAMEMO~1\src\rlg.PWN(279) : error 001: expected token: ";", but found
"if"
C:\PROGRA~1\ROCKST~1\GTASAN~1\GAMEMO~1\src\rlg.PWN(290) : error 017: undefined symbol
"string"
C:\PROGRA~1\ROCKST~1\GTASAN~1\GAMEMO~1\src\rlg.PWN(290) : error 017: undefined symbol
"string"
C:\PROGRA~1\ROCKST~1\GTASAN~1\GAMEMO~1\src\rlg.PWN(290) : error 029: invalid expression, assumed zero
C:\PROGRA~1\ROCKST~1\GTASAN~1\GAMEMO~1\src\rlg.PWN(290) : fatal error 107: too many error messages
on one line


Die restlichen die ich noch definieren muss. Bitte helft mir. Danke im Vorraus
Rafioso, 10.03.2007, 17:49
Wie wärs wenn du einfach das Script hochladest?

Es steht doch ganz genau drinn, dass inx nicht definiert ist, warum machst es dann nicht?
Das ist das einfachste vom Scripten und das solltest du können.

ZitatZitat:
new idx;



string musst auch definieren.

=) =) :D :D =) =)
Rap-On, 10.03.2007, 17:57
Hmm. Ich weiss nicht. Den Script lade ich ganz bestömmt ned hoch. Niemand anders als ich darf
Zugriff drauf haben. Aber ne Frage. Wenn ich unter Onplayercommand new string[256]; definiere muss
ich auch über der Main irgendwo definieren?
Rafioso, 10.03.2007, 18:08
Nur einmal definieren!!! und zwar bei commands

=) =) :D :D =) =)
Rap-On, 10.03.2007, 18:20
Ich probiers. Rafioso kannst du das nicht irgendiwe per ICQ machen. ALso das ich dir per ICQ schicke?
Also nur falls es nicht geht


Weiss jemand wie ich diesen einzigen Fehler behebe? Sonst geht alles Juhu:D

ZitatZitat:
C:\PROGRA~1\ROCKST~1\GTASAN~1\GAMEMO~1\src\rlg.PWN(271) : error 001: expected token: ";", but found "if"


Und die Zeile im script heisst so:
ZitatZitat:
if(strcmp(cmd, "/abheben", true) == 0) {
if(!strlen(tmp)) {
SendClientMessage(playerid, COLOR_WHITE, "Benutzung: /abheben [Geldbetrag]");
return 1;
}
moneys = strval(tmp)
if(moneys > bank[playerid]) moneys = bank[playerid];
GivePlayerMoney(playerid, moneys);
bank[playerid] -= moneys;
format(string, sizeof(string), "Du hast %d$ abgehoben, dein Kontostand lautet: %d$", moneys,
bank[playerid]);
SendClientMessage(playerid, COLOR_YELLOW, string);
return 1;
}


Also das dicke da ist der Fehler. Bitte um Hilfe..
Rafioso, 10.03.2007, 18:44
Nein ICQ ist ausgeschlossen!
Das ist Forenangelegenheit.

Probiers mal mit dem Code, habs aber nicht getestet.

Code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
if(strcmp(cmd, "/abheben", true) == 0) {
if(!strlen(tmp)) {
SendClientMessage(playerid, COLOR_WHITE, "Benutzung: /abheben [Geldbetrag]");
return 1;
}
moneys = strval(tmp)
if(moneys > bank[playerid]) 
{
moneys = bank[playerid];
}
GivePlayerMoney(playerid, moneys);
bank[playerid] -= moneys;
format(string, sizeof(string), "Du hast %d$ abgehoben, dein Kontostand lautet: %d$", moneys, bank[pl
ayerid]);
SendClientMessage(playerid, COLOR_YELLOW, string);
return 1;
}


=) =) :D :D =) =)
Rap-On, 10.03.2007, 18:52
Da das auch nicht geht hat Recycler wohl einen Fehler gemacht.
Recycler bitte versuch ihn zu beheben. Die Infos findest du zwei Posts über mir ;)
Recycler, 10.03.2007, 19:28
Ja, ich habe einen Fehler gemacht, und ich gebe sogar zu, ich bin nicht Gott ;-)
Aber einen so einfachen Fehler müsste man sofort bemerken. Tue ich jedenfalls.

Code:
1
moneys = strval(tmp)


muss so aussehen:

Code:
1
moneys = strval(tmp);


Trotzdem danke für den Hinweis, wird korrigiert.

MfG
Recycler


EDIT: Hab die Datei neu hochgeladen, Fehler wurden korrigiert.
Allerdings bitte ich darum, keine eigenen überarbeiteten Versionen meiner Scripte hochzuladen,
sonst habe ich kein Überblick mehr. Wenn ihr die Fehler postet, ich sie korrigiere, ist alles OK

Wer sagt, dass ich dein Script überarbeitet habe?
Schonmal daran gedacht, dass ich mit ghost selber eins gemacht habe?

MfG
Rafioso


EDIT:
ZitatRafioso hat folgendes geschrieben:

Hättest du grade nicht geantwortet, so hätte ich ein überarbeitetes Bankscript hochgeladen :) But wayne
:D

Ich dachte du wolltest meines hochladen...und nein, ich hab nicht dran gedacht das du mit ghost
eines gemacht hast. Wie sollte ich? Aus dem vorherigen Kontext konnte man schließen, das du meins
überarbeitet hochladen wolltest. Aber Schwamm drüber. ENDE
Rafioso, 10.03.2007, 19:35
Jop, is schwer im Windows Editor :D
Hättest du grade nicht geantwortet, so hätte ich ein überarbeitetes Bankscript hochgeladen :) But
wayne :D

=) =) :D :D =) =)
Rap-On, 10.03.2007, 20:20
Kann es sein das der Script nicht kompatibel zu Filterscripts ist?
Denn wen ich mit Filterscripts spiele steht immer du hast 0$ gespeichert, du hast 0$.
Auch wenn ich /speichern geld etc. mache imemr die nachricht.
Ohne Filterscript steht dann bei jedem Command der gleiche Text??
Tjong, 11.03.2007, 00:54
Ich habe eine Frage:
Und zwar wisst ihr wie man, es machen kann das man in Dateien reinspeichert.
zB. das man dann auch am Anfang /login [Passwort] eingeben muss?
Schon mal Danke

MfG Ytong
Rafioso, 11.03.2007, 01:03
Nimm doch einfach das

http://vww-forum.xail.net/forum/index.php?action=posts&fid=38&tid=195&site=6

Musst bissle runterscrollen

Anhang SanAndre2


=) =) :D :D =) =)
Tjong, 11.03.2007, 01:40
Naja mir gehts jetz eher nich darum es zu besitzen, sondern ich will lernen wie man, Accounts macht
und insgesamt, wie man in dateien speichert, und wiederum daraus liest. usw. Wär cool wenn mir da
jemand helfen könnte.
=)
Recycler, 11.03.2007, 09:51
Da begiebst du dich in ein kompliziertes Gebiet (wenn du es richtig machen willst, also nach
Serverneusatrt die Daten erhalten bleiben sollen)
Größenteils würde ich sagen, solltest du mit DINI arbeiten. Schau mal in mein Bankscript ganz
unten, vielleicht findest du dann Hilfe!

@ Rap-On: Dieses Phänomen tritt auf, wenn man das eingegebene Geld nicht besitzt. Also das man
nichts abgehoben/gespeichert hat. Man könnte natürlich noch eine Message wie z.B. "Du hast nicht
soviel Geld" einbauen, aber ich finde es jetzt wie es ist eigentlich OK

MfG
Recycler
Rap-On, 11.03.2007, 10:14
Gut danke. War nur bisschen komisch. Ach und danke Recycler für den Script ist wirklich geil :D
Tjong, 12.03.2007, 23:34
Hmm danke dein Bankscript hat mir schon sehr weiter geholfen. Wenn man vom Serevr runter geht, und
neu connected oder wenn der Gamemode restartet wird, bleibt das geld erhalten.
Das einzige problem ist wenn ich den Server komplett auschalte und wieder anmach. Dann werden alle
Konten wieder auf 0 gesetzt.
Weißt du wodran das liegen könnte? Schonmal danke :)
Recycler, 13.03.2007, 14:42
Hm genau das Problem habe ich schon einmal Rap-On erklärt...Klick

MfG
Recycler
Tjong, 13.03.2007, 17:11
Najoa so blöd war ich auch net. Hab extra nen Automatik speicher timer rein gemacht, und beim
connecten sollte der eigentlich auch überprüfen ob der nickname, schon regristriert ist, allerdings
wird hier immer gesagt das der nickname noch nicht regristriert ist. Wisst ihr wodran das liegen
könnte?


Hier ist mal das was bei mir bei Connect und Disconnect steht
ich hoff mal ich nerv euch nicht zu sehr dami :roll:

Code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
public OnPlayerConnect(playerid)
{
   GameTextForPlayer(playerid,"~r~BETA ~w~Script ~g~Testserver",5000,5);
   SendPlayerFormattedText(playerid, "Willkommen beim Testen, und viel Spaß ;-)", 0);
   gActivePlayers[playerid]++;
   gLastGaveCash[playerid] = GetTickCount();
   
   //BANK
       if (!udb_Exists(PlayerName(playerid)))
    {
    SendClientMessage(playerid,COLOR_GREEN,"=========================================");
    SendClientMessage(playerid,COLOR_WHITE,"Dieser Nickname ist nicht regristriert.");
    SendClientMessage(playerid,COLOR_WHITE,"Du kannst dich mit /register [passwort] regristrieren.");
    SendClientMessage(playerid,COLOR_GREEN,"=========================================");
    
    
    //new fname[MAX_STRING];
    //format(fname,sizeof(fname),"%s.sav",udb_encode(PlayerName(playerid)));
    //dini_Create(fname);

    
    }
    
    if (udb_Exists(PlayerName(playerid)))
    {
    
    SendClientMessage(playerid,COLOR_GREEN,"=========================================");
    SendClientMessage(playerid,COLOR_WHITE,"Dieser Nickname ist regristriert.");
    SendClientMessage(playerid,COLOR_WHITE,"Du kannst dich nun mit /login [passwort] einloggen.");
    SendClientMessage(playerid,COLOR_WHITE,"Wenn du dich nicht einloggst wirst du automatisch gekick
t.");
    SendClientMessage(playerid,COLOR_GREEN,"=========================================");

   bank[playerid]=dUserINT(PlayerName(playerid)).("bank");

   
    }
    //BANK
   
   bank[playerid]=dUserINT(PlayerName(playerid)).("bank");
   
   
   return 1;
}

//--------------------------------------------------------------------------------------------------
----
public OnPlayerDisconnect(playerid)
{
dUserSetINT(PlayerName(playerid)).("bank",bank[playerid]);
   gActivePlayers[playerid]--;
}
//--------------------------------------------------------------------------------------------------
----
Rafioso, 13.03.2007, 18:41
ZitatYtong hat folgendes geschrieben:
ich hoff mal ich nerv euch nicht zu sehr dami :roll:


Hier nervt keiner!!! Kannst millionen Fragen stellen :D

Probier lieber mal if-else Verzweigung, anstatt if.

=) =) :D :D =) =)
Recycler, 13.03.2007, 21:13
ZitatRafioso hat folgendes geschrieben:

Probier lieber mal if-else Verzweigung, anstatt if.

Das ist völlig egal.

@ Ytong:

Gib mir mal bitte deine Registrierfunktion und sag mal welche Datein sich im Ordner scriptfiles
nach dem Regisrieren befinden. (Und deren Inhalt)
Der Befehl mit der Bank ist korrekt.
Allerdings ist der Bankdatenabgleich vor dem return 1; unnötig.

MfG
Recycler


Rafioso, 13.03.2007, 21:15
ZitatRecycler hat folgendes geschrieben:
Das ist völlig egal.


Das ist nicht egal LOL :D

Aber wenn du drauf bestehst bitte bitte :D

=) =) :D :D =) =)


Recycler, 13.03.2007, 21:16
In diesem Fall ist es, das versichere ich dir, völlig egal.
Und eigentlich kenne ich so spontan keinen Fall wo es relevant ist ob es if oder else if ist.
z.B. in OnPlayerCommandText kannst du ein Command mit if machen und die anderen mit else if, oder
aber du machst bei allen ein neues if. Kommt dasselbe bei raus.

MfG
Recycler

EDIT: Natürlich kannst du auch ein if...else Verzweigung benutzen, weil es ja sowieso nur 2
Möglichkeiten gibt: Sein oder nicht Sein :D
Tjong, 13.03.2007, 22:33
regristrier funktion?
ich dachte das wäre das hier:
Code:
1
2
3
    //new fname[MAX_STRING];
    //format(fname,sizeof(fname),"%s.sav",udb_encode(PlayerName(playerid)));
    //dini_Create(fname);


dateien im scriptfiles ordner sind:
totalstat.ini

Inhalt:
users=1

,eine account datei die nur vom dateityp datei ist und 1 kb groß ist, und noch 5 weitere .sav
dateien die allerdings alle 0 Kb groß sind, also leer...


der inhalt der .datei - Datei ist:

password=49807616
protection=0
x=2513.815185
y=1817.801391
z=10.729112
besitz=0
money=500
bank=0
flugschein=0
fschein=0
job=9
killsinarow=0

und wie gesagt die anderen sind leer...

Recycler, 14.03.2007, 14:11
Fehler gefunden :D
Allerdings muss ich mich entschuldigen, ich habe nämlich hier
Code:
1
2
3
    //new fname[MAX_STRING];
    //format(fname,sizeof(fname),"%s.sav",udb_encode(PlayerName(playerid)));
    //dini_Create(fname);

das "%s.sav" verändert. Normalerweise wird die Datei so benannt: "%s.dudb.sav"
Ich hab sie umbenannt weil für mich dieses dudb dazwischen unnötig war, und somit habe ich alle
Funktionen, darunter auch die udbExists so verändert, das da %s.sav steht.

Also änder bitte den oben gennanten Teil um und lösch erstmal alle schon erstellten Userdateien.

MfG
Recycler
Tjong, 14.03.2007, 15:22
danke es geht, so und jetz hab ich kein problem mehr aber ne frage
wie kann ich es machen, das die spieler einloggen müssen, also der account ein passwort bekommt?

Nochmal vielen Dank fürs helfen, jetz kann ich so richtig loslegen ^^
Recycler, 14.03.2007, 16:43
Wenn du dich registrierst bekommt der Account automatisch ein Passwort, codiert (Hash) in der
User-Datei zu finden.
Falls du möchtest, das die Spieler sich registrieren/einloggen müssen, dann mach das in
OnPlayerSpawn(playerid):

Code:
1
2
3
4
5
if (!PLAYERLIST_authed[playerid] == true)
{
SendClientMessage(playerid, COLOR_RED, "Du hast dich nicht eingeloogt, und wurdest deshalb automatis
ch gekickt.");
Kick(playerid);
}


MfG
Recycler
Tjong, 14.03.2007, 23:23
und wie kann ich es machen das die benutzer das passwort selbst aussuchen können ? also das sie
schreiben müssen /register [passwort] bzw. /login [passwort]

so bei weiteren fragen werd ich mal das dazugehörende topic nehmen, das hier soll ja eher für
scriptbeispiele da sein :roll:
Recycler, 23.03.2007, 15:36
Ich möchte nochmal sagen, falls ihr Probleme mit den Scriptbeispielen habt, bitte hier posten!

MfG
Recycler
Recycler, 24.03.2007, 13:17
|| Update 24.03.2007 ||

-> Freeze-Unfreeze: Eine Funktion, um einen Spieler bewegungslos zu machen.

MfG
Recycler
Rap-On, 24.03.2007, 16:24
Schön fänds ich eigentlich bei einem Script der einen Checkpoint hat bei dem man in eine
Inneneinrichtung teleportiert wird. ALso das mit der Money Area will ich nicht ganz checken. Ich
weiss ja wie ich mache das ich Geld bekomme aber nicht wie ich in einen Innenraum teleportiert
werde -.- :(*böse*
Recycler, 27.03.2007, 18:22
|| Update 27.03.2007 ||

-> StopF4: Eine kleine aber feine Funktion um zu verhindern das Spieler mit F4 zur Classselection
zurückkommen ;-)

MfG
Recycler
HustleR, 06.04.2007, 21:23
Hallo ich bin neu hier natürlich hab ich sofort die MOST WANTED!!! Bank.txt geladen, noch dazu die
tank.txt.
Jetzt hab ich nach dem einfügen von diesen beiden in mein Script ein problem. Immer diese Errors
*rofl*:D:-O.

Ich lade jetzt mal ein Adminfilterscript indem ich eigentlich die Bank.txt haben wollte und einmal
lade ich mein
Script hoch indem ich die tank.txt haben wollte.

Könntest du vll. für mich nachsehen (bin scriptanfänger) was da nicht stimmt???


MFG

HustleR;-)

das mit der tank.txt werd ich jetzt nochmal selber versuchen. wenn ich es nicht schaffe mache ich
einen edit. thx thx thx

ich hab auch schon alles mögliche probiert ich schaff das mit der bank.txt einfach net *böse*
Recycler, 06.04.2007, 21:29
Jetzt ist das Bank-Script drin, aber ohne DUDB.
Das Tank-Script habe ich nicht hier hochgeladen, das soll mal schön der machen der das auch geuppt
hat. Denn mit dem will ich mich nicht beschäftigen :roll:

MfG
Recycler
HustleR, 06.04.2007, 21:36
OK, jo wegen mabako.

trotzdem für deine 14 jahre kannst du sehr gut scripten.

danke nochmals.


MFG

HustleR

P.S.: Naja :D Tankscript sollte eigentlich ins Script wo du gerade Bank reingemacht hast.:/
Recycler, 06.04.2007, 21:46
Mit dem Tank-Script meinte ich eigentlich den, der das Tank-Script hier hochgeladen hat. Das war
ich nämlich nicht... deswegen wollte ich mich auch nicht mit den eventuellen Fehlern darin
herumschlagen :roll:
ZitatHustleR hat folgendes geschrieben:

trotzdem für deine 14 jahre kannst du sehr gut scripten.

*thx*

Hab nochmal das Bankscript ins Adminscript kopiert :-P
HustleR, 06.04.2007, 21:55
danke ist dann auch besser dann kann ich da auch dudb hinzufügen, tankscript ist für uns net so
wichtig


MFG

HustleR

p.s.: hast du icq?
Recycler, 06.04.2007, 22:05
Ja, steht in meinem Profil. Allerdings werde ich täglich von sovielen mit Scriptfragen genervt, ich
weiß nicht ob ich da noch Zeit habe ;-)

MfG
Recycler
HustleR, 06.04.2007, 22:08
xD achso naja macht nix.

Ich habn problem mit meinem script :D

sieh dir das mal an:


thx for help


MFG

HustleR
Nico, 07.04.2007, 09:18
hui da war ja einiges falsch..hab es mal korrigiert

*ungetestet*

Pascal, 07.04.2007, 13:44
Hi nochmal wie kan man den ein script in den server einfügen
:roll:
Nico, 07.04.2007, 13:46
dort wo du vorhin schon gefragt hast hat recycler dir geantwortet - schau da mal.

PS.: Was meinst du genau damit?
HustleR, 07.04.2007, 22:52
danke ghost!!


scheise hab nochn problem folgendes: hab jetzt das petrol reingebaut, auch keine errors oder so.
Jetzt wenn ich ins Game gehe, und mit einem gang-skin starte, haben die autos kein Petrol. Auch bei
anderen Skins haben die autos kein Petrol. Nur bei Autos die einfach so rumstehen die haben Petrol.


MFG

HustleR

P.S.: HILFE!!!
Nico, 08.04.2007, 00:04
hihi das is leicht, da muss ich nichts ändern...

Du musst nur den Wert MAX_CARS ändern, die anzahl deiner autos-1;

gruß Nico
HustleR, 08.04.2007, 21:58
hi danke ghost


hab alles hingekriegt!!!


MFG

HustleR


P.S.: Recycler hab gesehen, das dir nicht mehr einfällt, was du noch so scripten könntest.
Ich weis net ob das zu schwierig ist, vll. könntest du mal ein Adminscript machen zum einfügen,
wo man auch Level hergeben kann und so. Mit 5 Level nur kicken und jailen oder freezen und so
und dann ab 6 level halt dann bannen noch dazu ein /goto command wo man sich zu einem
spieler seiner wahl teleportieren kann oder /get command damit man den spieler zu sich herholen kann.
usw. usw.

oder wenigstens die grundsätze machen: Den login command und den register command. Und die grundsätze
kicken und bannen oder freezen was weis ich :D. Mit Level wärs halt toll^^
dödel, 16.04.2007, 22:45
Hätte ma irgendwer nen Script das im Spiel Zeit vergeht wie Tag und Nacht wechsel oder mit
Wettwrwechsel?
Rafioso, 16.04.2007, 22:52
Wetterwechsel geht noch nicht.

=) =) :D :D =) =)
dödel, 17.04.2007, 13:45
Und wie wärs mit Zeit, kann man das nicht irgenwie mit Timern oder so machen :/
schon mal *thx* im voraus.
Recycler, 17.04.2007, 13:58
Wenn du das Script vollkommen RealLife haben willst, würde ich mein Zeit und Datum Script nehmen
und abhängig der Uhrzeit zwischen Tag- und Nacht wechseln. Wetterwechsel funktioniert dann in 0.2,
auch gut in meinem Trailer zu sehen :D

MfG
Recycler

PS: Gute Idee! ich werde ein Script daraus machen 8-)
Zockerweibchen, 17.04.2007, 14:14
Kannst du dein Video ma auf Myvideo oder youtube hochladen?^^

irgendwie will sich d as nich abspielen lassen :shock::confused:
Recycler, 17.04.2007, 14:17
Hast du es denn auch entpackt? Also die Datei ;)
Denn bei den anderen scheint es funktioniert zu haben :shock:

MfG
Recycler

PS: Ich lads auf YouTube :-)

EDIT: SA-MP 0.2b Trailer
Recycler, 17.04.2007, 15:20
|| Update 17.04.2007 ||

-> WorldTime: Diese Funktion passt die Ingame-Zeit (und somit die Helligkeit) an unsere Zeit an.
D.h., wenn ihr um 20 Uhr spielt, wird es dunkel sein usw.

MfG
Recycler
dödel, 17.04.2007, 16:05
Irgendwie haut das mit dem Paday nicht so wie ich das will :cry:

Fehler: error 017: undefined symbol "playerid"

Script:

public OnGameModeInit()
{
SetTimer("PayDay",600000,1);
}

______________________________________________

public PayDay()
{
for (new i; i < MAX_PLAYERS; i++)
{
if (IsPlayerConnected(i))
{
GivePlayerMoney(i,5000);
SendClientMessage(playerid,COLOR_GREEN,"--PayDay--5000$--");
}
}
}


*bitte**thx*
Recycler, 17.04.2007, 16:07
Fehler von mir :D Ersetz das "playerid" in der SendClientMessage Zeile durch ein "i" ;-)

MfG
Recycler
dödel, 17.04.2007, 17:48
Post 1:

Meine sa-mp Mod ist jetzt fertig. Ich hoffe das es keinen stört, denn ich habe mehrere Mods
zusammengefügt und bearbeitet.;-)
Wundert euch nicht über den Erstellernamen, denn ich nehme nur dödel wenn mein Nickname schon
vergeben ist.(Hitman):D
Außerdem habe ich die Mod nur für meine Lansspiele erstellt. *thx* an alle die das tollerieren.*anbet*

Post 2:

Könnte mir Jemand kleine Anleitung zusammenstellen wo bei dem Bankscript alles hingehört, ich mach
immer
irgendein Fehler und ich habe DUBD, DINI und DUTILS schon runtergeladen und einfach in die
Unterordner
kopiert.

error 017 undefined symbol udb_Exists
error 017 undefined symbol MAX_STRING
error 009 invalid array size (negative or zero)
error 036 empty statement


Bitte editiert eure Beiträge
MfG
Rafioso
Rafioso, 17.04.2007, 23:05
Schau dir doch mal das Tutorial von Recycler an ;)

=) =) :D :D =) =)
Zockerweibchen, 18.04.2007, 02:08
ZitatZitat:
Hast du es denn auch entpackt? Also die Datei ;)


:/ ...

Ist eher nen problem von meinen Pc
wenn ich es wage ein video zu starten gibts schon mal einfach einen neustart
ohne irgendeine fehlermeldung... *böse*
neuste grafiktreiber usw alles drauf
kp was das fürn müll ist^^


Danke fürs Hochladen

aber du hättest noch zeigen können das die Sirene der Rennsport-Leitung jetzt auch endlich syncro
ist^^


so b²t ^^
dödel, 18.04.2007, 20:38
Edit: Recycler könntest du mir nicht die Scripts einbauen? Ich blick da einfach nicht durch.*anbet**rofl*

Könnteste auch einbauen das man sich über das Kommando /admin als Admin anmeldet? Das hab ich zum
teil schon schon eingestellt.(eigentlich nur das sich dann die Farbe ändert)
Und da könntest su das mit dem Admin einfach bearbeiten.*anbet**anbet**anbet*
Rafioso, 18.04.2007, 21:07
Was verlangt ihr denn noch alles?

Sollen wir morgen zu euch nach Hause kommen und euch den Hintern abputzen?

Recycler hat sich solch eine Mühe gemacht hier alles aufzuschreiben und zu erklären und dann kommt
soetwas.

Wenn ihr zu faul zum lesen und verstehen seit, dann müsst ihr euch wirklich mal fragen ob ihr es
mit dem scripten nicht doch lieber lassen solltet!

Das ist meine Meinung.

=) =) :D :D =) =)
dödel, 18.04.2007, 21:48
:/ Immer mit der Ruhe, war nur ne Frage. Ihe müsst euch nicht darum kümmern ich zwing ja keinen.
(warum auch)

/Edit1: Ich habs jetzt hinbekommen aber ich glaube das da irgendein kleiner Fehler im Script ist.
(in dem ich alles erst mal in einer neuen Datei eingebaut habe, um einen besseren Überblick zu haben)

Vielleicht kennt ihr dafür eine Lösung.;-)


25 #if defined _dutils_included
26 #endinput
27 #endif


Untitled.pwn(26) : error 001: expected token: "#endif", but found "-end of
file-"
Recycler, 19.04.2007, 16:55
Wenn du die Datei richtig gedownloadet hast, funktioniert sie. Wenn man an der Datei etwas
verändert, können Fehler auftreten. Die dürft ihr dann selber ausbügeln. Außerdem würde ich euch
nicht empfehlen, den Inhalt der Includes in euer Script zu kopieren. Das wird unübersichtlich, und
wenn man diese komplizierten Mechanismen nicht versteht, sollte man erst garnicht damit anfangen,
irgendwas zu verändern.

Ich gebe Rafioso in diesem Fall recht, denn ich habe wirklich mein Bestes getan um allen zu
erklären, wie das mit DUDB usw. funktioniert. Und wenn ich soetwas einfaches in euer Script
einbauen soll, komme ich mir vor wie einer, der euch das passende Kleingeld aus dem Portmonee
raussucht damit man seine Cents loswird.
Bei Fragen, wo man einfach nicht weiß, wie es weiter geht, und man sein Bestes getan hat um es
selber hinzukriegen
, helfe ich natürlich gerne. Aber das ist hier wohl nicht der Fall.

MfG
Recycler
dödel, 19.04.2007, 17:06
Ich hab nur eine Frage: wo steht die Erklärung? :shy:
Recycler, 19.04.2007, 17:08
Guckst du hier!

dödel, 19.04.2007, 17:13
Es gibt ganze Tutorial Seiten?! :shy: *rofl*
Hätte ich das nicht früher sehen können? *böse*
__________________________________________________

/Edit: Ein anderes Problem ist das, nach Beenden des Servers wird das Geld nicht gespeichert.*böse*
Obwohl in scripfiles die Datei dödel.dubd.sav erstellt wurde, ist die sav-Datei leer (0 KB groß).

:/ oder ist hier ein Fehler drin:

public OnPlayerConnect(playerid)
{
if (!udb_Exists(PlayerName(playerid)))
{
new fname[MAX_STRING];
format(fname,sizeof(fname),"%s.dudb.sav",udb_encode(PlayerName(playerid)));
dini_Create(fname);
}
if (udb_Exists(PlayerName(playerid)))
{
bank[playerid]=dUserINT(PlayerName(playerid)).("bank");
}
return 1;
}
Recycler, 19.04.2007, 20:28
Entscheidend ist hier der OnPlayerDisconnect-Part ;)

MfG
Recycler
dödel, 19.04.2007, 20:33
*hä* In dem Bankscript den ich von hier geloaded habe steht nichts von Disconnect.*nopost*
Recycler, 19.04.2007, 20:37
*dagegen*
Da ist eine Funktion namens "SavedUpdate"...die erfüllt den gleichen Zweck! Das einzige was nicht
drin steht ist ein SetTimer...du kannst aber auch einfach ein "SavedUpdate();" in
OnPlayerDisconnect setzen :roll:

MfG
Recycler

PS: Ich guck jetz weiter Akte X 8-) *wayne* *jop*
dödel, 19.04.2007, 20:40
Soll ich jetzt den kompletten Script verschieben oder nur ab ner bestimmten Zeile? *bahnhof*

(Ich sollte mir mal etwas mehr Kenntnisse mit Pawno zulegen)

public SavedUpdate()
{
for (new i; i < MAX_PLAYERS; i++)
{
if (IsPlayerConnected(i))
{
dUserSetINT(PlayerName(i)).("bank",bank(i));
}
}
}

/Edit: Ich habs jetzt es musste so aussehen:

public OnPlayerDisconnect(playerid)
{
for (new i; i < MAX_PLAYERS; i++)

if (IsPlayerConnected(i))
{

dUserSetINT(PlayerName(i)).("bank",bank(i));
}

im script bei ("bank",bank(i)) muss das so aussehen: ("bank,bank)
(die Klammer wurden verändert da im Forum das Tags fürs kursiv Schreiben sind)*böse*

Auf jedenfall danke für den Tip. (ihr habt schon recht, man muss auch mal was alleine schaffen
können);-)
Recycler, 19.04.2007, 21:23
Du kopierst die SavedUpdate Funktion irgendwo in dein Script außerhalb anderer Funktionen, und in
OnPlayerDisconnect setzt du ein "SavedUpdate();" ;-)

MfG
Recycler

PS:

Code:
1
2
3
4
5
6
7
8
9
10
public SavedUpdate()
{
for (new i; i < MAX_PLAYERS; i++)
{
if (IsPlayerConnected(i))
{
dUserSetINT(PlayerName(i)).("bank",bank(i));
}
}
}


muss so aussehen:

Code:
1
2
3
4
5
6
7
8
9
10
public SavedUpdate()
{
for (new i; i < MAX_PLAYERS; i++)
{
if (IsPlayerConnected(i))
{
dUserSetINT(PlayerName(i)).("bank",bank[i]);
}
}
}
dödel, 19.04.2007, 21:27
*guckstdu* oben bei meinem Edit. (hättest dir die Schreibarbeit auch sparen können):D
Rafioso, 19.04.2007, 22:03
Zitatdödel hat folgendes geschrieben:
im script bei ("bank",bank(i)) muss das so aussehen: ("bank,bank)
(die Klammer wurden verändert da im Forum das Tags fürs kursiv Schreiben sind)



Hättest du den CODE-TAG benutzt, so wäre kein Fehler aufgeträten.

Code:
1
[i]



=) =) :D :D =) =)
dödel, 19.04.2007, 22:31
Werd drüber nachdenken.:D

Hier gibts noch was: Ich weis nicht ob das mit absicht war, aber man kann sein Konto auch ins Minus
bringen:

/speichern -512

Du hast -512$ gespeichert, dein Kontostand lautet: -512$

(wenn man von Minuskonten abhebt (egal wieviel) bekommt man alles vom Konto, vor der Geldanzahl im
Spiel steht ein " - " und deine Geldanzeige wird Rot)

Ich find das recht nützlich. (erstrecht wenn man es dringend brauch z.B. zum Essen.)

Wenn man ein Minuskonto hat kann man einfach das ganze Geld abheben, den Server verlassen und
wieder betreten. Schon steht das Konto wieder auf 0.
Recycler, 20.04.2007, 15:26
Code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
if(strcmp(cmd, "/speichern", true) == 0 ) {
      new tmp[256];
new moneys;
new string[256];
       tmp = strtok(cmdtext, idx);
       
       if(!strlen(tmp)) {
         SendClientMessage(playerid, COLOR_WHITE, "Benutzung: /speichern [Geldbetrag]");
         return 1;
       }
       moneys = strval(tmp);
             if(moneys > 0) // Hier...
{
      if(GetPlayerMoney(playerid) < moneys) {
         moneys = GetPlayerMoney(playerid);
      }
      GivePlayerMoney(playerid, 0-moneys);
      bank[playerid]+=moneys;
      format(string, sizeof(string), "Du hast %d$ gespeichert, dein Kontostand lautet: %d$", moneys, 
bank[playerid]);
      SendClientMessage(playerid, COLOR_YELLOW, string);   
}
      return 1;
   }

if(strcmp(cmd, "/abheben", true) == 0) {
new string[256];
new moneys;
       new tmp[256];
       tmp = strtok(cmdtext, idx);
       if(!strlen(tmp)) {
         SendClientMessage(playerid, COLOR_WHITE, "Benutzung: /abheben [Geldbetrag]");
         return 1;
       }
       moneys = strval(tmp);
              if(moneys > 0) // Hier...
{
          if(moneys > bank[playerid] && moneys > 0)
              moneys = bank[playerid];
      GivePlayerMoney(playerid, moneys);
         bank[playerid] -= moneys;
         format(string, sizeof(string), "Du hast %d$ abgehoben, dein Kontostand lautet: %d$", moneys
, bank[playerid]);
      SendClientMessage(playerid, COLOR_YELLOW, string);
}
      return 1;
      }


So besser? *anbet*
Simpel, simpel...

MfG
Recycler
dödel, 20.04.2007, 16:22
Ich find es ja gut das man ins Minus kommen kann. (ich habe sogar ein Limit von -2500 eingebaut):D

Ich meinte aber mehr eine Lösung hier für. :roll: (auf den Smiley drücken)
Recycler, 20.04.2007, 17:12
Ich verstehe dein Problem mit dem Taxiscript nicht :/
Irgendwas mit Cheaten...wenn du das so gescripted hast wie du geschrieben hast, wo ist das Problem?
Drück dich bitte etwas genauer aus :/

MfG
Recycler
dödel, 20.04.2007, 17:59
Es ist nichts mit dem Taxiscript das sieht nur so aus weil die downloads immer unten stehen.
Das Problem liegt beim Bankscript, das Geld soll nähmlich beim Disconnecten autom. gespeichert
werden.
Ansonsten könnte man ja das minus bar Geld abholen, disconnecten und wieder connecten denn wäre das
bare Minusgeld ja wieder weg und man hätte keinen Schulden mehr.

(Außerdem klappt das mit dem Kontolimit ins Minus nicht, köntest du mir dabei helfen?
denn man kann so wie ich das gemacht habe einfach öfters 2500 abholen.)
Recycler, 20.04.2007, 18:32
Die Zeile zum Speichern des Geldes:

Code:
1
dUserSetINT(PlayerName(playerid)).("geld",GetPlayerMoney(playerid));


und diese zum Laden des Geldes:

Code:
1
GivePlayerMoney(playerid, dUserINT(PlayerName(playerid)).("geld"));


Weiterhin kann ich nicht verstehen wie ich sonst helfen könnte :shock:

MfG
Recycler
dödel, 20.04.2007, 18:34
Das müsst reichen, aber da man mit ins Minus gehen kann wollte ich eine gesamtbegrenzung bis -2500.
(ich weiß nur nich wie das geht)
Recycler, 20.04.2007, 18:41
Meinst du, dass das Geld, welches nach dem Disconnecten gespeichert wird, nicht kleiner als -2500
sein darf?

Speicher-Code:

Code:
1
2
3
4
new money;
if (GetPlayerMoney(playerid) < -2500) money = -2500;
else money = GetPlayerMoney(playerid);
dUserSetINT(PlayerName(playerid)).("geld",money);


Der Lade-Code bleibt so wie der Letztere :roll:

MfG
Recycler
dödel, 20.04.2007, 19:03
Ich meinte mehr das das Geld beim disconnecten erst mal das Konto verschoben wird. (damit meine ich
die selbe Funktion wie beim Commando zum speichern nur das es dann autom. das ganze bare Geld
speichert.
____________________________________________

Und mit dem Kontolimit meinte ich das man mit "/speichern -(Geldanzahl)" insgesammt das Kont nicht
unter -2500 $ bekommen soll.

(Hoffentlich hab ichs diesmal besser erklärt):D
Recycler, 20.04.2007, 20:38
Speicher-Code:

Code:
1
2
3
4
new bmoney,gmoney;
bmoney = bank[playerid];
gmoney = GetPlayerMoney(playerid);
dUserSetINT(PlayerName(playerid)).("bank",bmoney+gmoney);


Lade-Code:

Code:
1
bank[playerid] = dUserINT(PlayerName(playerid)).("bank");


Konto nicht mehr als -2500:

Code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
if(strcmp(cmd, "/speichern", true) == 0 ) {
        new tmp[256];
new moneys;
new string[256];
        tmp = strtok(cmdtext, idx);
        
        if(!strlen(tmp)) {
            SendClientMessage(playerid, COLOR_WHITE, "Benutzung: /speichern [Geldbetrag]");
            return 1;
        }
        moneys = strval(tmp);
             if(moneys > -2501) // Hier...
{
        if(GetPlayerMoney(playerid) < moneys) {
            moneys = GetPlayerMoney(playerid);
        }
        GivePlayerMoney(playerid, 0-moneys);
        bank[playerid]+=moneys;
        format(string, sizeof(string), "Du hast %d$ gespeichert, dein Kontostand lautet: %d$", money
s, bank[playerid]);
        SendClientMessage(playerid, COLOR_YELLOW, string);    
}
        return 1;
    }

if(strcmp(cmd, "/abheben", true) == 0) {
new string[256];
new moneys;
        new tmp[256];
        tmp = strtok(cmdtext, idx);
        if(!strlen(tmp)) {
            SendClientMessage(playerid, COLOR_WHITE, "Benutzung: /abheben [Geldbetrag]");
            return 1;
        }
        moneys = strval(tmp);
              if(moneys > -2501) // Hier...
{
            if(moneys > bank[playerid] && moneys > 0)
                moneys = bank[playerid];
        GivePlayerMoney(playerid, moneys);
            bank[playerid] -= moneys;
            format(string, sizeof(string), "Du hast %d$ abgehoben, dein Kontostand lautet: %d$", mon
eys, bank[playerid]);
        SendClientMessage(playerid, COLOR_YELLOW, string);
}
        return 1;
       }


So und jetzt will ich nichts mehr hören :confused:

MfG
Recycler
dödel, 20.04.2007, 21:01
Klappt einwandfrei (jedenfalls das mit dem Disconnect).:D

Aber ich meinte eigentlich das man auf dem Konto höchstens -2500$ im Minus sein kann.
(denn so wie du das gemacht hast, hatte ich auch davor. Doch man kann die -2500$ einfach öfters
holen.)*böse*

Jedoch glaub ich, ich weis wie ich das jetzt hinkriege. :roll:
Also denk erst gar nicht darüber nach und gönn dir mal ne Denkpause. :D
____________________________________________________________________________________________________
____________

/Edit1: Mir kam die Idee einen Script zu erstellen mit dem man ohne zu sterben den Skin wechseln
kann;-)

Einzige voraussetzung: man sollte die Skinnummer kennen die man nehmen will :D

(andere nummernreihenfolge als im Klassenauswahlmenü) :-P

manche Zahlen funktionieren nicht und beenden das Spiel *böse* --- der Server läuft stabil weiter ;-)
dödel, 21.04.2007, 11:49
Rcycler hast du dich schon an den Zeitwechsel mit Timern rangesetzt bzw. probiert es hinzukriegen:roll:
oder ist das doch ein wenig zu aufwendig dafür? :D
____________________________________________________________________________________________________
____________

/Edit: Könnte mal *bitte* jemand eine Textdatei oder so erstellen in de steht was ich mit Pawno einfügen
muss damit man sich mit Nick und Passwort einloggen muss?:/

Wer auch noch gut wenn drin steht das nur einmal ein nick vergeben werden kann und der andere dann
einfach gekickt wird.

(ich werd aus dem Tutorial nicht wirklich schlau :shy:)
(und über die Such find ich irgendwie auch nichts wirklich hilfreiches) *anbet*
Recycler, 21.04.2007, 11:55
Mehr als diese 2 Links kann ich dir jetzt nicht geben, hab keine Lust jetzt noch was zu machen:

World-Time
Userdata X

Und das mit den Skins wurde auch schon besprochen...Wirst du wohl suchen!

MfG
Recycler
dödel, 21.04.2007, 11:59
>Das Problem dabei ist: ich wollte das mit dem passwort in meinem mode einbauen aber mit ner .amx
ist das schlecht möglich.:/


  • > ganauer ausgedrückt wollte ich das man sich registrieren muss wenn möglich mit dem standard:
    >> DUDB, Dini und dutils (so kann ich alles ganeuer überwachen und ändern):roll:

(und mach dir keine Sorgen wegen der verfällschlichung, ich heb immer die ganzen textdateien auf
und durch eien Command kann man abrufen von wem welche Funktion stammt. :D)

______________________________________________

Edit: Ich hab mich schon gewundert das das mit den Skins noch keinem eingefallen ist. :o

(also doch, aber auch egal, kann man nichts machen):roll:
______________________________________________

/Edit: Ich hab hier noch was ums sich leichter zu machen: :D
Wenn alle Spielerklassen die selben Waffen haben sollen könnte man es einfach so
machen wie auf dem Bild im Anhang. :roll:
Auf diese weise kann man alle Waffen mit einmal austauschen. :-P
dödel, 22.04.2007, 17:54
Hier ist mal ne Liste von den funktionierenden Skins :D
(zwischen 2 und 47 weis ich nicht welche funktionieren)

1-2
?
47-64
66-73
75-76
78-85
87-89
91-93
95-118
120-129
131
133-148
150-207
209-264
274-279
280-288


  • chtet die Liste nicht es gehen automatisch alle Skins die man selber
    eingebaut hat, beim Rest stürzt das Game ab.:evil:




  • > Hab eins höher noch ein paar mal editiert.

(hoffe das zählt nicht als doppelpost):roll:
Recycler, 22.04.2007, 19:16
Zitatdödel hat folgendes geschrieben:

(hoffe das zählt nicht als doppelpost):roll:


Nein, tut es nicht.
Aber es gibt eine Funktion, mit der alle Skins funktionieren, nämlich SetSpawnInfo :roll:

MfG
Recycler
dödel, 22.04.2007, 19:39
Zitatdödel hat folgendes geschrieben:

/Edit: Könnte mal *bitte* jemand eine Textdatei oder so erstellen in de steht was ich mit Pawno einfügen
muss damit man sich mit Nick und Passwort einloggen muss?:/

Wer auch noch gut wenn drin steht das nur einmal ein nick vergeben werden kann und der andere dann
einfach gekickt wird.

(ich werd aus dem Tutorial nicht wirklich schlau :shy:)
(und ?ie Such find ich irgendwie auch nichts wirklich hilfreiches) *anbet*

> ganauer ausgedrückt wollte ich das man sich registrieren muss wenn möglich mit dem standard:
>> DUDB, Dini und dutils (so kann ich alles ganeuer überwachen und ändern):roll:
>>(kann aber auch ohne sein, währ aber schön wenn)




Und das mit dem neuen Design ist zwar nicht schlecht aber man kann jetzt schlechter die
Moderatorlogos und den Online und Offline Zustand erkennen. Aber das ist ja eure Sache ob ihr das
noch ändert.:roll:
Recycler, 23.04.2007, 15:10
Naja, wenn du unbedingt das "Standard" Script haben willst, kannst du auch das aus dem SA-MP Forum
nehmen :roll:

MfG
Recycler
dödel, 23.04.2007, 17:46
Kannste den Link ma hinschreiben? Ich hab schon n paar mal gesucht aber finds iregendwie nicht.:/
Recycler, 23.04.2007, 18:02
How To: DUDB

:roll:

MfG
Recycler
dödel, 23.04.2007, 18:08
Ich werds versuchen, aber so wie der ganze Script aussieht seh ich jetzt schon die Fehlermeldungen*böse*
Recycler, 23.04.2007, 18:10
Wenn man alles richtig macht, was da steht, funktioniert es ;-)
Außerdem hat nie jemand gesagt das soetwas nicht kompliziert ist :roll:

MfG
Recycler
dödel, 23.04.2007, 19:11
Es ist mir anscheinend zu kompliziert.
Es komen zwar keine Fehlermeldungen, aber dafür kommt im Spiel
keine Reaktion. Es startet ganz normal als würde der Script überhaupt nicht existieren.:confused:
(Ich habs die ganze Zeit immer anders ausprobiert*böse*)

Wie wäre nochmal ein anderer Script.:/
Recycler, 24.04.2007, 19:27
Ich glaube, ein solches Script wirst du nicht nochmal vereinfachter finden.
Im Gegensatz zu meinem Registrier-Script in Userdata X ist das ja ein Kinderspiel :D

MfG
Recycler
dödel, 24.04.2007, 19:35
Ich hab mir zum Teil schon selber son Script gemacht.
Ich kriegs nur nicht mit dem speichern des gesagten textes hin (/pass *** ). *böse*
(Ich mach das wie beim bankscript nur mit einem Wort
das man beim connecten eingeben muss um aus dem Gefängniss zu kommen)
Recycler, 24.04.2007, 19:39
Wie meinst du das genau? Sollen "***" nur ein Wort darstellen, oder ein beliebig langer Text?
Nur ein Wort ist einfach, du darfst natürlich nicht dUserSetINT verwenden, aber es steht alles im
DUDB Tutorial... :roll:

MfG
Recycler
dödel, 24.04.2007, 19:42
Ja soll nur n Wort sein.:roll:
Recycler, 24.04.2007, 19:49
Ja, wo ist dann das Problem? Einfach genauso wie beim Bankscript, nur natürlich kein strval
(welches ja den Standarstring in eine Value konvertiert)
Ein strlen ist natürlich nötig, um zu prüfen ob der Spieler überhaupt etwas eingegeben hat. Und
dann, einfach den String mit dUserSet speichern! :D

MfG
Recycler
Graf, 24.04.2007, 19:52
Hallo Recycler, ich habe mal eine kurze frage zu deinem /freeze! Es funktioniert nicht bei mir,
wenn ich im server nur /freeze eingebe dann steht /frezze [playerid] da und wenn ich frezze und die
playerid eingebe steht Server Unknowncommand da, kannst du mir bitte helfen?
Danke im voraus!
Mfg Graf
dödel, 24.04.2007, 19:56
Code:
1
pass[playerid] = dUserINT(PlayerName(playerid)).("pass");


Nur wie geb ich ein dass genau der Command gespeichert wird?
Recycler, 24.04.2007, 19:59
Merkwürdig, ich kann keinen Fehler finden...hast du auch ein new idx; am Anfang von
OnPlayerCommandText?
Wenn nicht, probier es so:

Code:
1
2
3
4
5
6
new cmd[256];
new idx;
cmd = strtok(cmdtext, idx);

if(strcmp(cmd, "/freeze", true) == 0)
if(strcmp(cmd, "/unfreeze", true) == 0)


Also die beiden strcmp Zeilen mit denen im Script ersetzen, und die beiden new's mit der Gleichung
am Anfang von OnPlayerCommandText (nicht in ein Command!)

MfG
Recycler

EDIT:

@dödel:

Also erstmal verstehe ich garnicht, wieso dein Passwort ein Integer ist.
Zweitens, würde ich das so nicht machen. Du solltest in einem Command, wo man sein Passwort
eingeben muss, checken, ob das eingegebene mit dUser([Parameter]) übereinstimmt.
Und ein Speicher-Command sollte so wie im Bankscript funktionieren. Den Spieler sein gewünschtes
Passwort eingeben lassen und mit dUserSet([Parametern]) speichern :D Hilfe zu den Befehlen -> DUDB
Tutorial
Graf, 24.04.2007, 20:11
Ich habe alles, auser dem new idx; das habe ich jetzt eingefügt und jetzt kommt ein error
C:\PROGRA~1\ROCKST~1\GRANDT~1\Server\SAMP01~1\GAMEMO~1\src\lvdm.pwn(154) : error 021: symbol
already defined: "idx"
C:\PROGRA~1\ROCKST~1\GRANDT~1\Server\SAMP01~1\GAMEMO~1\src\lvdm.pwn(1090) : warning 203: symbol is
never used: "idx"
Pawn compiler 3.0.3367 Copyright (c) 1997-2005, ITB CompuPhase


1 Error.

Mfg Graf
Recycler, 24.04.2007, 20:13
Ich nehme an, das du dann doch wohl schon ein new idx; hast. Aber mach alles so wie oben
beschrieben, auch das austauschen von cmdtext mit cmd.
Und poste bitte die Zeilen wo die Errors vorkommen ;-)

MfG
Recycler
dödel, 24.04.2007, 20:15
Ich werd ma suchen wos Toturial is.
Und das mit dem check hab ich so:

Code:
1
   if(cpass = pass[playerid]) {
Recycler, 24.04.2007, 20:18
Ich nehme an, das cpass das eingegebene Passwort enthält? Wenn ja, dann solltest du strcmp()
benutzen, um Strings zu vergeleichen :roll:
Nur wieso pass[playerid]? Da brauchst du nix in OnPlayerConnect in eine Variable zu kopieren,
einfach direkt machen mit dUser(); ;-)

MfG
Recycler
dödel, 24.04.2007, 20:22
Werds erst ma ne weile versuchen irgendwann muss es funktionieren.:roll:
Graf, 24.04.2007, 20:22
Danke! Es funktioniert alles! Eine Frage hab ich noch: Können Admins verschieden hohe Level haben,
denn das hab ich mal auf einen anderen server gesehen?
Recycler, 24.04.2007, 20:27
Nein, standardmäßig ist soetwas nicht im Spiel enthalten.
Es gibt aber diverse Adminscripte, die mit Leveln arbeiten. Beispiel ist hier für X-Treme Admin ;-)

MfG
Recycler
Graf, 24.04.2007, 20:38
Kennst du dich mit dem X-Treme Admin aus?
Recycler, 25.04.2007, 15:02
Nein, hab mich noch nie mit beschäftigt. Habe ich eigentlich auch nicht vor, denn so gesehen kann
ich an dem Script nichts lernen. Das sind einfach nur ein paar Commands die verfügbar sind wenn man
den und den Level hat...vermute ich jedenfalls :D

MfG
Recycler
dödel, 25.04.2007, 16:02
Code:
1
2
3
4
5
6
7
8
9
10
11
12
13
   if(strcmp(cmd, "/pass", true) == 0) {
       new tmp[256];
        tmp = strtok(cmdtext, idx);
      if(!strlen(tmp)) {
         SendClientMessage(playerid, COLOR_ADMIN, "Usage: /pass [password]");
         return 1;
          }
      new cmdpass;
      cmdpass = strval(tmp);


   return 1;
   }


Hab noch ma ne Frage hierzu.
Wie soll das aussehen um cmdpass mit
pass[playerid]=dUserINT(PlayerName(playerid)).("pass");

zu vergleichen?:/
Recycler, 25.04.2007, 16:35
Code:
1
2
3
4
5
6
7
8
9
10
11
12
13
    if(strcmp(cmd, "/pass", true) == 0) {
        new tmp[256];
          tmp = strtok(cmdtext, idx);
        if(!strlen(tmp)) {
            SendClientMessage(playerid, COLOR_ADMIN, "Usage: /pass [password]");
            return 1;
            }
if (strcmp(tmp, dUser(PlayerName(playerid)).("pass"), true) == 0);
{
// Code
}
   return 1;
    }


Ich weiß aber nicht, wieso das Passwort bei dir ein Integer sein soll! Wenn das Passwort
gespeichert wurde, wird es ja wohl Text sein und keine Zahl :confused:

MfG
Recycler
dödel, 25.04.2007, 16:36
das nimmt doch auch texte an oder wie soll ichs dann machen?:/
Graf, 25.04.2007, 16:48
Recycler kannst du mir mal sagen was daran falsch ist? Mit dem command möchte ich jemanden zu mir
herteleportieren können!

if(strcmp(cmd, "/gethere", true) == 0) {
if(IsPlayerAdmin(playerid) == 1) {
new dir[256];
dir = strtok(cmdtext, idx);

if(!strlen(dir)) {
SendClientMessage(playerid, COLOR_RED, "-> Verwendung: /gethere [Playerid]");
return 1;
}
giveplayerid = strval(dir);
dir = strtok(cmdtext, idx);
if (IsPlayerConnected(giveplayerid)) {
GetPlayerName(giveplayerid, giveplayer, sizeof(giveplayer));
GetPlayerName(playerid, sendername, sizeof(sendername));
SetPlayerInterior(giveplayerid,0);
SetPlayerPos(giveplayerid,0,playerid,0);
SendClientMessage(giveplayerid, COLOR_RED, "Du bist von einen Admin zu ihm teleportiert worden
worden.");
}
else {
format(string, sizeof(string), "%d ist kein aktiver Spieler.", giveplayerid);
SendClientMessage(playerid, COLOR_RED, string);
}
return 1;
} else {
SendClientMessage(playerid, COLOR_RED, "Du bist kein Admin!");
}
return 1;
}
Recycler, 25.04.2007, 16:51
@dödel:

Nein, ich verstehe dich nicht :confused: Vielleicht solltest du nicht gleich mit soetwas kompliziertem
anfangen ;-)
Also, das eingegeben Wort wird in der Variablen tmp[] gespeichert. Die ist eine Variable mit
Arrays, also als String nutzbar (Text)
Weil du beim Bankcommand aber kein Wort, sondern nur Zahlen eingibst, brauch man eine Konvertierung
vom String zur Value (strval)
Aber da du hier nur das Wort brauchst, musst du nichts konvertieren. Allerdings entspricht diese
Erklärung deines Scriptes nur dann, wenn das Passwort auch wirklich als String gespeichert wurde.
Ich kenn den Speicher-Code ja nicht, und weiß nicht ob du das Passwort gehasht oder soetwas hast ;-)

MfG
Recycler

EDIT:

@Graf:

Benutze bitte den Code-Tag ;-)

Code:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
if(strcmp(cmd, "/gethere", true) == 0) 
{
if (IsPlayerAdmin(playerid)
{
new dir[256];
dir = strtok(cmdtext, idx);

if(!strlen(dir)) {
SendClientMessage(playerid, COLOR_RED, "-> Verwendung: /gethere [Playerid]");
return 1;
}
new id = strval(dir);
if (IsPlayerConnected(id))
{
new Float:X, Float:Y, Float:Z;
GetPlayerPos(playerid, X, Y ,Z);
SetPlayerInterior(id, 0);
SetPlayerPos(id, X, Y, Z);
SendClientMessage(id, COLOR_RED, "Du bist von einen Admin zu ihm teleportiert worden worden.");
}
else 
{
format(string, sizeof(string), "%d ist kein aktiver Spieler.", id);
SendClientMessage(playerid, COLOR_RED, string);
}
}
else SendClientMessage(playerid, COLOR_RED, "Du bist kein Admin!");
return 1;
}


Und bitte: Das gehört eigentlich in Scriptfragen, es hat nichts mit meinen Scriptbeispielen zu tun ;-)
dödel, 25.04.2007, 16:56
ich hab den vom Bankscript.

Code:
1
2
3
4
5
6
7
8
9
10
   if (!udb_Exists(PlayerName(playerid)))
    {
    new fname[MAX_STRING];
    format(fname,sizeof(fname),"%s.dudb.sav",udb_encode(PlayerName(playerid)));
    dini_Create(fname);
    }
    if (udb_Exists(PlayerName(playerid)))
    {
   pass[playerid]=dUserINT(PlayerName(playerid)).("pass");
    }



ZitatRecycler hat folgendes geschrieben:
@d?:

Nein, ich verstehe dich nicht :confused: Vielleicht solltest du nicht gleich mit soetwas kompliziertem
anfangen ;-)


wenn ich das nich mache kann sich unter einem schon vorhandenen namen einloggen das geld
verschwenden.
oder sonst irgendeinen mist bauen
Recycler, 25.04.2007, 17:03
Ich glaube du verwechselst da einiges :-(

Code:
1
2
3
4
    if (udb_Exists(PlayerName(playerid)))
    {
    pass[playerid]=dUserINT(PlayerName(playerid)).("pass");
    }


Das ist nicht nötig, es wird ja nur im Abfrage-Command gebraucht ;-) Und du brauchst keine Variable
"pass" !!!
Du speicherst das Passwort des Spielers durch ein Speicher-Command mit dUserSet, und in einem
Abfrage-Command wird es per dUser überprüft. Ich meine damit soetwas wie /register und /login :/
Ehrlich gesagt, fang am Besten mit etwas leichterem an, sonst schreibe ich noch den ganzen Tag :-(

MfG
Recycler

EDIT: Und erst im Login-Command wird das Geld es Spielers geladen!
dödel, 25.04.2007, 17:07
Zur Not kann ich auch wenns nichts wird einfach selber das Passwort in der .sav eintragen und dann
über die playerid und nen text durchgeben.:evil:

Aber eigentlich hilft mir das ja auch nich weiter ich wollt nur nen vergleich des Passworts mit der
Eingabe.

Vielleicht ist das einfach zu sinnlos daran weiter zu arbeiten, is viel zu umständlich.*böse*
Recycler, 25.04.2007, 17:30
Dieses Script habe ich in 6 Minuten einfach so hingeschrieben, und weißt du warum? Weil ich will,
das du endlich zufrieden bist und nicht mehr fragst! :evil:
Das speichert das Geld eines Spielers (nicht die Bank) und lädt es wieder, wenn der Spieler sich
eingeloggt hat. (Registrierung erforderlich)

Ich denke an diesem Beispiel verstehst du es endlich!

MfG
Recycler
dödel, 25.04.2007, 21:50
Danke genau darauf wollte ich die ganze zeit hinaus.*anbet*
__________________________________________________

Ich hatte eigentlich nur noch ne kleine simple Frage. (hoffe jedanfalls das die simpel ist)
Kann man das hinbekommen das man mit /vehicle [playerid] [vehicle ID] ein Auto erscheinen lassen in
dem man dann drin sitzt?
So als Notauto wenn man in ner Pampa festhängt.
Recycler, 26.04.2007, 07:31
Und eigentlich hab ich dir schon ein paar mal gesagt, benutz Strings mit strcmp :roll:

MfG
Recycler
dödel, 26.04.2007, 16:41
Ja das weis ich, das Problem dabei ist das ich nicht weis wie ich das mache
das eine Fahrzeug genau bei einem spawnt und man automatisch reinbefördert wird.
(weis auch nicht wie viel ich bei PutPlayerInVehicle reinschreiben muss):/
Recycler, 26.04.2007, 16:53
Ich geb dir jetzt nur ein paar Anhaltspunkte, nicht den ganzen Code.
Also, jedes Car in deinem Script hat ein VehicleID (nicht die ModelID!)
Das erste Car, was du im Script eingesetzt hast, ist Nummer 1, das Zweite Nummer 2 usw.
Wahrscheinlich willst du ganz bestimmte Cars zu dir teleportieren. Das heißt, du musst dir die
VehicleID's merken.
Über ein Command gibts du die gewünschte VehicleID des Cars als Paramter ein.
Folgende Befehle werden dich durch den Command leiten:

new Float:X, ...;
GetPlayerPos
SetVehiclePos
PutPlayerInVehicle (funktioniert nur für Playerid 0 im Spiel, in 0.2 gefixed)

MfG
Recycler


dödel, 26.04.2007, 17:04
Das mit dem float kann ich ja noch aus nem andern Script nehmen und ich hab mir heute schon nen
Script geschrieben der funktionieren könnte, auf jedenfall is der schon nah dran und ich hab mir
schon überlegt ob man AddStaticVehicle auch in nem Command benutzen kann. So das immer beim
Kommando ein neues Auto an dem Ort des Spielers ensteht. 8-)
Recycler, 26.04.2007, 17:12
Nein, das geht nicht. Noch gibt es keine dynamischen Cars. Erst in 0.2 :roll:

MfG
Recycler
dödel, 26.04.2007, 20:16
Jetz hab ich mich ja schon dran gesetzt, aber wenn man ein Kommando eingibt
passiert nichts. Ich loads ma hoch vielleicht siehste da nen Fehler.
(wenn du Zeit und Lust hast):D

/Edit: Es kommen ja auch nicht mal errors oder warnings.
Recycler, 26.04.2007, 20:25
Da sind unzählige Fehler...Variablen wurden nicht definiert, Paramter wurden zu oft konvertiert,
Funktionen sind total falsch...
Sieht aus, als hättest du nur irgendein Code genommen und nur die Texte verändert :confused:
Wenn du dich nicht eingiebig mit dem, was in dem Code steht, beschäftigst, wirst du niemals richtig
scripten können.

Grundvorraussetzungen:


  • Weißt du was strtok ist (eine der wichtigsten Funktionen überhaupt)?
  • Weißt du was strval bedeutet?
  • Weißt du wie man Variablen definiert/erstellt?
  • Weißt du wie du mehrere Paramter oder auch nur einen verwendest?
  • Weißt du welchen Nutzen strlen hat?
  • Weißt du wie man ein statement verneint?


Wenn du das verstanden hast, kannst du weitermachen :o

MfG
Recycler
dödel, 26.04.2007, 20:31
ZitatRecycler hat folgendes geschrieben:
Sieht aus, als hättest du nur irgendein Code genommen und nur die Texte verändert :shock:


genau das hab ich :roll:
halt nur etwas umgearbeitet

(außerdem hab ich den Script zum großteil per Handy geschrieben):evil:
____________________________________________

Ich muss mich ja nicht an jede Art von Script wagen.
Außerdem is der Taxiscript dann ja eigentlich sinnlos.:roll:
Recycler, 02.05.2007, 09:30
|| Update 02.05.2007 ||

-> RegisterLogin: Ein Register und Login Script, eigentlich schon hier hochgeladen, aber wegen
hoher Nachfrage als Scriptbeispiel aufgenommen. Dieses Script speichert zusätzlich das Geld der
Spieler, wenn sie sich registriert haben.

MfG
Recycler
Darkdevil, 02.05.2007, 14:40
Hab mal aus langeweile einen Zufallsgenerator gebaut, um z.b einem zufälligen Spieler etwas Geld zu
geben. zu geben.

Textdatey ist im Anhang
XCorE, 06.05.2007, 05:22
Also ich habe den script Geldschatz versucht zu installieren.Ich hab es sogar alleine geschaft es
zu installieren...xD...Leider kam natürlich wiedda eine Fehler meldung.Undswa das Ich hänge ein
bild ran

http://img504.imageshack.us/img504/9432/pawnoerrorjj9.th.png

Naja ich hoffe ihr könnt mirhelfen,weil das geld und so bekomm ich ja,aber da wird denn das was da
steht nicht angezeigt!


p.S:ich habe da noch ein anderes Problem,undswa hab ich ein /settime command und so,also das wenn
ich /settime und denn 0 oder so,das der denn die uhr auf 0 stellt...die sache ist nur,das das nicht
geht.Obwohl wirklich alles geklappt hat und keine fehlermeldung kam,steht dort wenn ich mich mit
/rcon login denn ja einloge immernoch unkouwn commend-.-Vielleicht wüsst ihr ja auch was das ist


MfG g_sTaRd&G:-)
Recycler, 06.05.2007, 12:44
Wieder so ein simples Problem...dir fehlt ein...
Code:
1
new str[256];

...setz das irgendwo in den Geldschatz-Code...

Zu deinem 2. Problem:

Code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
    if(strcmp(cmd, "/settime", true) == 0) {
        new tmp[256];
          tmp = strtok(cmdtext, idx);
        if(!strlen(tmp)) {
            SendClientMessage(playerid, COLOR_ADMIN, "Usage: /settime [time]");
            return 1;
            }
new time = strval(tmp);
if (time >= 0 && time <= 24)
{
SetWorldTime(time);
new msg[256];
format(msg, sizeof(msg), "Die Zeit wurde auf %d:00 Uhr gesetzt", time);
SendClientMessageToAll(COLOR_WHATEVER, msg);
}
   return 1;
    }


So sollte es funktionieren ;-)
XCorE, 06.05.2007, 13:10
Also erstmal danke für die Schnelle antwort,Allerdings fuktioniert das immernoch nicht :cry::cry::cry:

Siehe bild:

http://img155.imageshack.us/img155/330/pawnoerror2df8.th.png


Der erste Fehler ist von dem Geldschatz,Also ich hab das zwar rüber gemacht,aber jetzt kommt da
halt immer diese meldung

So und dei anderen sind denke ich mal von den /settime


Pls.Help me....ols
Recycler, 06.05.2007, 13:41
Nicht ein einziger Fehler hat etwas mit meinem Script zu tun...
Du hast nur 2 Farben nicht definiert, die musst du natürlich durch deine ersetzen :roll:
Und die nie genutzten Funktionen, was weiß ich was das ist, das ist deine Suppe, hat jedenfalls
nichts mit meinem Script zu tun.
Und den allerersten Fehler kann ich nicht sehen...

MfG
Recycler
Recycler, 06.05.2007, 13:45
ZitatLittlejohny49 hat folgendes geschrieben:
Hi Jungs

wie script man das ein team drogen geben kann ?


Die Frage gehört hier nicht hin...
*verschoben*

Und das Thema, was du danach auch noch erstellt hast, ist weg, also nicht wundern :roll:

MfG
Recycler

XCorE, 06.05.2007, 15:01
So ich hab alles hinbekommen,(sogar alleine...xD...die 2 warnungen sind von meinen /settime aber
geht trotzdem alles,so die sache ist jetzt ich will das mit den jail und unjail machen,und das
gehört ja auch zu den command text hin oder wie das heißt hab ich recht??so wenn ich das denn alles
versuch reinzuscripten und so zeigt der aber wieder nur fehlermeldungen an,und da weiß ich auch
einfach nicht was das denn ist,weil kann das sein das ihr bei den scripts auch irgentwie öfteres
was vergisst??


MfG g_sTaRd&G
Recycler, 06.05.2007, 15:35
Das ich etwas in meinen Scripten vergesse, ist eher unwahrscheinlich.
Viel eher liegt es in eurer Inkompetenz, es in euer Script einzufügen, und ein noch häufigeres
Problem ist, dass ihr mit euren Scripten nicht klarkommt, weil ihr sie irgendwo gedownloadet
habt... :evil:
Und falls dennoch kleine Rechtschreibfehler oder fehlende ; in den Scripten sind, dann solltet ihr
sowas selbst lösen und mich darauf hinweisen.

MfG
Recycler
XCorE, 06.05.2007, 17:25
Naja mir soll es eigentlich egal sein,allerdings hab ich jetzt ein Problem das nicht nur einfach ;
vergeseen ist oder so denke ich dochmal,wie gesagt,Ich habe keine ahnung wie ich die
wegbekomme,oder soll ich irgentwie was define??xD...naja ihr wüsst es bestimt besser^^

Hier das Bild mit dem Fehler:

http://img262.imageshack.us/img262/4486/pawnoerror3ez9.th.png


MfG g_sTaRd&G
Recycler, 06.05.2007, 17:34
Lösung der ersten beiden Fehler: Zeile 404-406 entfernen
Lösung der letzten beiden Fehler: Die beiden Funktionen "IsNumeric" und "strtok3" löschen, da du
sie ja offensichtlich nicht brauchst :roll:

(Wie gesagt, die Fehler haben nichts mit meinen Scripten zu tun)

MfG
Recycler
XCorE, 06.05.2007, 17:47
Danke,ich denke mal ich werde noch so einige probleme haben,aber ich habe auch schon gut dazugelernt

// Post 2

Mhh okey eigentlich war ich jaziemlich glücklich als der denn keine meldungen und so angezeigt
hat,aber
wenn ich denn mein server starte und im auto einsteige und wieder aussteige,passiert garnichts...Muss
ich vielleicht noch irgentwas reinbringen oder so??

Bitte nicht doppelt posten ;-)

MfG
Recycler
Tjong, 06.05.2007, 18:06
ich hab mal ne frage,
wie kann man es machen das sich spieler auf der karte mit einem befehl unsichtbar machen können?
XCorE, 06.05.2007, 18:20
Das ist richtig einfach das kann sogar ich,einfach im script die showplayermarkers von null auf
eins stellen aber bitte beantwortet auch meine frage
Recycler, 06.05.2007, 19:04
@Ytong

Genau wie WCK gesagt hat, allerdings nicht von 0 auf 1 sondern umgekehrt ;-) Außerdem muss man
beachten, das bei diesem Befehl alle unsichtbar werden, wenn du spezielle Spieler stealth machen
willst, musst du ihre Farben verändern.
("0x000000FF" <- RGBA (Red Green Blue Alpha) Code, einzusetzen in SetPlayerColor für Unsichtbarkeit
und "0xFFFFFF00" für Sichtbarkeit)

@WCK

Wie in der Beschreibung beschrieben steht, nur durch Zufall findest du eine Waffe. Nicht immer ;-)

Zitat.WCK.g_sTaRd&G hat folgendes geschrieben:
aber bitte beantwortet auch meine frage


Drängeln geht hier garnicht *böse*

MfG
Recycler
XCorE, 06.05.2007, 19:10
Sry ich wollte ja nicht drängen,wir haben aber noch einiges vor^^ach und das hab ich garnicht
bemerkt*kopfhau*xD


@Recycler,ist das ziemlich selten?macht der das nur bei bestimmten autos?gibt es eine begrenzte
anzahl das man sowas machen kann??
Florian, 09.05.2007, 13:58
Ich hab mal dieses Script ausprobier:
ZitatZitat:
if (strcmp(cmd, "/clear", true) == 0){
ClearText(playerid);
return 1;
}


Ich hab das so eingefügt
ZitatZitat:
//--------------------------------------------------------------------------------------------------
----

main()
{
print("\n----------------------------------");
print(" Willkommen bei ***Server/n");
print(" Coded By Florian");
print(" Have Fun");
print("----------------------------------\n");
}

//--------------------------------------------------------------------------------------------------
----

public ClearText(playerid)
{
for (new a=1;a<=10;a++)
{
SendClientMessage(playerid,0xFFFFFFFF,"\n");
}
return 1;
}
//--------------------------------------------------------------------------------------------------
----


Und hier
ZitatZitat:
// PROCESS OTHER COMMANDS


return 0;

}
if (strcmp(cmd, "/clear", true) == 0){
ClearText(playerid);
return 1;
}


Aber es kommt immer die Meldung
Code:
1
2
3
4
D:\GTA\GTASA~1\SAMP01~1\GAMEMO~1\src\RLS.pwn(255) : error 010: invalid function or declaration
D:\GTA\GTASA~1\SAMP01~1\GAMEMO~1\src\RLS.pwn(256) : error 021: symbol already defined: "ClearText"
D:\GTA\GTASA~1\SAMP01~1\GAMEMO~1\src\RLS.pwn(257) : error 010: invalid function or declaration
D:\GTA\GTASA~1\SAMP01~1\GAMEMO~1\src\RLS.pwn(294) : error 021: symbol already defined: "ClearText"


Bitte helft mir
Recycler, 09.05.2007, 15:12
@Florian

Code:
1
2
3
4
if (strcmp(cmd, "/clear", true) == 0){
ClearText(playerid);
return 1;
}


Wieso hast du den Code 2-mal? Das zweite Mal, nach dem return 0;, solltest du wegmachen ;-)
Und bitte befolgt die Fehleranweisungen, der Thread ist oben angehängt :-)

@WCK

ZitatWCKg_sTaRd&G hat folgendes geschrieben:

@Recycler,ist das ziemlich selten?macht der das nur bei bestimmten autos?gibt es eine begrenzte
anzahl das man sowas machen kann??


Nein, das funktioniert bei allen Autos. Eine Begrenzung gibt es nicht, und die Zufalls-Parameter
stehen im Code ;-)
Es wird eine Zahl zwischen von 0-50 ausgewählt, und von 0-9 gibt es eine Waffe. Das entspricht
einer 10% Chance :-)
Du kannst z.b. random(50) auf random(100) und dann bei case 10-49, 10-99 einsetzen. Dann ist es nur
noch eine 5% Chance :D
Oder du kannst noch für mehr cases Waffen einsetzen...da gibt es viele Möglichkeiten ;-)

MfG
Recycler
Florian, 10.05.2007, 17:34
Ich hab den Code nur einmal!
Recycler, 12.05.2007, 13:16
|| Update 12.05.2007 ||

-> PlayerName: Eine Funktion, die euch das ganze Codegewirr mit Spieler-Namen erhalten erspart.

MfG
Recycler
XCorE, 12.05.2007, 14:10
Also ein Problem hab ich irgentwie noch,undswa kann ich das meiste ja installieren und so,auser die
jail Funktion-.-aber egal.Ich nehm z.B mal die /lock Funktion,wenn ich die bei den Admin commands
hinmache,klappt alles.Wenn ich die Bei den normalen playercommands mache,geht das auch,aber wnn ich
denn im server gehe und das denn eingeben will steht dort unkouwn commend.Und das is nicht nur bei
der Lock funktion sondern bei allen-.-...bitte helft mir,ich kann jetzt schon seit den letzten
beitrag nicht mehr weitermachen


MfG g_sTaRd&G
Recycler, 12.05.2007, 17:39
Ja, wie gesagt, das liegt nicht an den hier bereit gestellten Scripten, das hängt alles mit deinem
Script zusammen.
Ich vermute, du hast es falsch in dein Script eingesetzt, oder bei der fehlt ein return 1; ...
Wenn du meine Scripte z.B. in ein Template einbauen würdest, hättest du nicht das geringste Problem.

MfG
Recycler
Florian, 12.05.2007, 22:08
ZitatZitat:
public OnPlayerCommandText(playerid, cmdtext[])
{
new string[256];
new playermoney;
new sendername[MAX_PLAYER_NAME];
new giveplayer[MAX_PLAYER_NAME];
new cmd[256];
new giveplayerid, moneys, idx;
new taxistr[256];

cmd = strtok(cmdtext, idx);

if(strcmp(cmd, "/help", true) == 0) {
SendPlayerFormattedText(playerid,"Dies ist ein Real Life (resp. Reality Server).",0);
SendPlayerFormattedText(playerid,"Tippe: /idea : Worum geht es - Hilfe.",0);
SendPlayerFormattedText(playerid,"Tippe: /info : Website, TS, Admins, Kontakt, etc.",0);
SendPlayerFormattedText(playerid,"Tippe: /regeln : Alle Regeln des Spieles werden erklärt.",0);
SendPlayerFormattedText(playerid,"Tippe: /cmd : Die noetigen Commandos, also die Funktionen.",0);
SendPlayerFormattedText(playerid,"Tippe: /tips : Das Leben ist hart-daher einige Tipps ;).", 0);
return 1;
}
if(strcmp(cmd, "/teleport", true) == 0) {
new Float:x,Float:y,Float:z;
GetPlayerPos(playerid,x,y,z);
if(z > 966) {
SendPlayerFormattedText(playerid,"Gehe zuerst weg von hier...",0);
}
else if(IsPlayerInAnyVehicle(playerid)) {
new car;
car = GetPlayerVehicleID(playerid);
SetVehiclePos(car,-2472.3281,2449.5691,17.3230);
SetVehicleZAngle(car,270.0000);
SetPlayerFacingAngle(playerid,270.0000);
SendPlayerFormattedText(playerid,"Du wurdest nach Bayside Marina teleportiert!",0);
SendPlayerFormattedText(playerid,"Falls du dich nicht siehst drücke Enter (vom
Fahrzeug absteigen)",0);
}
else {
SetPlayerPos(playerid,-2472.3281,2449.5691,17.3230);
SetPlayerFacingAngle(playerid,270.0000);
SetCameraBehindPlayer(playerid);
SendPlayerFormattedText(playerid,"Du wurdest nach Bayside Marina teleportiert!",0);
return 1;
}
if(strcmp(cmdtext, "/taxi", true) == 0) {
new pname[MAX_PLAYER_NAME];
GetPlayerName(playerid, pname, sizeof (pname));
format(taxistr, sizeof(taxistr), " %s braucht ein Taxi!", pname);
GameTextForAll(taxistr ,1000,1);
return 1;
}
else if(strcmp(cmdtext, "/intaxi", true) == 0) {
new pname[MAX_PLAYER_NAME];
GetPlayerName(playerid, pname, sizeof (pname));
format(taxistr, sizeof(taxistr), " %s braucht kein Taxi mehr!", pname);
GameTextForAll(taxistr ,1000,1);
return 1;
}
else if(strcmp(cmd, "/iamtaxi", true) == 0) {
new pname[MAX_PLAYER_NAME];
GetPlayerName(playerid, pname, sizeof (pname));
format(taxistr, sizeof(taxistr), " %s bietet sich als Taxifahrer an!", pname);
GameTextForAll(taxistr ,1000,1);
return 1;
}

}


Das Teleportieren klappt :)

Nur wenn ich /taxi eingebe kommt immer wieder Server: Unknown Command
Nico, 12.05.2007, 22:14
schau mal, du benutzt einmal cmd und einmal cmdtext... daran wirds liegen ;)
XCorE, 13.05.2007, 04:31
ZitatRecycler hat folgendes geschrieben:
Ja, wie gesagt, das liegt nicht an den hier bereit gestellten Scripten, das hängt alles mit deinem
Script zusammen.
Ich vermute, du hast es falsch in dein Script eingesetzt, oder bei der fehlt ein return 1; ...
Wenn du meine Scripte z.B. in ein Template einbauen würdest, hättest du nicht das geringste Problem.

MfG
Recycler



Ja also,nirgentwo hab ich ein return 1; vergessen.Und an meinem Script wird es eigentlich auch
nicht Liegen,weil wenn ich z.B einen ganz neuen mach und ich natürlich auch die #include dudb un
dutils und das andere und so,und ich denn nur den Login funktion habe,geht es auch nicht,ich hatte
die script fehler auf 5 glaub ich runterbekommen,aber denn musste ich ja die new logget wie wie das
hieß da einfügen so wie ich das machen musste,als ich das gemacht habe,hatte ich wieder 12
Fehlermeldungen*böse*Ich weiß nicht,ich versuche alles und so.Aber ich bin einfach zu dumm zum
scripten ey
Recycler, 13.05.2007, 10:47
ZitatWCK hat folgendes geschrieben:
Aber ich bin einfach zu dumm zum scripten ey


Ja, sieht so aus.
Wenn du die Probleme in den Griff bekommen willst, ist da ein Thread namens "Wie melde ich Fehler
richtig?"
Falls du vorgehen würdest wie darin beschrieben könnte man dir helfen.

MfG
Recycler
XCorE, 13.05.2007, 14:17
Du glaubst garnicht was ich schon alles versucht hab,aber naja is ja egal...hab es jetzt selber
hinbekommen...-.-
Florian, 14.05.2007, 17:50
ZitatZitat:
D:\GTA\GTASA~1\SAMP01~1\GAMEMO~1\src\RLS.pwn(341) : error 029: invalid expression, assumed zero
D:\GTA\GTASA~1\SAMP01~1\GAMEMO~1\src\RLS.pwn(341) : error 017: undefined symbol "Jail"
D:\GTA\GTASA~1\SAMP01~1\GAMEMO~1\src\RLS.pwn(343) : error 017: undefined symbol "jailid"
D:\GTA\GTASA~1\SAMP01~1\GAMEMO~1\src\RLS.pwn(344) : error 017: undefined symbol "jailid"
D:\GTA\GTASA~1\SAMP01~1\GAMEMO~1\src\RLS.pwn(347) : error 029: invalid expression, assumed zero
D:\GTA\GTASA~1\SAMP01~1\GAMEMO~1\src\RLS.pwn(347) : error 017: undefined symbol "Unjail"
D:\GTA\GTASA~1\SAMP01~1\GAMEMO~1\src\RLS.pwn(349) : error 017: undefined symbol "unjailid"
D:\GTA\GTASA~1\SAMP01~1\GAMEMO~1\src\RLS.pwn(350) : error 017: undefined symbol "unjailid"
D:\GTA\GTASA~1\SAMP01~1\GAMEMO~1\src\RLS.pwn(355) : warning 219: local variable
"giveplayerid"
shadows a variable at a preceding level
D:\GTA\GTASA~1\SAMP01~1\GAMEMO~1\src\RLS.pwn(359) : error 017: undefined symbol
"COLOR_ORANGE"
D:\GTA\GTASA~1\SAMP01~1\GAMEMO~1\src\RLS.pwn(365) : error 017: undefined symbol "Unjail"
D:\GTA\GTASA~1\SAMP01~1\GAMEMO~1\src\RLS.pwn(371) : warning 219: local variable
"giveplayerid"
shadows a variable at a preceding level
D:\GTA\GTASA~1\SAMP01~1\GAMEMO~1\src\RLS.pwn(375) : error 017: undefined symbol
"COLOR_ORANGE"
D:\GTA\GTASA~1\SAMP01~1\GAMEMO~1\src\RLS.pwn(381) : error 017: undefined symbol "Jail"



http://img508.imageshack.us/img508/3924/jailcmderrorsm8.th.jpg

Hab ich was falsch gemacht, hab den ganzen Block gleich nach
ZitatZitat:
public OnPlayerCommandText(playerid, cmdtext[])
{
new string[256];
new playermoney;
new sendername[MAX_PLAYER_NAME];
new giveplayer[MAX_PLAYER_NAME];
new cmd[256];
new giveplayerid, moneys, idx;
new taxistr[256];

cmd = strtok(cmdtext, idx);


Eingefügt!
Recycler, 14.05.2007, 17:54
Die 2 publics müssen außerhalb von OnPlayerCommandText gesetzt werden.

MfG
Recycler
Florian, 14.05.2007, 19:00
Danke schonmal nun kommt aber:

ZitatZitat:
D:\GTA\GTASA~1\SAMP01~1\GAMEMO~1\src\RLS.pwn(383) : warning 219: local variable
"giveplayerid"
shadows a variable at a preceding level
D:\GTA\GTASA~1\SAMP01~1\GAMEMO~1\src\RLS.pwn(399) : warning 219: local variable
"giveplayerid"
shadows a variable at a preceding level


http://img510.imageshack.us/img510/1729/jailcmderrorjn7.th.jpg


Hoffe ich mache nicht zu große Umstände....


------------------------------------------------------

DAS BANKSCRIPT (mal ohne das die Stände gespeichert bleiben)

ZitatZitat:
D:\GTA\GTASA~1\SAMP01~1\pawno\new.pwn(53) : warning 225: unreachable code
D:\GTA\GTASA~1\SAMP01~1\pawno\new.pwn(53) : error 017: undefined symbol "cmd"
D:\GTA\GTASA~1\SAMP01~1\pawno\new.pwn(57) : error 017: undefined symbol "cmdtext"
D:\GTA\GTASA~1\SAMP01~1\pawno\new.pwn(76) : error 017: undefined symbol "cmd"
D:\GTA\GTASA~1\SAMP01~1\pawno\new.pwn(80) : error 017: undefined symbol "cmdtext"
D:\GTA\GTASA~1\SAMP01~1\pawno\new.pwn(95) : error 017: undefined symbol "cmd"
D:\GTA\GTASA~1\SAMP01~1\pawno\new.pwn(96) : error 017: undefined symbol "string"
D:\GTA\GTASA~1\SAMP01~1\pawno\new.pwn(96) : error 017: undefined symbol "string"
D:\GTA\GTASA~1\SAMP01~1\pawno\new.pwn(96) : error 029: invalid expression, assumed zero
D:\GTA\GTASA~1\SAMP01~1\pawno\new.pwn(96) : fatal error 107: too many error messages on one line


ZitatZitat:
#include
<a_samp>
#include <core>
#include <float>
#include <dudb>
#include <dini>
#include <dutils>


#define COLOR_GREY 0xAFAFAFAA
#define COLOR_GREEN 0x33AA33AA
#define COLOR_RED 0xAA3333AA
#define COLOR_YELLOW 0xFFFF00AA
#define COLOR_WHITE 0xFFFFFFAA
#define COLOR_ORANGE 0xFF8C00AA

main()
{
print("\n----------------------------------");
print(" This is a blank GameModeScript");
print("----------------------------------\n");
}


new bank[MAX_PLAYERS];

public OnGameModeInit()
{
print("GameModeInit()");
SetGameModeText("Blank Script");
AddPlayerClass(0, 1958.3783, 1343.1572, 15.3746, 269.1425, 0, 0, 0, 0, 0, 0);
return 1;
}

public OnPlayerRequestClass(playerid, classid)
{
printf("OnPlayerRequestClass(%d, %d)", playerid, classid);
SetPlayerPos(playerid, 1958.3783, 1343.1572, 15.3746);
SetPlayerCameraPos(playerid, 1958.3783, 1343.1572, 15.3746);
SetPlayerCameraLookAt(playerid, 1958.3783, 1343.1572, 15.3746);
return 1;
}

public OnGameModeExit()
{
print("GameModeExit()");
return 1;
}

public OnPlayerConnect(playerid)
{
printf("OnPlayerConnect(%d)", playerid);
return 1;
if(strcmp(cmd, "/speichern", true) == 0 ) {
new tmp[256];
new moneys;
new string[256];
tmp = strtok(cmdtext, idx);

if(!strlen(tmp)) {
SendClientMessage(playerid, COLOR_WHITE, "Benutzung: /speichern [Geldbetrag]");
return 1;
}

//---
moneys = strval(tmp);
if(GetPlayerMoney(playerid) < moneys) {
moneys = GetPlayerMoney(playerid);
}
GivePlayerMoney(playerid, 0-moneys);
bank[playerid]+=moneys;
format(string, sizeof(string), "Du hast %d$ gespeichert, dein Kontostand lautet: %d$", moneys,
bank[playerid]);
SendClientMessage(playerid, COLOR_YELLOW, string);
return 1;
}

if(strcmp(cmd, "/abheben", true) == 0) {
new string[256]; //HIER???????
new moneys;
new tmp[256];
tmp = strtok(cmdtext, idx);
if(!strlen(tmp)) {
SendClientMessage(playerid, COLOR_WHITE, "Benutzung: /abheben [Geldbetrag]");
return 1;
}
moneys = strval(tmp);
if(moneys > bank[playerid])
moneys = bank[playerid];
GivePlayerMoney(playerid, moneys);
bank[playerid] -= moneys;
format(string, sizeof(string), "Du hast %d$ abgehoben, dein Kontostand lautet: %d$", moneys,
bank[playerid]);
SendClientMessage(playerid, COLOR_YELLOW, string);
return 1;
}

if(strcmp(cmd, "/konto", true) == 0) {
format(string, sizeof(string), "Dein Kontostand lautet: %d$", bank[playerid]);
SendClientMessage(playerid, COLOR_YELLOW, string);
return 1;
}



}

public OnPlayerDisconnect(playerid)
{
printf("OnPlayerDisconnect(%d)", playerid);
return 1;
}


Recycler, 14.05.2007, 19:34
@Problem 1:
Lösche die Zeilen 383 und 399

@Problem 2:
Wieso die Commands in OnPlayerConnect? Alle, sowie die anderen auch, in OnPlayerCommandText ;-)

MfG
Recycler
Recycler, 17.05.2007, 11:12
|| Update 17.05.2007 ||

-> VehicleModel: Eine Funktion, mit der ihr euer Script-Verzeichnis um eine Funktion
"GetVehicleModel(vehicleid)" bereichert. Sie gibt die ModelID des Vehicles mit der entsprechenden
VehicleID zurück. Damit die Funktion funktioniert, müsst ihr eure "AddStaticVehicle" Zeilen in ein
"AddStaticVehicle2" verändern.

MfG
Recycler
Bierbär, 02.06.2007, 09:18
Hi leute,

kann einer von euch mir bei meinem script helfen?.

würde gernen auf meinen script folgendes installiere

PayDay
Lock[1].Unlock
Tanken
SendAdminText
AdminArea1
Freeze-Unfreeze
Speedometer
Taxi++

weiß aber nicht so richtig wie und wo,
auf meinem script hab ich bissher nur autos und spawns verändert

Mfg Bierbär

Die Scrite stammen alle von hier,werde dann auch eure seite und namen erwähnen
Zockerweibchen, 02.06.2007, 22:20
Nabend

ich würde gerne wissen wie ich es anstelle das ich spawns nur für als admin eingelogte mache,also
das mann schon bei der charakter auswahl nich weiter kommt als normaler user,
und bereiche wo nur admins hin können!


Bittedanke schön =)

vllt wurd das hier schon gesagt hab suche benutzt nichts gefunden
wenns das geben sollte sry^^
Recycler, 05.06.2007, 13:59
In 0.1b ist das nicht möglich, es werden automatisch alle Spawns angezeigt. Vielleicht hat sich das
in der RC 0.2 Version geändert ;-)

MfG
Recycler
Zockerweibchen, 05.06.2007, 16:43
hmm

ich meinte

Das mann einen Spawn macht denn mann nur benutzen kann ,wenn mann als Admin eingeloggt ist.
Angezeigt werden können se ja ,nur nicht admin spieler, sollen diese spawnclass nich nutzen können.

ist wahrscheinlich nich alzu viel aufwand hab ich schon auf vielen servern gesehn^^

aber kp

trotzdem danke
Recycler, 05.06.2007, 19:30
Hast du eine Variable, in der das Team gespeichert wird?
Wenn ja, checke in OnPlayerSpawn ob der Spieler im Adminteam ist, und wenn er das ist und sich
nicht eingeloggt hat, Kill oder Kick.

MfG
Recycler
Recycler, 05.06.2007, 20:58
|| Update 05.06.2007 ||

-> PlayerIP & PlayerPing: 2 Funktionen, die euch die IP oder den Ping eines Spielers zurückgeben.

ONLY FOR 0.2

MfG
Recycler
Rafioso, 05.06.2007, 21:35
Was natürlich nur für den Administrator zugänglich sein sollte ;)

Also Recycler, machs mal bitte Admin tauglich ;)

=) =) :D :D =) =)
Recycler, 06.06.2007, 13:20
Ein einfaches if-statement mit IsPlayerAdmin kann ja wohl jeder selber machen.
Außerdem sind das nur die Funktionen, keine Ausführungen wie z.B. in einem Command.

MfG
Recycler
Rafioso, 06.06.2007, 13:42
ZitatRecycler hat folgendes geschrieben:
Ein einfaches if-statement mit IsPlayerAdmin kann ja wohl jeder selber machen.


Du weisst doch wie die meisten sind ;)
*wayne*
=) =) :D :D =) =)
Recycler, 06.06.2007, 20:54
Demnächst werde ich alle Scripte auf Version 0.2 upgraden - allerdings werde ich die 0.1 Versionen
entfernen, da das sonst zu unübersichtlich wird.

MfG
Recycler
Prinz Valium!, 06.06.2007, 20:56
Ich hab noch einen Vorschlag, das wir hier im FOrum irgendwo eine Seite einrichten, wo man alle
Scripte nochmal mit einer Kurzbeschreibung hat, da reicht eig. auch ein thread, der gehsclossen
wird und immer wieder geupdatet wird.
Recycler, 06.06.2007, 20:57
So einen gibt es schon :D Schau nochmal genau hin :-)

MfG
Recycler
Rafioso, 06.06.2007, 20:59
Ganz genau, solch einen gibt es schon.

Aber ich würde es besser finden, wenn es 2 solcher Threads gibt.
Einmal für v1 und der andere für v2.

=) =) :D :D =) =)
Prinz Valium!, 06.06.2007, 21:01
Jo, hab ihn gard gesehen, und das von Rafioso, gute Idee, damit auch die für 0.1 nicht verloren
gehen, bleibt der Thread (wird natürlich umbenannt) und die für v2 kriegenen einen nuene Thread.
Recycler, 06.06.2007, 21:01
Ich weiß nicht ob es sinnvoll wäre, einen geteilten Thread zu machen.
In ca. 1-2 Monaten ist 0.2 ganz erschienen, dann brauch sowieso keiner mehr 0.1 Scripte ;-)
Ich würde dann die jetzigen Scripte in 0.2 umformen, damit sie wieder genutzt werden können.

MfG
Recycler
Prinz Valium!, 06.06.2007, 21:02
ZitatRecycler hat folgendes geschrieben:
Ich weiß nicht ob es sinnvoll wäre, einen geteilten Thread zu machen.
In ca. 1-2 Monaten ist 0.2 ganz erschienen, dann brauch sowieso keiner mehr 0.1 Scripte ;-)

MfG
Recycler


Dann kan man den Thread ja löschen (hast du meinen Post dadrüber schon gesehen?)
Recycler, 06.06.2007, 21:04
Ja OK, machen wir es so :-)
Bin jetzt erstmal weg, fange morgen an ;-)

MfG
Recycler
Florian, 10.06.2007, 18:41
Ich hab ne Frage zu dem PlayerName.
Wie und Wo stelle ich die Bedingung auf?
if (PlayerName == "Florian"){
//bla;
return 1;
}
geht nicht?
und wohin onplayercommandtext? ne, oder?
Recycler, 10.06.2007, 18:59
Code:
1
2
3
4
if (strcmp(PlayerName(playerid), "Florian", true) == 0)
{
//bla
}


Strings immer mit "strcmp" vergleichen :-)
Wohin du das machst, ist egal. Das Beispiel oben zeigt lediglich eine Bedingung, wenn der
Spielername von "playerid" gleich "Florian" ist.

MfG
Recycler
Sascha41857, 14.06.2007, 14:52
Kann mir einer das Reallife script geben?Das script REAL_Fixed und die anderen will der nicht
compilieren oder wie das heißt das steht nähmlich
da:C:\DOKUME~1\BRIGIT~1.000\Desktop\REAL_F~1.PWN(10) : fatal error 100: cannot read from file:
"dutils"

Compilation aborted.Pawn compiler 3.0.3367 Copyright (c) 1997-2005, ITB CompuPhase


1 Error.
Tjong, 14.06.2007, 16:13
du brauchst noch eine bzw. ich denke mal bei dem script 3 dateien:
Dini,DUDB und dutils die müssen dann in deinen pawno/include ordner rein
die dateien müssten heir eigentlich irgendwo zu finden sein
Sascha41857, 15.06.2007, 22:49
Wo gibts denn die dateien?
Rafioso, 15.06.2007, 23:01
Hier

Link + Beschreibung :)

=) =) :D :D =) =)
Sascha41857, 15.06.2007, 23:23
So hab alles gemacht und will Real_fixed zur .amx datei machen nur das klappt nicht der compilirer
oder wie das heißt bleibt leer.Ich hab jetzt auch 30min gewartet es passiert nichts die amx. datei
wird zwar erstellt hat aber 0kb.


KÖNNT IHR MIR MAL HELFEN?!*böse*
Sanandre2, 23.06.2007, 03:56
soory wenn ich jetzt falsch bin aber: kann mir jemand ein Script schreiben das es ermöglicht
objekte im Spiel zu bewegen aber so das anderer die auf dem Server sind das auch sehen!

Falls sowas schon vorhanden ist bitte mir geben ^^ ist sehr dringend^^

Graf, 23.07.2007, 20:48
Ich wollte auch noch das Bankscipt einfügen aber da kommt immer die Meldung:
Code:

1
C:\DOKUME~1\Besitzer\Desktop\SAMP02~1\GAMEMO~1\bank.pwn(2083) : error 090: public functions may not 
return arrays (symbol "PlayerName")
Kann mir jemand bitte sagen wie ich das rausbekomme?
Recycler, 23.07.2007, 21:45
Die Scriptbeispiele sind noch nicht auf 0.2 geupdatet, werde ich aber bald machen.
Ersetz einfach das "public" durch ein "stock" ;-)

MfG
Recycler
Rafioso, 02.08.2007, 02:50
ZitatRecycler hat folgendes geschrieben:
Die Scriptbeispiele sind noch nicht auf 0.2 geupdatet, werde ich aber bald machen.

Hab angefangen....aber jetzt geh ich zZz.

ZitatRecycler hat folgendes geschrieben:

Ersetz einfach das "public" durch ein "stock" ;-)

MfG
Recycler

Geht auch mit puplic ;)

|| UPDATE 02.08.2007 ||
|| Teil1/4: Codes von v1 kombatiebel zu v2 machen. ||

Teils Fehler von den vorhandenen Codes beseitigt, teils auch neu geschrieben.

=) =) :D :D =) =)
Rafioso, 02.08.2007, 02:51
|| UPDATE 02.08.2007 ||
|| Teil2/4: Codes von v1 kombatiebel zu v2 machen. ||

=) =) :D :D =) =)
Recycler, 02.08.2007, 13:02
Ah, erstmal danke das du damit schon angefangen hast, habe momentan genug zu tun.

ZitatRafioso hat folgendes geschrieben:

Teils Fehler von den vorhandenen Codes beseitigt, teils auch neu geschrieben.


Ich würde mich aber sehr darüber freuen, wenn du sie mir nennen könntest, damit ich weiß was ich
falsch gemacht habe :/

ZitatRafioso hat folgendes geschrieben:

Geht auch mit puplic ;)


Reichlich unpraktisch, das nimmt eine Menge Platz weg. Und gerade du sagtest ja, das es das A und O
beim Coden sei so etwas zu verhindern.

ZitatRafioso hat folgendes geschrieben:

Desweiteren spart man Zeichen, Zeilen und somit Speicher, was beim Programmieren das A und O ist!


*anbet*

MfG
Recycler


Recycler, 02.08.2007, 13:15
|| Update 2.8.2007 ||
|| Scripte 0.2 kompatibel machen ||

Recycler, 02.08.2007, 13:17
|| Update 2.8.2007 ||
|| Scripte 0.2 kompatibel machen ||

Recycler, 02.08.2007, 13:18
|| Update 2.8.2007 ||
|| Scripte 0.2 kompatibel machen ||

So, alles wurde konvertiert. Viel Spaß!
Rafioso, 02.08.2007, 14:10
ZitatRecycler hat folgendes geschrieben:
Ah, erstmal danke das du damit schon angefangen hast, habe momentan genug zu tun.


Bitte :) Und Danke, dass es vollendet hast.

ZitatRecycler hat folgendes geschrieben:

Ich würde mich aber sehr darüber freuen, wenn du sie mir nennen könntest, damit ich weiß was ich
falsch gemacht habe :/


Nunja, du hast halt nicht alle Variablen und Arrays hinzugefügt, oder die Farben nicht definiert.
Aber das war ja nicht so schlimm;)
Aber, beim testen vom Freeze/Unfreeze-Script ist mir bei deiner Version aufgefallen, dass man
einfach /freeze oder /unfreeze schreiben kann und der Spieler mit der ID 0 wird sofort
eingefrohren/aufgetaut.
Aber ist ja verbessert:)
Des Weiteren habe ich ein paar unnötige Puplics entfernt.
Ich glaub das war beim Jail....oder MoneyArea.

Des Weiteren sind diese nun auch vom Aufbau in Ordnung.
Also folgendes wird nichtmehr angezeigt:

Code:
1
warning 217: loose indentation



ZitatRecycler hat folgendes geschrieben:

Reichlich unpraktisch, das nimmt eine Menge Platz weg. Und gerade du sagtest ja, das es das A und O
beim Coden sei so etwas zu verhindern.


Ups, daran habe ich heute früh um die Uhrzeit gar nichtmehr gedacht. *heilig*

=) =) :D :D =) =)
GTAvision.com :: Forumregeln :: FAQ :: Impressum :: Kontakt :: RDRvision.com :: LANOIREvision.com :: MaxPayneVision.com
NetVisionWork.NET
.: © 2006-2014 by GTAvision.com :.

Rockstar GamesTake-Two Interactive Deutschland

Free Grand Theft Auto Downloads