Darauf hätte ja selbst ich kommen können Dank dir PullDown Auf dich kann man immer zählen
Beiträge von Dominik
-
-
Naja, für den Anfang sicherlich nicht schlecht, aber du solltest wie oben schon gesagt worden ist, die Map ein wenig mehr ' verschönern ' ,
aber gleichzeitig auch darauf achten das du nicht zu viele Objekte nutzt. -
Naja werd das schon schaukeln, aber schau mal die Errors habe oben editiert.
-
das musst du auch im Checkpoint wieder rauslöschen, da du es ja jetzt Global definiert hastund vorallem musst du die Variable dann so definieren :
new Float:vehx[MAX_PLAYERS], Float:vehy[MAX_PLAYERS], Float:vehz[MAX_PLAYERS];
Und dann funktioniert mein Vorhaben ?
GetVehiclePos(truck,vehx,vehy,vehz);
if(IsPlayerInRangeOfPoint(playerid,2.0,vehx,vehy,vehz))
jetzt kommt da nen Error
C:\Users\Dominik\Desktop\LRP\gamemodes\bare.pwn(2235) : error 035: argument type mismatch (argument 2)
C:\Users\Dominik\Desktop\LRP\gamemodes\bare.pwn(2253) : error 035: argument type mismatch (argument 3) -
new Float:vehx, Float:vehy, Float:vehz;
Also, wenn ich die Variable Global definiere, funktioniert das?
if(trucker_checkpoint[playerid]==2 && truckerroute[playerid] == 1)
{
new Float:vehx, Float:vehy, Float:vehz;
new truck = GetPlayerVehicleID(playerid);
GetVehiclePos(truck,vehx,vehy,vehz);
if(IsTrailerAttachedToVehicle(truck))
{
DisablePlayerCheckpoint(playerid);
SetPlayerCheckpoint(playerid,159.4653,-22.3724,2.1729,4.0);
trucker_checkpoint[playerid]=3;
SendClientMessage(playerid,GELB,"Laufe in die Halle und lade die Pakete in deinen LKW");
}
}
if(trucker_checkpoint[playerid]==3 && truckerroute[playerid] == 1)
{
DisablePlayerCheckpoint(playerid);
SetPlayerCheckpoint(playerid,166.5779,-8.6603,2.1748,9.0);
trucker_checkpoint[playerid]=4;
SendClientMessage(playerid,GELB,"Lade das Paket in deinen LKW.");
}
if(trucker_checkpoint[playerid]==4 && truckerroute[playerid] == 1)
{
if(IsPlayerInRangeOfPoint(playerid,2.0,vehx,vehy,vehz))
{
DisablePlayerCheckpoint(playerid);
trucker_checkpoint[playerid]=5;
SendClientMessage(playerid,WEISS,"Du hast das Paket in deinen LKW geladen.");
}
}Dabei bekomme ich jetzt 4 Warnings :-/ Kann das so überhaupt funktionieren?
C:\Users\Dominik\Desktop\LRP\gamemodes\bare.pwn(2234) : warning 219: local variable "vehx" shadows a variable at a preceding level
C:\Users\Dominik\Desktop\LRP\gamemodes\bare.pwn(2234) : warning 219: local variable "vehy" shadows a variable at a preceding level
C:\Users\Dominik\Desktop\LRP\gamemodes\bare.pwn(2234) : warning 219: local variable "vehz" shadows a variable at a preceding level
Pawn compiler 3.2.3664 Copyright (c) 1997-2006, ITB CompuPhase4 Warnings.
-
Spielt es dabei keine Rolle das ich die vehx vehy und vehz in einer anderen Abfrage abgefragt habe?
-
Dann wirst du halt überall die Zahl ändern müssen.
-
Moin,
so hab ich es bei mir:
Irgendwo ins Script :
forward Float:GetXYInFrontOf(&Float:a, &Float:x, &Float:y, Float:distanc);
Float:GetXYInFrontOf(&Float:a, &Float:x, &Float:y, Float:distanc)
{
x += (distanc * floatsin(-a, degrees));
y += (distanc * floatcos(-a, degrees));
return a;
}forward Float:GiveRotation(&Float:a, Float:ap);
Float:GiveRotation(&Float:a,Float:ap)
{
a+=ap;
if(a <0){a=360-(a*-1);}
if(a >360){a=0+(a-360);}
return a;
}Bei OnPlayerExitVehicle :
if(GetVehicleModel(vehicleid) == 456) // <---- Hier kannst du deine Truck abfrage machen
{
GetVehiclePos(vehicleid,vX[playerid],vY[playerid],vZ[playerid]);
GetVehicleZAngle(vehicleid,vR[playerid]);
GiveRotation(vR[playerid],180.0);
GetXYInFrontOf(vR[playerid], vX[playerid], vY[playerid], 5.0);
}Wenn er die Kiste aufnimmt :
SetPlayerCheckpoint(playerid, vX[playerid],vY[playerid],vZ[playerid],2.0);Und Oben Ins Script :
new Float:vX[MAX_PLAYERS],Float:vY[MAX_PLAYERS],Float:vZ[MAX_PLAYERS],Float:vR[MAX_PLAYERS];
Mfg
PullDOwn
Damit hast du mich jetzt völlig verwirrt x'D.
Ich habe ja nur das Problem, das ich herausfinden will, ob er in der Nähe seines Trucks ist -
Ja, das bräuchten wir dann mal, weil wir deine Abfragen etc. nichts kennen.
-
aber es kann trotzdem passieren, das ich ihn bei mir treffe, bei ihm aber nicht und dann verliert er HP, das würde denn Cheatern doch ne Unterstützung geben.
Das siehsts du falsch
Also:
Normalerweise ist die HitBox ja verschoben also man trifft auf seinem Rechner den anderen dieser verliert aber keine HP!
Mit diesem TuT (Also wenn man denn Code benutzt) ist die HitBox nun nicht mehr verschoben.@[ApL]Arendium:
Wo issn das Falsch?
Ich schau gleich nochmal nach. -
Zeig mal bitte deinen Code, was du bisher schon so hast.
-
Nein Nein, Schau, er wird aufgefordert in die Halle zu gehen, dafür muss er aus dem LKW aussteigen,
dort läuft er dann später in einen Checkpoint und kriegt ein Paket in die Hand,
das soll er dann zum LKW bringen, aber dafür muss ich ja wissen in welchem LKW er war,
und wenn er am LKW ist, soll es eingeladen werden -
Aber wirklich hilfreich ist es im Endeffekt nicht, oder sehe ich das falsch?
-
Schau dir meinen Code mal genau an,
das
new truck = GetPlayerVehicleID;
ist ganz oben in der 2. Checkpoint abfrage, und das new ist ja dann unten nicht mehr gültig,
und unten kann ich es ja nicht machen, da er unten nicht mehr in dem Truck sitzt. -
Sieht echt schön aus, gefällt mir 10/10
-
Ja, trotzalledem muss ich ja herausfinden, in welchem Fahrzeug er vorher saß, also in welcher VehicleID.
-
Moin,
Ich sitze wie vorhin auch immer noch an meinem Trucker Job, nun man steigt ein in den Truck, muss nen Anhänger ankoppeln,
und damit zur Ladestelle fahren. Wenn man dort angekommen ist, wird man aus dem Fahrzeug geschmissen und man muss in die Lagerhalle.
Dort muss man in einen Checkpoint und das Paket nehmen, nun soll man es dann zu dem Checkpoint bringen wo der LKW steht,
wie kann ich jetzt das machen, das ich gucke ob der LKW in der Nähe ist?So wie ich es habe geht es nicht.
if(trucker_checkpoint[playerid]==2 && truckerroute[playerid] == 1)
{
new Float:vehx, Float:vehy, Float:vehz;
new truck = GetPlayerVehicleID(playerid);
GetVehiclePos(truck,vehx,vehy,vehz);
if(IsTrailerAttachedToVehicle(truck))
{
DisablePlayerCheckpoint(playerid);
SetPlayerCheckpoint(playerid,159.4653,-22.3724,2.1729,4.0);
trucker_checkpoint[playerid]=3;
SendClientMessage(playerid,GELB,"Laufe in die Halle und lade die Pakete in deinen LKW");
}
}
if(trucker_checkpoint[playerid]==3 && truckerroute[playerid] == 1)
{
DisablePlayerCheckpoint(playerid);
SetPlayerCheckpoint(playerid,166.5779,-8.6603,2.1748,9.0);
trucker_checkpoint[playerid]=4;
SendClientMessage(playerid,GELB,"Lade das Paket in deinen LKW.");
}
if(trucker_checkpoint[playerid]==4 && truckerroute[playerid] == 1)
{
if(IsPlayerInRangeOfPoint(playerid,2.0,vehx,vehy,vehz);
{
DisablePlayerCheckpoint(playerid);
trucker_checkpoint[playerid]=5;
SendClientMessage(playerid,WEISS,"Du hast das Paket in deinen LKW geladen.");
}
} -
Die ' Guest ' Gruppe umbennenen.
-
Danke funktioniert nun alles wie es soll :3
-
Entschuldige wenn ich das so sagen muss, aber... sieht aus wie ein angekotzer Betonklotz