es fehlt die Datei "dini.inc" in deinem /pawno/include/ Verzeichnis
Beiträge von Simon
-
-
Zeile 43 aus deinem Inlucde Ocmd!
-
ja, mit ein bisschen überlegung kriegst du das bestimmt hin, ansonsten frag einfach
-
eine enum mit den benötigten infos, wie model,preis, etc.
Dann eine neue Variable, in der Alle Fahrzeuge mit entsprechener Information festgelegt werden.
Nun benutzt du eine 2. Variable oder GetPVar und erhöst oder senkst sie, sobald er auf "zurück" oder "vor klickt.
Du musst natürlich die Textdraws machen.
Dabei ist zu beachten das wenn er zurück geht und der Wert gesenkt wird und dabei unter 0 geht, dieser automatisch auf den höchsten Wert (sizeof VARIABLE) gesetzt wird.
Dasselbe wenn er vor geht und er höher ist als die maximale Anzahl von VARIABLE dann auf 0 setzen.
Nun gehst du einfach die schleife durch und machst:if(i != VARIABLE) bzw if(i != GetPVarInt(playerid, "VARIABLE") continue;
//code.Eig ganz einfach
-
Sieht ganz nach einem Klammerfehler aus
-
jup ich hatte das schon
-
Er will aber doch den Deckel vom Tank?
-
Habs genau andersherum verstanden okay so ist natürlich logischer
-
ja das ist kla..
Die frage ist ob c, also die Basis 3mal so groß ist wie beide Schenkel zusammen also a+b oder ob c 3 mal so groß ist wie ein schnekel also a bzw b
-
a + b + c = 28
b = a also a + a + c = 28 oder auch 2a + c = 28
c = 3a weil ja 3 mal so lang wie ein schenkel also
2a + 3a = 28
wenn a = 5,6 ist was wir da rauskommen und c = 3a ist, so ist c = 5,6 x 3 und das wären 16,8
Probe:
16,8 + 5,6 + 5,6 = 28 >> kommt also hin
-
2a + 3a = 28
5a = 28 | :5
a = 5,6
Ich hoffe ich habs richtig verstanden
-
Seit dem ich mein Script komplett auf MySQL umgestellt habe und es auf 0.3e geupdated habe, bugt mein Spawn.
ich habe eigentlich nichts grundlegendes daran geändert.Man wird irgentwo hingeportet (in meinem Fall nähe LS Beach) und dann mit einer hohen geschwindigkeit nach oben gezogen.
Mein Spawn ist etwa so aufgebaut:p_ChangeSpawnInfo(playerid);
SpawnPlayer(playerid);
stock p_ChangeSpawnInfo(playerid)
{
new day,month,year,second,minute,hour, spSkin;
if(firstspawn[playerid])
{
new bool:relogtimer = false;
getdate(year,month,day);
gettime(hour,minute,second);
if(month == Spieler[playerid][LastMonth] && day == Spieler[playerid][LastDay] && year == Spieler[playerid][LastYear])
{
if(hour-Spieler[playerid][LastHour] == 0)
{
if(minute - Spieler[playerid][LastMinute] <= 15 || Spieler[playerid][LastMinute] == minute) relogtimer = true;
}
else if(hour-Spieler[playerid][LastHour] == 1)
{
if(Spieler[playerid][LastMinute] > 45)
{
if(minute-Spieler[playerid][LastMinute] >= -59 && minute-Spieler[playerid][LastMinute] <= -45) relogtimer = true;
}
}
}
else if(month == Spieler[playerid][LastMonth] && year == Spieler[playerid][LastYear])
{
if(CheckDateDifference(Spieler[playerid][LastDay],Spieler[playerid][LastMonth],Spieler[playerid][LastYear],day,month,year,0) == 1)
{
if(Spieler[playerid][LastHour] == 23 && hour == 0 && Spieler[playerid][LastMinute] > 45 && minute < 15)
{
if(minute-Spieler[playerid][LastMinute] >= -59 && minute-Spieler[playerid][LastMinute] <= -45) relogtimer = true;
}
}
}
if(relogtimer)
{
new bool:needpara = false;
if(Spieler[playerid][Duty] == 1) spSkin = Spieler[playerid][Fraktionsskin];
else if(Spieler[playerid][Duty] == 2 && Spieler[playerid][Ziviljob] > 0) spSkin = Nebenjobs[Spieler[playerid][Ziviljob]][jSkin];
else if(Spieler[playerid][Duty] == 2 && Spieler[playerid][Fraktionsjob] > 0) spSkin = Nebenjobs[Spieler[playerid][Fraktionsjob]][jSkin];
else spSkin = Spieler[playerid][Zivilskin];
if(Spieler[playerid][ZPos] >= 75.0) needpara = true;
return p_SetSpawnInfo(playerid, spSkin, Spieler[playerid][XPos],Spieler[playerid][YPos],Spieler[playerid][ZPos], Spieler[playerid][APos], Spieler[playerid][Interior],Spieler[playerid][Virtualworld], Spieler[playerid][PlayerHealth], Spieler[playerid][PlayerArmour], needpara);
}
else
{
Spieler[playerid][Duty] = 0;
Spieler[playerid][Spawnchange] = -1;
}
}
if(IsAGang(GetPlayerFrak(playerid)) && Spieler[playerid][Duty] <= 1) Spieler[playerid][Duty] = 1;
if(Spieler[playerid][Duty] == 1) spSkin = Spieler[playerid][Fraktionsskin];
else if(Spieler[playerid][Duty] == 2 && Spieler[playerid][Ziviljob] > 0) spSkin = Nebenjobs[Spieler[playerid][Ziviljob]][jSkin];
else if(Spieler[playerid][Duty] == 2 && Spieler[playerid][Fraktionsjob] > 0) spSkin = Nebenjobs[Spieler[playerid][Fraktionsjob]][jSkin];
else spSkin = Spieler[playerid][Zivilskin];
if(Spieler[playerid][Spawnchange] >= 0)
{
p_SetSpawnInfo(playerid, spSkin, Fraktionen[Spieler[playerid][Spawnchange]][pickx],Fraktionen[Spieler[playerid][Spawnchange]][picky],Fraktionen[Spieler[playerid][Spawnchange]][pickz],Fraktionen[Spieler[playerid][Spawnchange]][picka],Fraktionen[Spieler[playerid][Spawnchange]][pickinter], Fraktionen[Spieler[playerid][Spawnchange]][pickvirt]);
return 1;
}
if(Spieler[playerid][Hotelzimmer] >= 0)
{
p_SetSpawnInfo(playerid,spSkin, pHotelzimmer[Spieler[playerid][Hotelzimmer]][hzx2],pHotelzimmer[Spieler[playerid][Hotelzimmer]][hzy2],pHotelzimmer[Spieler[playerid][Hotelzimmer]][hzz2],pHotelzimmer[Spieler[playerid][Hotelzimmer]][hza2],pHotelzimmer[Spieler[playerid][Hotelzimmer]][inter2],pHotelzimmer[Spieler[playerid][Hotelzimmer]][virt2]);
return 1;
}
if(Spieler[playerid][Haus] >= 0)
{
p_SetSpawnInfo(playerid, spSkin, Haeuser[Spieler[playerid][Haus]][pick2x],Haeuser[Spieler[playerid][Haus]][pick2y],Haeuser[Spieler[playerid][Haus]][pick2z],Haeuser[Spieler[playerid][Haus]][pick2a],Haeuser[Spieler[playerid][Haus]][inter],Haeuser[Spieler[playerid][Haus]][virt]);
return 1;
}
if(Spieler[playerid][Stadt] == 1) p_SetSpawnInfo(playerid, spSkin, 823.9938,-1361.9373,-0.5078, 314.8367);
else if(Spieler[playerid][Stadt] == 2) p_SetSpawnInfo(playerid, spSkin, -1964.9036,137.8082,27.6875,89.5713);
else if(Spieler[playerid][Stadt] == 3) p_SetSpawnInfo(playerid, spSkin, 1433.6573,2620.4934,11.3926, 180.1021);
else p_SetSpawnInfo(playerid, spSkin, 823.9938,-1361.9373,-0.5078, 314.8367);
return 1;
}
stock p_SetSpawnInfo(playerid, skin, Float:x, Float:y, Float:z, Float:a, interior = 0, virtualworld = 0, Float:spHealth = 100.0, Float:spArmour = 0.0, bool:spPara = false)
{
SetSpawnInfo(playerid, -1, skin, x, y, z, a, 0, 0, 0, 0, 0, 0);
SpawnInfo[playerid][Inter] = interior;
SpawnInfo[playerid][Virt] = virtualworld;
SpawnInfo[playerid][spHp] = spHealth;
SpawnInfo[playerid][spArm] = spArmour;
SpawnInfo[playerid][Parachute] = spPara;
return 1;
}
public OnPlayerSpawn(playerid)
{
SetPlayerInterior(playerid, SpawnInfo[playerid][Inter]);
SetPlayerVirtualWorld(playerid, SpawnInfo[playerid][Virt]);
SetPlayerHealth(playerid, SpawnInfo[playerid][spHp]);
SetPlayerArmour(playerid, SpawnInfo[playerid][spArm]);
if(SpawnInfo[playerid][Parachute]) GivePlayerWeapon(playerid, 46, 1);
return 1;
}Da steht noch mehr OnPlayerSpawn, hat aber nichts damit zu tun (Textdraws, objekte, gangzonen, etc)
Ich frage mich ob es an mysql, an 0.3e oder an irgenteinen anderen Fehler liegt.
-
Ich kenne die garnicht, bin erst seit 0.3 da..
Was konnten die denn? -
habe bereits einen timer der das jede Sekunde checkt..
Nur habe ich auch gehört das es an einigen stellen mit OnPlayerUpdate sinnvoller sein soll. -
Ich habe überhaupt nichts drinne, also kann ich ganz einfach folgendes überprüfen:
- Money
- Armour & Health
- Weapon
- Jetpack
-
und genau deswegen komme ich zu dieser Frage..
Einige sagen: lass es, gibt lags..
andere sagen: schwachsin, mach ruhig..Was ist da nun das richtige...
-
Naja beim Jetpack ist es ja sinnvoller OnPlayerUpdate zu benutzen..
Und ich habe hier und da ma gehört das sich das gut eignet für Anticheats.. -
-
-
und ein Airbreak MUSS man mit timern machen..
Deswegen ja die Frage, bei welchen ist es sinnvoll und bei welchen eher weniger.
Gehen wir mal von folgenden Cheats aus:- Health & Armour
- Money
- Jetpack
- Weapon
- Speedhack & Airbreak