Vorher grade die Demo von Mafia 2 *freu*
Wenn Ihr im Waffenladen was kaufen wollt *zensiert*
CoD
Crysis
SAMP
ewt. demnächst DSA
Vorher grade die Demo von Mafia 2 *freu*
Wenn Ihr im Waffenladen was kaufen wollt *zensiert*
CoD
Crysis
SAMP
ewt. demnächst DSA
Hallo
Ach komm, es gibt Leute die schreiben um Welten schlechter, unter jeder Sau (sry) als ich. B2T
Könnte man das mit einer Schleife abfragen oder ist das nicht sehr sinnvoll ?
For-Schleife:
GetVehiclePos
--> IsPlayerInRangeOfPoint
dUDA
Hallo
Ich scripte zurzeit ein ADAC System, jedoch habe ich jetzt echt ein Problem, wo ich nicht weiter weiss, wie ich überhaupt sowa slösen kann. Die Cars/der Car eines Users ist verschlossen. Nun wird er abgeschleppt und in die ADAC Base gestellt. Da der Car jedoch verschlossen ist, komme ich wirklich nicht an eine ID oder Möglichkeit, etwas abzufragen.
Gibt es eine Funktion, die abfragt, ob der Player in der Nähe eines Cars ist oder ähnlich ? IsPlayerInRangeOfAnyVehicle oä ?
MfG dUDA
Huhu
Finde sie ein echter Hingucker, jedoch fehlt mir etwas im Vordergrund, wo du sagen kannst "Wow!". Beim 2.Bild des 1.Beitrages fehlt mir irgendetwas im Vordergrund (Details). Sonst aber irgendwie echt mal was anderes.
dUDA
Hallo
Das sind alles Winkelfunktionen, welche man zB zur Winkel/Seitenlängenberechnung im Dreieck brauchen kann. In GTA werden sie zB für das Öffnen eines drehbaren Tores verwendet (Finde den Link nicht mehr)
Asin = ArcSinus (Umkehrfunktion der Sinusfunktion) oder Sin^-1
Acos = ArcCosinus (Umkehrfunktion der Cosinusfunktion) oder Cos^-1
Atan = ArcTangens (Umkehrfunktion der Tangensfunktion) oder Tan^-1
MfG dUDA
//Edit: Da ist das Schätzchen ja^^
http://wiki.sa-mp.de/Tor
Hallo
Naja, ok, wenn ich die VehicleID abfragen könnte, ohne dass ein Player im Car sitzt wäre es ja recht einfach. Aberda es das ja leider nicht gibt, kann VehicleID != fCarID continue nicht gelten
Dank dir aber.
//Edit
Leider geht es nicht
//Edit 2
public PrivatCarTuneUp(id)
{
if(FDaten[id][fTunbar] == 1)
{
new vehicleid = FDaten[id][fCarID];
new component[14];
FDaten[id][fTuningteil0] = component[0];
FDaten[id][fTuningteil1] = component[1];
FDaten[id][fTuningteil2] = component[2];
FDaten[id][fTuningteil3] = component[3];
FDaten[id][fTuningteil4] = component[4];
FDaten[id][fTuningteil5] = component[5];
FDaten[id][fTuningteil6] = component[6];
FDaten[id][fTuningteil7] = component[7];
FDaten[id][fTuningteil8] = component[8];
FDaten[id][fTuningteil9] = component[9];
FDaten[id][fTuningteil10] = component[10];
FDaten[id][fTuningteil11] = component[11];
FDaten[id][fTuningteil12] = component[12];
FDaten[id][fTuningteil13] = component[13];
if(FDaten[id][fTuningteil0] != 0) {AddVehicleComponent(vehicleid, component[0]);}
if(FDaten[id][fTuningteil1] != 0) {AddVehicleComponent(vehicleid, component[1]);}
if(FDaten[id][fTuningteil2] != 0) {AddVehicleComponent(vehicleid, component[2]);}
if(FDaten[id][fTuningteil3] != 0) {AddVehicleComponent(vehicleid, component[3]);}
if(FDaten[id][fTuningteil4] != 0) {AddVehicleComponent(vehicleid, component[4]);}
if(FDaten[id][fTuningteil5] != 0) {AddVehicleComponent(vehicleid, component[5]);}
if(FDaten[id][fTuningteil6] != 0) {AddVehicleComponent(vehicleid, component[6]);}
if(FDaten[id][fTuningteil7] != 0) {AddVehicleComponent(vehicleid, component[7]);}
if(FDaten[id][fTuningteil8] != 0) {AddVehicleComponent(vehicleid, component[8]);}
if(FDaten[id][fTuningteil9] != 0) {AddVehicleComponent(vehicleid, component[9]);}
if(FDaten[id][fTuningteil10] != 0) {AddVehicleComponent(vehicleid, component[10]);}
if(FDaten[id][fTuningteil11] != 0) {AddVehicleComponent(vehicleid, component[11]);}
if(FDaten[id][fTuningteil12] != 0) {AddVehicleComponent(vehicleid, component[12]);}
if(FDaten[id][fTuningteil13] != 0) {AddVehicleComponent(vehicleid, component[13]);}
}
return 1;
}
public SaveTuner(id)
{
new vehicleid = FDaten[id][fCarID];
FDaten[id][fTuningteil0] = GetVehicleComponentInSlot(vehicleid, CARMODTYPE_SPOILER);
FDaten[id][fTuningteil1] = GetVehicleComponentInSlot(vehicleid, CARMODTYPE_HOOD);
FDaten[id][fTuningteil2] = GetVehicleComponentInSlot(vehicleid, CARMODTYPE_ROOF);
FDaten[id][fTuningteil3] = GetVehicleComponentInSlot(vehicleid, CARMODTYPE_SIDESKIRT);
FDaten[id][fTuningteil4] = GetVehicleComponentInSlot(vehicleid, CARMODTYPE_LAMPS);
FDaten[id][fTuningteil5] = GetVehicleComponentInSlot(vehicleid, CARMODTYPE_NITRO);
FDaten[id][fTuningteil6] = GetVehicleComponentInSlot(vehicleid, CARMODTYPE_EXHAUST);
FDaten[id][fTuningteil7] = GetVehicleComponentInSlot(vehicleid, CARMODTYPE_WHEELS);
FDaten[id][fTuningteil8] = GetVehicleComponentInSlot(vehicleid, CARMODTYPE_STEREO);
FDaten[id][fTuningteil9] = GetVehicleComponentInSlot(vehicleid, CARMODTYPE_HYDRAULICS);
FDaten[id][fTuningteil10] = GetVehicleComponentInSlot(vehicleid, CARMODTYPE_FRONT_BUMPER);
FDaten[id][fTuningteil11] = GetVehicleComponentInSlot(vehicleid, CARMODTYPE_REAR_BUMPER);
FDaten[id][fTuningteil12] = GetVehicleComponentInSlot(vehicleid, CARMODTYPE_VENT_RIGHT);
FDaten[id][fTuningteil13] = GetVehicleComponentInSlot(vehicleid, CARMODTYPE_VENT_LEFT);
SaveCache();
return 1;
}
stock GetPrivatCarID(vehicleid)
{
for(new pid = 0; pid < _cache_fahrzeug; pid++)
{
if(vehicleid == FDaten[pid][fCarID]) return pid;
}
return -1;
}
dUDA
Hallo
Ich habe in meinem Carsystem mal versucht, ein Tuningsystem einzubauen, jedoch geht das nicht und ich habe wohl sehr peinliche Fehler drin. Wäre es möglich, dass mir einer helfen könnte oder Tipps geben kann.
forward PrivatCarTuneUp(id);
forward SaveTuner(id);
//OnVehicleDeath
public OnVehicleDeath(vehicleid, killerid)
{
SaveTuner(vehicleid);
return 1;
}
//OnVehicleSpawn
public OnVehicleSpawn(vehicleid)
{
for(new i = 0;i<_cache_fahrzeug;i++)
{
PrivatCarTuneUp(vehicleid);
break;
}
return 1;
}
//OnGameModeExit
SaveTuner();
public PrivatCarTuneUp(id)
{
for(new i = 0;i<_cache_fahrzeug;i++)
{
if(FDaten[id][fTunbar] == 1)
{
new component[14];
FDaten[id][fTuningteil0] = component[0];
FDaten[id][fTuningteil1] = component[1];
FDaten[id][fTuningteil2] = component[2];
FDaten[id][fTuningteil3] = component[3];
FDaten[id][fTuningteil4] = component[4];
FDaten[id][fTuningteil5] = component[5];
FDaten[id][fTuningteil6] = component[6];
FDaten[id][fTuningteil7] = component[7];
FDaten[id][fTuningteil8] = component[8];
FDaten[id][fTuningteil9] = component[9];
FDaten[id][fTuningteil10] = component[10];
FDaten[id][fTuningteil11] = component[11];
FDaten[id][fTuningteil12] = component[12];
FDaten[id][fTuningteil13] = component[13];
if(FDaten[id][fTuningteil0] != 0) {AddVehicleComponent(id, component[0]);}
if(FDaten[id][fTuningteil1] != 0) {AddVehicleComponent(id, component[1]);}
if(FDaten[id][fTuningteil2] != 0) {AddVehicleComponent(id, component[2]);}
if(FDaten[id][fTuningteil3] != 0) {AddVehicleComponent(id, component[3]);}
if(FDaten[id][fTuningteil4] != 0) {AddVehicleComponent(id, component[4]);}
if(FDaten[id][fTuningteil5] != 0) {AddVehicleComponent(id, component[5]);}
if(FDaten[id][fTuningteil6] != 0) {AddVehicleComponent(id, component[6]);}
if(FDaten[id][fTuningteil7] != 0) {AddVehicleComponent(id, component[7]);}
if(FDaten[id][fTuningteil8] != 0) {AddVehicleComponent(id, component[8]);}
if(FDaten[id][fTuningteil9] != 0) {AddVehicleComponent(id, component[9]);}
if(FDaten[id][fTuningteil10] != 0) {AddVehicleComponent(id, component[10]);}
if(FDaten[id][fTuningteil11] != 0) {AddVehicleComponent(id, component[11]);}
if(FDaten[id][fTuningteil12] != 0) {AddVehicleComponent(id, component[12]);}
if(FDaten[id][fTuningteil13] != 0) {AddVehicleComponent(id, component[13]);}
}
}
return 1;
}
public SaveTuner(id)
{
new component[14];
for(new i = 0;i<_cache_fahrzeug;i++)
{
component[0] = GetVehicleComponentInSlot(id, CARMODTYPE_SPOILER);
component[1] = GetVehicleComponentInSlot(id, CARMODTYPE_HOOD);
component[2] = GetVehicleComponentInSlot(id, CARMODTYPE_ROOF);
component[3] = GetVehicleComponentInSlot(id, CARMODTYPE_SIDESKIRT);
component[4] = GetVehicleComponentInSlot(id, CARMODTYPE_LAMPS);
component[5] = GetVehicleComponentInSlot(id, CARMODTYPE_NITRO);
component[6] = GetVehicleComponentInSlot(id, CARMODTYPE_EXHAUST);
component[7] = GetVehicleComponentInSlot(id, CARMODTYPE_WHEELS);
component[8] = GetVehicleComponentInSlot(id, CARMODTYPE_STEREO);
component[9] = GetVehicleComponentInSlot(id, CARMODTYPE_HYDRAULICS);
component[10] = GetVehicleComponentInSlot(id, CARMODTYPE_FRONT_BUMPER);
component[11] = GetVehicleComponentInSlot(id, CARMODTYPE_REAR_BUMPER);
component[12] = GetVehicleComponentInSlot(id, CARMODTYPE_VENT_RIGHT);
component[13] = GetVehicleComponentInSlot(id, CARMODTYPE_VENT_LEFT);
FDaten[i][fTuningteil0] = component[0];
FDaten[i][fTuningteil1] = component[1];
FDaten[i][fTuningteil2] = component[2];
FDaten[i][fTuningteil3] = component[3];
FDaten[i][fTuningteil4] = component[4];
FDaten[i][fTuningteil5] = component[5];
FDaten[i][fTuningteil6] = component[6];
FDaten[i][fTuningteil7] = component[7];
FDaten[i][fTuningteil8] = component[8];
FDaten[i][fTuningteil9] = component[9];
FDaten[i][fTuningteil10] = component[10];
FDaten[i][fTuningteil11] = component[11];
FDaten[i][fTuningteil12] = component[12];
FDaten[i][fTuningteil13] = component[13];
SaveCache();
break;
}
return 1;
}
Beim Auslesen der Infos aus der Carfile wird PrivatCarTuneUp aufgerufen und bei OnVehicleDeath abgespeichert (SaveCache(); , denn ich jetzt nicht poste, da er geht).
MfG dUDA
Hallo
So in der Art
public OnPlayerSpawn(playerid)
{
if(Spieler[layerid][team] == 1)
{
Code
}
else if(Spieler[layerid][team] == 2)
{
Code
}
else if(Spieler[layerid][team] == 3)
{
Code
}
return 1;
}
dUDA
Hallo
Ich habe seit längerer Zeit Probleme mit dem Payday, auch User haben gesagt, sie hätten nie den richtigen Payday oder sogar immer verschiedene Paydays. Alles bis auf den Member und Leader-Payday stimmt sonst, nur diese 2 gehen nie wirklich. Ich habe also jetzt jeder Fraktion als Geldbetrag die Fraktionsid gegeben, um das etwas genauer anshauen zu können.
Ich habe es vorhin getestet:
pMember = 6
pLeader= 6
pRank = 6
Was rauskam:
.....
Rank: 600 (stimmt)
Member: 13 (Stimmt nicht)
Leader 7 (Stimmt nicht)
Hier der Code:
new FrakGeld[MAX_FRAKS][2] =
{
{1,1},//Fraktion 1
{2,2},//Fraktion 2
{3,3},//Fraktion 3
{4,4},//Fraktion 4
{5,5},//Fraktion 5
{6,6},//Fraktion 6
{7,7},//Fraktion 7
{8,8},//Fraktion 8
{9,9},//Fraktion 9
{10,10},//Fraktion 10
{11,11},//Fraktion 11
{12,12},//Fraktion 12
{13,13},//Fraktion 13
{14,14},//Fraktion 14
{15,15},//Fraktion 15
{16,16},//Fraktion 16
{17,17} //Fraktion 17
};
public PayDay(i)
{
if(IsPlayerConnected(i))
{
if(PayTime[i] == 1)
{
//New
new str[256];
new zinsa = 1;
new respekt = 1;
new check = 100;
new level = PlayerInfo[i][pLevel];
new extra = (level*100);
new money = ((PlayerInfo[i][pBank]/1000)*zinsa);
new jpoints = (PlayerInfo[i][pJPoints]);
new fpoints = (PlayerInfo[i][pFPoints]);
new gjpoints = jpoints * 10;
new gfpoints = fpoints * 10;
new rank = PlayerInfo[i][pRank] * 100;
//Addition
check += extra;
//Richtiger Payday
format(str, sizeof(str), "--------------------------------------"); //Anfang
SendClientMessage(i, COLOR_GREEN, str);
format(str, sizeof(str), "Lohn: $%d",check); //Lohn
SendClientMessage(i, COLOR_WHITE, str);
format(str, sizeof(str), "Zinsengeld: $%d",money); //Zinsen
SendClientMessage(i, COLOR_WHITE, str);
format(str, sizeof(str), "Punktegeld: Job $%d, Fraktion $%d ",jpoints, fpoints); //Punkte
SendClientMessage(i, COLOR_WHITE, str);
//Job
if(PlayerInfo[i][pJob] != 0)
{
new frak = PlayerInfo[i][pJob];
JB_GivePlayerMoney(i, JobGeld[frak][0]);
format(str,sizeof(str),"Job: $%d", JobGeld[frak][0] );
SendClientMessage(i, COLOR_WHITE, str);
}
//Rank
if(PlayerInfo[i][pMember] != 1)
{
JB_GivePlayerMoney(i, rank);
format(str,sizeof(str),"Fraktions Rank: $%d",rank);
SendClientMessage(i, COLOR_WHITE, str);
}
//Member
if(PlayerInfo[i][pMember] != 0)
{
new frak = PlayerInfo[i][pMember];
JB_GivePlayerMoney(i, FrakGeld[frak][0]);
format(str,sizeof(str),"Fraktions Member: $%d", FrakGeld[frak][0] );
SendClientMessage(i, COLOR_WHITE, str);
}
//Leader
if(PlayerInfo[i][pLeader] != 0)
{
new frak = PlayerInfo[i][pLeader];
JB_GivePlayerMoney(i, FrakGeld[frak][1]);
format(str,sizeof(str),"Fraktions Leader: $%d", FrakGeld[frak][1] );
SendClientMessage(i, COLOR_WHITE, str);
}
format(str, sizeof(str), "--------------------------------------"); //Ende
SendClientMessage(i, COLOR_GREEN, str);
//Auszahlung
JB_GivePlayerMoney(i, check); //Lohn
JB_GivePlayerMoney(i, money); //Zinsen
JB_GivePlayerMoney(i, gjpoints); //Jobpoints
JB_GivePlayerMoney(i, gfpoints), //Fraktionspoints
//Resetten und Count +1
PlayerInfo[i][pJPoints] = 0; //Jobpoints
PlayerInfo[i][pFPoints] = 0; //Fraktionspoints
PayTime[i] = 0;
PlayerInfo[i][pRespekt] += respekt;
//Payday Ausgabe
format(str, sizeof(str), "~g~Pay~w~Day");
GameTextForPlayer(i, str, 5000, 1);
return 1;
}
}
return 0;
}
Ah, darauf wäre ich jetzt echt nie gekommen xD
Dank dir
Hallo
Ich baue ein Truckersystem und habe nun ein Problem entdeckt:
Wie kann ich die ModelID des Trailers abfragen ? Momentan mache ich es so, das ist ja abe rnicht richtig, da es immer die VehicleID des Trucks (wo ich sitze) und nicht die des Trailers abfragt.
else if(GetVehicleTrailer(GetPlayerVehicleID(playerid)) != 584) return SendClientMessage(playerid,COLOR_GREY,"Falscher oder kein Anhänger");
MfG dUDA
Danke Templer
Lob an euch alle, die mir/uns helfen, obwohl sie bei gewissen Fragen einfach nur Dummes posten könnten. Finde es auch toll, dass Ihr dafür eure Freizeit einsetzt.
dUDA
Also einfach etwa 5 If Abfragen xD ?^^
Hallo
Ne, ihr versteht mich falsch, ich checke ob der Spieler an einem Punkt mit bestimmten Car und Trailer ist.
Was redest du von PlayerToPoint, sowa sverwende ich ned, da mich sonst alle hauen
Aber, wie mache ich den Übergang zum 1.VehicleID ? Mit ?
Hallo
Ich habe hier ein Codestück, welches momentan nicht das macht, was es sollte, der Grund ist klar:
else if(IsPlayerInRangeOfPoint(playerid,10,-74.1881,-1120.7853,1.0781) && TAuftrag[3][playerid] == 1 && GetVehicleModel(GetPlayerVehicleID(playerid)) == 514 && IsPlayerInAnyVehicle(playerid) && GetVehicleTrailer(GetPlayerVehicleID(playerid)) == 435 && GetVehicleTrailer(GetPlayerVehicleID(playerid)) == 591)
{
TAuftrag[3][playerid] = 0;
JB_GivePlayerMoney(playerid,75);
SendClientMessage(playerid,COLOR_GREEN,"Du hast den Auftrag abgeschlossen und bekommst 75 Dollar");
DisablePlayerCheckpoint(playerid);
return 1;
}
Vorrausetzungen:
-IsPlayerInAnyInVehicle
-PlayerInfo[Zahl][playerid] ==1
-ModelID 514 oder XX (eines von beiden)
-Trailer 435 ider 591 (Eines von beiden)
Wo mus sich das setzten, damit nicht beide Trailer ein oder sind sondern nur einer ?
MfG dUDA
Hallo
Meinst du zB im MTA Editor oder aufem richtigen Server ? Wenn Du auf dem Serve rmeinst, nutze anstatt AddStaticVehicle zB CreateVehicle oder die andere AddStaticVehicle-Version, da respawnen die Cars nicht/einstellbar. Sonst bau dir doch einen Vehicle-Spawner.
dUDA
Hallo
Bin auch grad an sowas dran, speichere doch die Fraktions-ID in der File mit und prüfst beim Einsteigen oder Carparken ab, ob er die gleiche Fraktions-Zahl hat wie der Fraktions-Wert aus der Carfile.
dUDA
Hallo miteinander
Ich habe ein "kleineres" Problem. Wenn ich auf den Server joine sind alle Cars verschlossen. Nun öffne ich mit /carlock meinen Wagen und man kann alle Fahren, wenn ich da snicht tue, sind alle (!) Cars verschlossen. Woran liegt das, ode rbesser gesagt, wie verschliesse ich nur den einen Car ?
dcmd_carlock(playerid,params[])
{
#pragma unused params
new Float:APos[3];
for(new i = 0;i<_cache_fahrzeug;i++)
{
if(strcmp(FDaten[i][fBesitzer],spielername(playerid))){SendClientMessage(playerid,COLOR_GREY,"Dieses Fahrzeug gehört nicht dir");break;}
GetVehiclePos(FDaten[i][fCarID], APos[0], APos[1], APos[2]);
if(IsPlayerInRangeOfPoint(playerid, 2.5, APos[0],APos[1],APos[2]))
{
if(FDaten[i][fLocked] == 1)
{
for(new p = 0; p < MAX_PLAYERS; p++)
{
SetVehicleParamsForPlayer(FDaten[i][fCarID], p, 0, 0);
}
SendClientMessage(playerid,COLOR_GREEN,"Auto aufgeschlossen");
FDaten[i][fLocked] = 0;
SaveCache();
break;
}
else
{
for(new p = 0; p < MAX_PLAYERS; p++)
{
SetVehicleParamsForPlayer(FDaten[i][fCarID], p, 0, 1);
}
SendClientMessage(playerid,COLOR_GREEN,"Auto geschlossen");
FDaten[i][fLocked] = 1;
SaveCache();
break;
}
}
}
// SendClientMessage(playerid,COLOR_GREY,"Du bist nicht in der Nähe des Fahrzeug");
return 1;
}
public OnVehicleStreamIn(vehicleid, forplayerid)
{
SetVehicleParamsForPlayer(vehicleid, forplayerid, 0, 1);
return 1;
}
MfG dUDA