Hey...
Ich habe mal ne Frage...
Kann das einer so scripten:
Man macht /addbagger
und dann wird ein Bagger* erstellt, das habe ich auch schon mit GetPLayerPos etc.
Aber 1. Frage:
Wie mache ich das, dass die Rotation des Objektes zum Facing-Angle oder zu der 4. Gruppe bei AddPlayerClass (AddPlayerClass(x,y,z,Hier das,waffe1,...)
zusammenbringe ?
2. Frage:
Kann einer für mich so ein System machen mit Camera, dass ich gefreezt werde und mit /baggereditor den Bagger, also die Rotation und die Position (+Höhe) ändern kann indem ich die Tasten hoch runter links rechts und für Rotation Numpad benutze, oder für Rotation ich erst auf Tab drücke, und dann mit hoch runter links rechts mache ?
3. Frage
Wie mache ich dass, dass ich wenn ich den Bagger richtig gemacht habe, mit /savebagger speichern kann.
Und das in scriptfiles/bagger.ini ist.
Und beim OnGameModeInit aufgerufen wird bzw. geladen wird. und die Bagger mit Rotation, Position, und Höhe erstellt werden, wie sie bei /savebagger waren ?
4. Frage(Nur für welche, die sich echt viel Mühe machen würden)
Ein System, wenn man am Bagger ist und Enter drückt, wird abgefragt ob er am Bagger ist,
und er wird gefreezt, und die Camera geht an den Bagger bzw. dahinter.
Wenn man den Bagger bewegt, (drückt man nach links) kommt die Rotation nach links, bei rechts nach rechts.
Wenn man Hoch drückt, kommt vorne, wo die Bagga"schaufel" ist, ein Seil** raus, nach unten, und die Camera wird geändert nach da, dass man das Seil gut sieht.
Und wenn man dann Leertaste drückt, wird abgefragt ob das Seil unten ist, wenn ja, soll so ein Bauträger*** dran gemacht werden, wenn amn dann wieder nach rechts drückt, soll rotation, position vom Seil und Position vom Bauträger nach rechts gehen.
Es soll den sinn machen, dass es wie Reallife ist.
* ID vom Bagger = 18248
** ID vom Seil, weiß net gerade, ist bei den neuen 0.3c Objekten dabei
*** ID vom Bauträger = 2960
Ich habe hier schon einiges gemacht.:
#define MAX_BAGGER 5 // Maximale Bagger4
forward AddBagger(Float:x, Float:y, Float:z, Float:rX, Float:rY, Float:rZ);
forward AddPlayerBagger(playerid);
enum eBagger
{
ID, Float:BaggerX, Float:BaggerY, Float:BaggerZ, Float:BaggerrX, Float:BaggerrY, Float:BaggerrZ, Erstellt
};
new Bagger[MAX_BAGGER][eBagger];
public OnGameModeInit()
{
//....
AddBagger(1189.7380,-918.4663,43.2251,0.0,0.0,0.0);
//....
return 1;
}
if(strcmp(cmd, "/addbagger", true) == 0)
{
AddPlayerBagger(playerid);
return 1;
}
public AddBagger(Float:x, Float:y, Float:z, Float:rX, Float:rY, Float:rZ)
{
for(new i = 0; i < sizeof(Bagger); i++)
{
//if(Bagger[i][Erstellt] == 0)
{
Bagger[i][BaggerX] = x;
Bagger[i][BaggerY] = y;
Bagger[i][BaggerZ] = z;
Bagger[i][BaggerrX] = rX;
Bagger[i][BaggerrY] = rY;
Bagger[i][BaggerrZ] = rZ;
//Bagger[i][Erstellt] = 1;
Bagger[i][ID] = CreateObject(18248, x, y, z, rX, rY, rZ);
return 1;
}
}
return 0;
}
public AddPlayerBagger(playerid)
{
/*for(new i = 0; i < sizeof(Bagger); i++)
{
//if(Bagger[i][Erstellt] == 0)
{
Bagger[i][BaggerX] = x;
Bagger[i][BaggerY] = y;
Bagger[i][BaggerZ] = z;
Bagger[i][BaggerrX] = rX;
Bagger[i][BaggerrY] = rY;
Bagger[i][BaggerrZ] = rZ;
//Bagger[i][Erstellt] = 1;
Bagger[i][ID] = CreateObject(18248, x, y, z, rX, rY, rZ);
return 1;
}
}*/
new Float:x, Float:y, Float:z;
GetPlayerPos(playerid,x,y,z);
new Bagger2[MAX_PLAYERS];
for(new i = 0; i < sizeof(Bagger); i++)
{
Bagger[i][BaggerX] = x;
Bagger[i][BaggerY] = y;
Bagger[i][BaggerZ] = z;
Bagger2[playerid] = CreateObject(18248, x, y, z+7.0, 0.0, 0.0, 0.0);
SendClientMessage(playerid,COLOR_YELLOW2,"Bagger erfolgreich erstellt, zum speichern /savebagger (/save).");
}
return 0;
}
ACHTUNG: Könnte sein, dass die Klammern ein wenig durcheinander sind, aber liegt am Forum
Ich würde mich RIESIG freuen, wenn das einer hingekommt.
MfG
Atta(Oo);