Es kommt, nur sammelst du es sofort wieder auf, weil du ja nach dem Tod noch ein wenig da liegst
Beiträge von KeksOfDeath
-
-
Ich frag mich nur, warum die da nochn Loop reinhaust...
Wenn 20 Spieler aufm Server sind, schreibt er ja jeden Befehl gleich 20 mal da rein -
Dann hatte unser Gamer schon halbwegs Recht
//ganz nach oben:
new auddo[MAX_PLAYERS];
//OnPlayerDisconnect:
if(auddo[playerid]!=-1) {
DestroyVehicle(auddo[playerid]);}
//OnPlayerConnect:
auddo[playerid]=-1;
//OnPlayerCommandText:
if(strcmp(cmdtext,"/dv",true)==0) {
if(auddo[playerid]!=-1) {
DestroyVehicle(auddo[playerid]); }
else { SendClientMessage(playerid,FARBE,"Du hast kein Fahrzeug bla bla"); }
return 1;
}
//in den befehl zum auto spawnen:
if(auddo[playerid]!=-1) return SendClientMessage(playerid,FARBE,"Du hast bereits ein Fahrzeug, du musst mit /dv kaputt bla bla"); -
@ walker: Achtung, Schleimspur
@ Topic: Firefox FTW! -
public ScanVehicleHealth(){
new Float:HP, v;
for(new playerid=0;playerid<MAX_PLAYERS;playerid++)
{
if(DMZone[playerid] == false && IsPlayerInAnyVehicle(playerid))
{
v=GetPlayerVehicleID(playerid);
GetVehicleHealth(v,Float:HP);
if(Float:HP < 250)
{
SetVehicleHealth(v,900);
}
}
}
} -
Willst du, dass man jedes Auto mit /dv löschen kann?
if(strcmp(cmdtext,"/dv",true)==0) {
DestroyVehicle(GetPlayerVehicleID(playerid));
return 1;
}
Oder nur das, was man selbst gespawnt hat? Und wenn ja, wie viele soll man spawnen können? Und sollen die anderen dann automatisch wieder gelöscht werden, wenn man zu viele spawnt?
Das müsste man vorher halt wissen^^ -
Falsch:
forward bleistift(playerid,autoid);
public bleistift(playerid) {
//...
}Richtig:
forward bleistift(playerid,autoid);
public bleistift(playerid,autoid) {
//...
}So in etwa muss dein Fehler aussehen
-
-
-
public OnPlayerStateChange(playerid, newstate, oldstate)
{
if(newstate == TEAM_GROVE)
{
new
newcar = GetPlayerVehicleID(playerid);
if(IstEinGroveCar(newcar))
{
if(gTeam[playerid] != 1)
{
RemovePlayerFromVehicle(playerid);
SendClientMessage(playerid, grün, " Du gehörst nicht zur Grove-Street!");
}
}
}
return 1;
}
Zum IstEinGrooveCar:
stock IstEinGrooveCar(carid) {
new mids[]={ 125,126,127,128 }, mid=GetVehicleModel(carid);//diese modelids (new mids[]= {...) sind AUSGEDACHT, dort trägst du natürlich die modelids der Fahrzeug ein
for(new i, j=sizeof(mids); i<j; i++) {
if(mid==mids[i]) { return 1; }}
return 0;
} -
OnPlayerExitVehcile
-
#define HAUS_NAME "Unbekannt"
if(strcmp(HouseInfo[h][hName],HAUS_NAME,true)==0) return SendClientMessage(playerid, COLOR_WHITE, "Dieses Haus gehört keinen Spieler!"); -
Das Passwort ist bei ihm aber in hash abgespeichert
if(udb_hash(params)==strval(dini_Get(pFile,"pass")))
Schon ist der Fehler behoben -
Symbole:
//Disconnect Symbol:
//IOnPlayerDisconnect:
SendDeathMessage(playerid,201,INVALID_PLAYER_ID);
//Connect Symbol:
//OnPlayerConnect:
SendDeathMessage(playerid,200,INVALID_PLYER_ID); -
Das mit in den /veh Befehl:
(Ich weiß nicht, wie die Variablen bei dir definiert sind, also nicht über "undefinited sysmbol" wudnern, das msust du selbst umändern)
//in den /veh Befehl:
new file:gla=fopen("autoding.txt",io_append), s[100];
format(s,sizeof(s),"%d %f %f %f %f %d %d\r\n< ",modelid,x,y,z,z_angle,farbe1,farbe2);//hier halt deine sachen eintragen, weiß ja nciht, wie du sie benannt hast
fwrite(gla,s);
fclose(gla);
//OnGameModeInit:
new file:gla=fopen("autoding.txt",io_read), s[256], i, j, mid, Float:x, Float:y, Float:z, Float:za, f1, gnu;
while(fread(gla,s)) {
for(j=strlen(s); i<j; i++) {
if(i==0) {
mid=strval(s[0]); }
if(s[i]==' ') {
i++;
gnu++;
switch(gnu) {
case 0: mid=strval(s[i]);
case 1: x=floatstr(s[i]);
case 2: y=floatstr(s[i]);
case 3: z=floatstr(s[i]);
case 4: za=floatstr(s[i]);
case 5: f1=strval(s[i]);
case 6: AddStaticVehicle(mid,x,y,z,za,f1,strval(s[i]));
}}
else if(s[i]=='<') { gnu=-1; }
}}
fclose(gla);
Es würde/müsste zwar so gehen, es ist aber resourcenschonender, die Autos manuell einzutragen
//EDIT: Einen Fehler gefunden - verbessert -
Hast du neu compiled, neue amx Datei in den richtigen Ordner eingefügt, den Server restarted?
-
if(strcmp(cmdtext,"/veh",true,4) == 0)
{
if(Adminlevel[playerid] < 6)
{
SendClientMessage(playerid,COLOR_GRAD2,"Du bist kein Hauptadmin!");
return 1;
}
if(!strlen(strget(cmdtext,3)))
{
SendClientMessage(playerid,COLOR_YELLOW,"Verwendung: /veh [carid] [farbe1] [farbe2]");
return 1;
}
new car;
car = strval(strget(cmdtext,1));
new color1;
new string[70];
color1 = strval(strget(cmdtext,2));
new color2;
color2 = strval(strget(cmdtext,3));
new Float:X,Float:Y,Float:Z;
GetPlayerPos(playerid, X,Y,Z);
new carid = CreateVehicle(car, X,Y,Z, 0.0, color1, color2, 60000);
CreatedCars[CreatedCar] = carid;
CreatedCar ++;
format(string, sizeof(string), "Fahrzeug %d wurde gespawned.", carid);
SendClientMessage(playerid, COLOR_GREY, string);
return 1;
} -
Dann mach beim Spawn:
if(gTeam[playerid]==TEAM_ZOMBIES) { //sofern du gTeam verwendest...
SetPlayerHealth(playerid,500); }
Und 100 hätte man ja eh, das brauchst bei den Cops nicht zu setzen -
Hast du die Skins überhaupt eingefügt?
AddPlayerClass -
Du meinst sozusagen, nur jemand, der z.B. "Klaus" heißt, darf den Skin nummer 47 bekommen, oder er bekommt ihn automatisch beim spawnen?