Wie hast du denn Interiors1 deklariert ?
mfg. ![]()
Wie hast du denn Interiors1 deklariert ?
mfg. ![]()
Falschen user zietiert
Nein, er ging auch davon aus, dass das ne Include Datei ist ![]()
Dem Threadersteller ist nicht geholfen, wenn ihr ihn nach falschen Sachen suchen lasst ![]()
So lösche aus deiner server.cfg unter Filterscripts einfach "string".
Und mache das NICHT !!!!:
mach mal :#include <string>
Ich weiß nicht wo du dieses Include her hast ( (c) 2005
) das was in diesem Script steht sind inzwischen Standart Funktionen, die in der a_samp Include stehen ![]()
mfg. ![]()
Nur die3?
Dann suche mal dein script nach string.amx ab.
Das ist keine Include Datei, sondern ein Filterscript ![]()
Da steht doch, dass er dein/das Filterscript nicht laden konnte, die Frage ist jetzt, wieso konnte er das nicht laden ![]()
Lösche das mal aus der server.cfg und probiere es nochmal oder poste mal den Code von dem Filterscript ![]()
mfg. ![]()
ich wollte das gern haben das ich nix eingeben drücken etc. muss einfach nur das der infi 10 kmh schneller ist
Kannst du doch einfach so:
//unter OnPlayerEnterVehicle
if(GetVehicleModel(vehicleid) == 411)
{
SetVehicleSpeedMax(vehicleid,400);//Falls er noch schneller fahren soll oder langsam einfach die 400 ändern
}
mfg. ![]()
Also wie ich sagte ich hätte gern dass der infi anstatt 200 max 210 fährt leider kp wie
Schonmal die SuFu genutzt ? ![]()
Da: [ INCLUDE ] SpeedMax - Maximale Geschwindigkeit deines Fahrzeuges einstellen!
mfg. ![]()
Nicht direkt dafür, aber dieses hier ist dafür geeignet: http://wiki.sa-mp.com/wiki/OnPlayerKeyStateChange
Jedoch bin ich gerade am überlegen, in welchen Abständen du das mit dem Schuss messen möchtest, denn er kann ja theoretisch 5x schießen dann 2sek pause machen un wieder 5x schießen, bis die munni leer ist ![]()
Muss man sich halt überlegen was man genau will ![]()
mfg. ![]()
Schön gemacht ! Da gibst es nichts zu meckern ![]()
mfg. ![]()
Alles anzeigen
//Bei OnPlayerCommand
if(strcmp("/spawnsave",cmdtext,true,10)==0)
{
new Float:x,Float:y,Float:z;
GetPlayerPos(playerid,x,y,z);
mysql_SetFloat("accounts", "Spawnx", Float:x, "Name", SpielerInfo[playerid][pName]);
mysql_SetFloat("accounts", "Spawny", Float:y, "Name", SpielerInfo[playerid][pName]);
mysql_SetFloat("accounts", "Spawnz", Float:z, "Name", SpielerInfo[playerid][pName]);
SendClientMessage(playerid,hellgruen,"[Server]: Du spawnst absofort immer hier!");
return 1;
}
Da liegt der Fehler, schreibe es so:
//Bei OnPlayerCommand
if(strcmp("/spawnsave",cmdtext,true,10)==0)
{
new Float:x,Float:y,Float:z;
GetPlayerPos(playerid,x,y,z);
mysql_SetFloat("accounts", "Spawnx",x, "Name", SpielerInfo[playerid][pName]);
mysql_SetFloat("accounts", "Spawny",y, "Name", SpielerInfo[playerid][pName]);
mysql_SetFloat("accounts", "Spawnz",z, "Name", SpielerInfo[playerid][pName]);
SendClientMessage(playerid,hellgruen,"[Server]: Du spawnst absofort immer hier!");
return 1;
}
mfg. ![]()
What the fuck? Wie setzt du denn bitteschön die Klammern?!
Wenn nach einer if Abfrage nur ein Statement/Befehl kommt, braucht man keine Klammern.
Braucht man nicht, kann man aber trotzdem setzen um den "Script-Anfängern" zu verdeutlichen, dass das da ne Abfrage ist und vielleicht will er da nochwas einfügen, was weiß ich ![]()
mfg. ![]()
Dann machen wir mal das mit der Munition
Nicht ganz korrekt, so ist es richtig:
if(newkeys == KEY_FIRE)
{
new vid = GetPlayerVehicleID(playerid);
if(GetVehicleModel(vid) == 432 && GetPlayerState(playerid) == PLAYER_STATE_DRIVER)
{
if(Munition[vid] == 0) return 0;
Munition[vid] -= 1;
new str[64];
format(str, 64,"%d/100 Munition",Munition[vid]);
TextDrawSetString(PanzerMuntion[playerid],str);
return 1;
}
}
Konnte man die Taste nicht irgendwie sperren?
Probiere es doch mal mit return 0; ![]()
Wenn das nicht geht, kannst du dich ja an [GP]Master wenden, der das ja anscheinend in seinem Script hat ![]()
mfg. ![]()
Du musst es so schreiben:
ShowPlayerDialog(playerid,1,DIALOG_STYLE_LIST,"Menü","Wein\nBier\nSchnaps","Kaufen","Abbrechen");
mfg. ![]()
Warum sollte er dafür einen unnötigen Timer laufen, wenn er die Zahl einfach im OnPlayerKeyStateChange erneuern kann, sobald der Panzer geschossen hat/schießt
Noch besser, daran habe ich gar nicht gedacht ![]()
Wie sieht das nur der, der im Panzer sitzt?
CreatePlayerTextDraw
und dann halt einfach mit der Show Funktion sobald man im Panzer sitzt dem Spieler anzeigen lassen ![]()
Dieses Feature ist aufjedenfall möglich.
Dies habe ich schon in der 0.3c Version auf einem Server entdeckt.
Cooles Feature!
MfG
Wärst du so freundlich uns mal den Abschnitt aus deinem Script zu posten ? ![]()
mfg. ![]()
ich denk ma
aktuelle muni/Maxmuni
oder so
Ja, du denkst, vielleicht will er auch die Maximale Anzahl an Panzern auf dem Server anzeigen lassen, man weiß es nicht ![]()
Ich will das man die Munition irgendwie sieht,
sry war etwas ungenau
@Saiwn okay, gut gedacht ![]()
So:
new str[64];
format(str, 64,"%d/100 Munition",munition[playerid]);
TextDrawSetString(DeinTextDrawName,str);
Das musst du in einen Callback schreiben, den du mit einem Timer aufrufen lässt ![]()
mfg. ![]()
Noch eine Frage wie kann ich das mit einem Textdraw ausgeben
habe noch so meine Probleme mit Textdraws...
Was willst du denn mit dem TextDraw Anzeigen lassen ![]()
Mhm, ja dann schreibe es mal nur so:
forward Timer(playerid);
public Timer(playerid)
{
new PlayerText3D:playertextid;
for(new i; i<100; i++)
{
if(GetPlayerWantedLevel(i) == 0) continue;
DeletePlayer3DTextLabel(playerid, playertextid);
new Float:X, Float:Y, Float:Z;
GetPlayerPos(i, X, Y, Z);
new str[128];
format(str, 128,"Dieser Spieler hat %d Wanteds !",GetPlayerWantedLevel(i));
playertextid = CreatePlayer3DTextLabel(playerid,str,0x008080FF,X,Y,Z+2,40.0);
}
return 1;
}
mfg. ![]()
Könntest mal sowas probieren:
//oben im Script
new munition[MAX_PLAYERS];
//Halt dem Spieler irgentwo munition geben
//unter OnPlayerKeyStateChange
if(newkeys == KEY_FIRE)
{
if(GetVehicleModel(GetPlayerVehicleID(playerid)) == 432 && GetPlayerState(playerid) == PLAYER_STATE_DRIVER)
{
if(munition[playerid] == 0) return 0;
munition[playerid] -= 1;
return 1;
}
}
Bin mir nur nicht sicher, ob das mit dem return 0; funktioniert, könnte aber klappen ![]()
Wenn nicht, kannste ja auch machen, dass er aus dem Fahrzeug geschmissen wird oder so...
mfg. ![]()
[if(playertextid >= 0) { DeletePlayer3DTextLabel(playerid, playertextid); }
GetPlayerPos(i, X, Y, Z+2);
Oh, ja ups, probiere es mal so:
forward Timer(playerid);
public Timer(playerid)
{
new PlayerText3D:playertextid;
for(new i; i<100; i++)
{
if(GetPlayerWantedLevel(i) == 0) continue;
if(strlen(playertextid) > 0) { DeletePlayer3DTextLabel(playerid, playertextid); }
new Float:X, Float:Y, Float:Z;
GetPlayerPos(i, X, Y, Z);
new str[128];
format(str, 128,"Dieser Spieler hat %d Wanteds !",GetPlayerWantedLevel(i));
playertextid = CreatePlayer3DTextLabel(playerid,str,0x008080FF,X,Y,Z+2,40.0);
}
return 1;
}
mfg. ![]()
Wenn du mir noch die Zeile verraten würdest ![]()