Beiträge von carlos1710

    Mein Schwager zoggt das immer und n paar freunde aber so atemberaubend find ich des spiel nun auch net, Vogelperspektive, man steuert fiecher und sieht zu wie die sich abshlachten, mit solcher software müll ich doch mein PC net zu.
    und da finde ich gta schon brutaler wegen der Perspektive(obwohl es das kein bisschen brutal ist) aber was ist schon besonderes dran wenn 2 monster gegenseitig die klingen schwingen und einer fällt um. . .

    Okey angenommen du hast 2000 Dateien für Autos auf deinem server und möchstest diese nun laden
    Dann:
    Speichere alle Autos in einer Arry
    new Vehicle[MAX_VEHICLE][vehicle_daten];
    enum vehicle_daten
    {
    modelid,
    Float:HP,
    Nummernschild[32],
    Float:posx,
    Float:posy,
    Float:posz,
    Float:posa,
    Abgeschlossen,
    engine,
    lights,
    alarm,
    bonnet,
    boot,
    Farbe1,
    Farbe2,
    Paintjob,
    Spoiler,
    Hood,
    Roof,
    Sideskirt,
    Lamps,
    Nitro,
    Exhaust,
    Wheels,
    Stereo,
    Hydraulics,
    FrontBumper,
    RearBumper,
    VentRight,
    VentLeft
    }
    das ist alles was man laden kann aus einem auto,
    ich weise nochmal darauf hin das mir das tutorial als grundlage diente ich trotzdem alles auf meine Weise mach es gibt bei mir keine autohäuser
    jeder code der dem im tutorial ähnelt ist nicht gewollt bzw für manches gibt es nur eine Möglichkeit
    for(new i = 1; i <=MAX_VEHICLES; i++)//machst du eine Schleife die bei serverstart alle Fahrzeuge durch geht
    {
    format(Autodatei,50,"/Autos/%d.txt",i);//lade das auto i
    if(!fexist(Autodatei))
    {
    format(Vehicle[i][Nummernschild],50,"0");//Sollte es ein Auto nicht geben setze ich das Nummernschild auf 0 ohne diesen code buggte manches
    }
    else//wenn es das auto dann gibt
    {
    Vehicle[i][modelid] = dini_Int(Autodatei,"modelid");//lade die dinge die du für wichtig empfindest
    Vehicle[i][HP] = dini_Int(Autodatei,"HP");
    format(Vehicle[i][Nummernschild],50,dini_Get(Autodatei,"Nummernschild"));//das nummernschild als string
    car[i]=CreateVehicle(Vehicle[i][modelid],Vehicle[i][posx],Vehicle[i][posy],Vehicle[i][posz]+1.5,Vehicle[i][posa],-1,-1,-1);//erstelle das fahrzeug i die dafür nötigen parameter hast du nun schon aus der datei geladen(nicht im beispiel)
    SetVehicleNumberPlate(car[i],dini_Get(Autodatei,"Nummernschild"));//nun das nummernschild setzen
    SetVehicleHealth(car[i],Vehicle[i][HP]);
    SetVehicleParamsEx(car[i],Vehicle[i][engine],Vehicle[i][lights],0,Vehicle[i][Abgeschlossen],Vehicle[i][bonnet],Vehicle[i][boot],0);//das ist optional
    if(Vehicle[i][Paintjob] >= 0)
    {
    ChangeVehiclePaintjob(car[i],Vehicle[i][Paintjob]);
    }
    }
    }

    Nagut dann erstelle ein auto :
    if(sscanf(params, "ddds", model, color1, color2, nummernschild)) return SendClientMessage(playerid,COLOR_RED, "Nutze: /createcar [model] [color1] [color2] [nummerschild]");//damit erstelle ich ein auto
    x y z und a bekomm ich vom Spieler
    format(Autodatei,50,"/Autos/%d.txt",globale[nextcarID]);//damit wird das erstellte auto bei mir gespeichert
    dini_Create(Autodatei);//dann erstellst du die datei
    dini_IntSet(Autodatei,"modelid",model);//und speicherst alles, was du für wichtig empfindest
    dini_FloatSet(Autodatei,"HP",1000.00);//alles was nach einem servercrash erhalten bleiben soll
    Wenn ein Spieler bei mir ein Auto verlässt, so speichere ich die neuen Koordinaten hier
    format(Autodatei,50,"/Autos/%d.txt",vehicleid);
    GetVehiclePos(vehicleid,x,y,z);
    GetVehicleZAngle(vehicleid,a);
    GetVehicleHealth(vehicleid,Vehicle[vehicleid][HP]);
    dini_FloatSet(Autodatei,"posx",x);
    //. . .usw
    wie ich das auto lade siehst du oben das mach ich bei OnGameModeInit()

    Das tutorial diente mir als grundlage weil ich es auch nicht wusste aber anderst kann man ein auto nicht laden darum siet der ein oder andere code gleich aus bei mir werden autos per dcmd erstellt dabei ist das nummernschild die koordinaten angle farbe und modelid dynamisch das wird in einer datei gespeichert und das auto ist im spiel.
    Der code oben ist aus dem tutorial rauskopiert und dynamisch für meine Zweche umgeschrieben.

    Hier ein Beispiel wie ich meine Autos lade, es wird so ziemlich alles geladen und gespeichert was möglich ist(schladensmodell mach ich heute)
    for(new i = 1; i <=MAX_VEHICLES; i++)
    {
    format(Autodatei,50,"/Autos/%d.txt",i);
    if(!fexist(Autodatei))
    {
    format(Vehicle[i][Nummernschild],50,"0");
    }
    else
    {
    Vehicle[i][modelid] = dini_Int(Autodatei,"modelid");
    Vehicle[i][HP] = dini_Int(Autodatei,"HP");
    format(Vehicle[i][Nummernschild],50,dini_Get(Autodatei,"Nummernschild"));
    Vehicle[i][Farbe1] = dini_Int(Autodatei,"Farbe1");
    Vehicle[i][Farbe2] = dini_Int(Autodatei,"Farbe2");
    Vehicle[i][Paintjob] = dini_Int(Autodatei,"Paintjob");
    Vehicle[i][posx] = dini_Int(Autodatei,"posx");
    Vehicle[i][posy] = dini_Int(Autodatei,"posy");
    Vehicle[i][posz] = dini_Int(Autodatei,"posz");
    Vehicle[i][posa] = dini_Int(Autodatei,"posa");
    Vehicle[i][Abgeschlossen] = dini_Int(Autodatei,"Abgeschlossen");
    Vehicle[i][engine] = dini_Int(Autodatei,"engine");
    Vehicle[i][bonnet] = dini_Int(Autodatei,"bonnet");
    Vehicle[i][lights] = dini_Int(Autodatei,"lights");
    Vehicle[i][alarm] = dini_Int(Autodatei,"alarm");
    Vehicle[i][boot] = dini_Int(Autodatei,"boot");
    Vehicle[i][Spoiler] = dini_Int(Autodatei,"Spoiler");
    Vehicle[i][Wheels] = dini_Int(Autodatei,"Wheels");
    Vehicle[i][Nitro] = dini_Int(Autodatei,"Nitro");
    Vehicle[i][Roof] = dini_Int(Autodatei,"Roof");
    Vehicle[i][Hood] = dini_Int(Autodatei,"Hood");
    Vehicle[i][Sideskirt] = dini_Int(Autodatei,"Sideskirt");
    Vehicle[i][Lamps] = dini_Int(Autodatei,"Lamps");
    Vehicle[i][Exhaust] = dini_Int(Autodatei,"Exhaust");
    Vehicle[i][Stereo] = dini_Int(Autodatei,"Stereo");
    Vehicle[i][Hydraulics] = dini_Int(Autodatei,"Hydraulics");
    Vehicle[i][VentRight] = dini_Int(Autodatei,"VentRight");
    Vehicle[i][VentLeft] = dini_Int(Autodatei,"VentLeft");
    Vehicle[i][FrontBumper] = dini_Int(Autodatei,"FrontBumper");
    Vehicle[i][RearBumper] = dini_Int(Autodatei,"RearBumper");
    car[i]=CreateVehicle(Vehicle[i][modelid],Vehicle[i][posx],Vehicle[i][posy],Vehicle[i][posz]+1.5,Vehicle[i][posa],-1,-1,-1);
    SetVehicleNumberPlate(car[i],dini_Get(Autodatei,"Nummernschild"));
    SetVehicleHealth(car[i],Vehicle[i][HP]);
    SetVehicleParamsEx(car[i],Vehicle[i][engine],Vehicle[i][lights],0,Vehicle[i][Abgeschlossen],Vehicle[i][bonnet],Vehicle[i][boot],0);
    if(Vehicle[i][Paintjob] >= 0)
    {
    ChangeVehiclePaintjob(car[i],Vehicle[i][Paintjob]);
    }
    if(Vehicle[i][Farbe1] >= 0 || Vehicle[i][Farbe2] >= 0)
    {
    ChangeVehicleColor(car[i],Vehicle[i][Farbe1],Vehicle[i][Farbe2]);
    }
    if(Vehicle[i][Spoiler] >= 1000) { AddVehicleComponent(car[i],Vehicle[i][Spoiler]); }
    if(Vehicle[i][Hood] >= 1000) { AddVehicleComponent(car[i],Vehicle[i][Hood]); }
    if(Vehicle[i][Roof] >= 1000) { AddVehicleComponent(car[i],Vehicle[i][Roof]); }
    if(Vehicle[i][Sideskirt] >= 1000) { AddVehicleComponent(car[i],Vehicle[i][Sideskirt]); }
    if(Vehicle[i][Lamps] >= 1000) { AddVehicleComponent(car[i],Vehicle[i][Lamps]); }
    if(Vehicle[i][Nitro] >= 1000) { AddVehicleComponent(car[i],Vehicle[i][Nitro]); }
    if(Vehicle[i][Exhaust] >= 1000) { AddVehicleComponent(car[i],Vehicle[i][Exhaust]); }
    if(Vehicle[i][Wheels] >= 1000) { AddVehicleComponent(car[i],Vehicle[i][Wheels]); }
    if(Vehicle[i][Stereo] >= 1000) { AddVehicleComponent(car[i],Vehicle[i][Stereo]); }
    if(Vehicle[i][Hydraulics] >= 1000) { AddVehicleComponent(car[i],Vehicle[i][Hydraulics]); }
    if(Vehicle[i][FrontBumper] >= 1000) { AddVehicleComponent(car[i],Vehicle[i][FrontBumper]); }
    if(Vehicle[i][RearBumper] >= 1000) { AddVehicleComponent(car[i],Vehicle[i][RearBumper]); }
    if(Vehicle[i][VentRight] >= 1000) { AddVehicleComponent(car[i],Vehicle[i][VentRight]); }
    if(Vehicle[i][VentLeft] >= 1000) { AddVehicleComponent(car[i],Vehicle[i][VentLeft]); }
    }
    }
    Erstellen tu ich dir fahrzeuge per dcmd und folgendem codeausschnitt:
    format(Autodatei,50,"/Autos/%d.txt",globale[nextcarID]);
    GetPlayerPos(playerid,x,y,z);
    GetPlayerFacingAngle(playerid,Float:a);
    dini_Create(Autodatei);
    dini_IntSet(Autodatei,"modelid",model);
    dini_FloatSet(Autodatei,"HP",1000.00);
    dini_FloatSet(Autodatei,"posx",x);
    dini_FloatSet(Autodatei,"posy",y);
    dini_FloatSet(Autodatei,"posz",z);
    dini_FloatSet(Autodatei,"posa",a);
    dini_IntSet(Autodatei,"Abgeschlossen",1);
    dini_IntSet(Autodatei,"engine",0);
    dini_IntSet(Autodatei,"alarm",0);
    dini_IntSet(Autodatei,"lights",0);
    dini_IntSet(Autodatei,"boot",0);
    dini_IntSet(Autodatei,"bonnet",0);
    dini_IntSet(Autodatei,"Farbe1",color1);
    dini_IntSet(Autodatei,"Farbe2",color2);
    dini_IntSet(Autodatei,"Paintjob",-1);
    dini_Set(Autodatei,"Nummernschild",nummernschild);
    dini_IntSet(Autodatei,"Spoiler",GetVehicleComponentInSlot(globale[nextcarID],0));
    dini_IntSet(Autodatei,"Hood",GetVehicleComponentInSlot(globale[nextcarID],1));
    dini_IntSet(Autodatei,"Roof",GetVehicleComponentInSlot(globale[nextcarID],2));
    dini_IntSet(Autodatei,"Sideskirt",GetVehicleComponentInSlot(globale[nextcarID],3));
    dini_IntSet(Autodatei,"Lamps",GetVehicleComponentInSlot(globale[nextcarID],4));
    dini_IntSet(Autodatei,"Nitro",GetVehicleComponentInSlot(globale[nextcarID],5));
    dini_IntSet(Autodatei,"Exhaust",GetVehicleComponentInSlot(globale[nextcarID],6));
    dini_IntSet(Autodatei,"Wheels",GetVehicleComponentInSlot(globale[nextcarID],7));
    dini_IntSet(Autodatei,"Stereo",GetVehicleComponentInSlot(globale[nextcarID],8));
    dini_IntSet(Autodatei,"Hydraulics",GetVehicleComponentInSlot(globale[nextcarID],9));
    dini_IntSet(Autodatei,"FrontBumper",GetVehicleComponentInSlot(globale[nextcarID],10));
    dini_IntSet(Autodatei,"RearBumper",GetVehicleComponentInSlot(globale[nextcarID],11));
    dini_IntSet(Autodatei,"VentRight",GetVehicleComponentInSlot(globale[nextcarID],12));
    dini_IntSet(Autodatei,"VentLeft",GetVehicleComponentInSlot(globale[nextcarID],13));
    nextcarid = globale[nextcarID];
    car[nextcarid]=CreateVehicle(model, x, y, z+3, 0, color1, color2, -1);
    SetVehicleNumberPlate(car[nextcarid],dini_Get(Autodatei,"Nummernschild"));
    Vehicle[nextcarid][modelid] = dini_Int(Autodatei,"modelid");
    Vehicle[nextcarid][HP] = dini_Int(Autodatei,"HP");
    format(Vehicle[nextcarid][Nummernschild],50,dini_Get(Autodatei,"Nummernschild"));
    Vehicle[nextcarid][Farbe1] = dini_Int(Autodatei,"Farbe1");
    Vehicle[nextcarid][Farbe2] = dini_Int(Autodatei,"Farbe2");
    Vehicle[nextcarid][Paintjob] = dini_Int(Autodatei,"Paintjob");
    Vehicle[nextcarid][posx] = dini_Int(Autodatei,"posx");
    Vehicle[nextcarid][posy] = dini_Int(Autodatei,"posy");
    Vehicle[nextcarid][posz] = dini_Int(Autodatei,"posz");
    Vehicle[nextcarid][posa] = dini_Int(Autodatei,"posa");
    Vehicle[nextcarid][Abgeschlossen] = dini_Int(Autodatei,"Abgeschlossen");
    Vehicle[nextcarid][engine] = dini_Int(Autodatei,"engine");
    Vehicle[nextcarid][bonnet] = dini_Int(Autodatei,"bonnet");
    Vehicle[nextcarid][alarm] = dini_Int(Autodatei,"alarm");
    Vehicle[nextcarid][lights] = dini_Int(Autodatei,"lights");
    Vehicle[nextcarid][boot] = dini_Int(Autodatei,"boot");
    Vehicle[nextcarid][Spoiler] = dini_Int(Autodatei,"Spoiler");
    Vehicle[nextcarid][Wheels] = dini_Int(Autodatei,"Wheels");
    Vehicle[nextcarid][Nitro] = dini_Int(Autodatei,"Nitro");
    Vehicle[nextcarid][Roof] = dini_Int(Autodatei,"Roof");
    Vehicle[nextcarid][Hood] = dini_Int(Autodatei,"Hood");
    Vehicle[nextcarid][Sideskirt] = dini_Int(Autodatei,"Sideskirt");
    Vehicle[nextcarid][Lamps] = dini_Int(Autodatei,"Lamps");
    Vehicle[nextcarid][Exhaust] = dini_Int(Autodatei,"Exhaust");
    Vehicle[nextcarid][Stereo] = dini_Int(Autodatei,"Stereo");
    Vehicle[nextcarid][Hydraulics] = dini_Int(Autodatei,"Hydraulics");
    Vehicle[nextcarid][VentRight] = dini_Int(Autodatei,"VentRight");
    Vehicle[nextcarid][VentLeft] = dini_Int(Autodatei,"VentLeft");
    Vehicle[nextcarid][FrontBumper] = dini_Int(Autodatei,"FrontBumper");
    Vehicle[nextcarid][RearBumper] = dini_Int(Autodatei,"RearBumper");
    SetVehicleHealth(nextcarid,Vehicle[nextcarid][HP]);
    SetVehicleParamsEx(nextcarid,Vehicle[nextcarid][engine],Vehicle[nextcarid][lights],0,Vehicle[nextcarid][Abgeschlossen],Vehicle[nextcarid][bonnet],Vehicle[nextcarid][boot],0);
    globale[nextcarID] ++;

    Das mach ich der befehl um lichter an zu machen sieht so aus
    case 3:
    {
    switch(Vehicle[veh][lights])
    {
    case 1:
    {
    Vehicle[veh][lights] = 0;
    dini_IntSet(Autodatei,"lights",0);
    SetVehicleParamsEx(car[veh],Vehicle[veh][engine],Vehicle[veh][lights],0,Vehicle[veh][Abgeschlossen],Vehicle[veh][bonnet],Vehicle[veh][boot],0);
    SendClientMessage(playerid,COLOR_RED, "Licht aus");
    return 1;
    }
    case 0:
    {
    Vehicle[veh][lights] = 1;
    dini_IntSet(Autodatei,"lights",1);
    SetVehicleParamsEx(car[veh],Vehicle[veh][engine],Vehicle[veh][lights],0,Vehicle[veh][Abgeschlossen],Vehicle[veh][bonnet],Vehicle[veh][boot],0);
    SendClientMessage(playerid,COLOR_GREEN, "Licht an");
    return 1;
    }//edit kein klammer fehler copy und past fehler
    nur sobald ich mit ihm hier die motorhaube öffne gehen lichter aus (obwohl variable auf 1 beibt


    case 2:
    {
    switch(Vehicle[veh][boot])
    {
    case 1:
    {
    Vehicle[veh][boot] = 0;
    dini_IntSet(Autodatei,"boot",0);
    SetVehicleParamsEx(car[veh],Vehicle[veh][engine],Vehicle[veh][lights],,0,Vehicle[veh][Abgeschlossen],Vehicle[veh][bonnet],Vehicle[veh][boot],0);
    SendClientMessage(playerid,COLOR_RED, "Kofferraum zu");
    return 1;
    }
    case 0:
    {
    Vehicle[veh][boot] = 1;
    dini_IntSet(Autodatei,"boot",1);
    SetVehicleParamsEx(car[veh],Vehicle[veh][engine],Vehicle[veh][lights],,0,Vehicle[veh][Abgeschlossen],Vehicle[veh][bonnet],Vehicle[veh][boot],0);
    SendClientMessage(playerid,COLOR_GREEN, "Kofferraum auf");
    return 1;
    }
    }
    }selber befehl


    Ich bin so unglaublich blind hat sich geklärt, wird zeit das ich schlafen gehe

    Ich habe nun ein kleines Update gemacht, man kann auf meinem server nun zur MOTORHAUBE und dem KOFFERRAUM auch noch LICHT und ALARMANLAGE steiern leider musste ih feststellen, das die funktion SetVerhicle ParamsEx spinnt, sie ignoriert alles und somit ist auch schon der motor zu früh an, weis einer was ich meine oder ist da ein bekonnter bug?
    //EDIT nun geht es allerding wenn ich SetVehicleParamsEx ausführe während lichter eingeschaltet sind, schalten siese sih aus

    mit dem state ist es nicht ganz getan


    also es soll eine abfrage geben und jenachdem wie viele leute in dem auto sind und welche ids die spieler haben soll anderst ausgewertet werden
    verstehst nun jmd

    Guten Abend Community,


    meine Aufgabe ist es, heraus zu finden ob und wer im auto vehicleid sitzt. Bisher kann ich nur herausfinden auf welchem Sitz der Spieler ist, da das bei mir aber anderstrum ist, welcher Spieler ist auf dem Sitz.

    Wie gesagt ich habe mich mit beweglichen objekten noch nicht befassen müssen also es gibt bestimmt eine funktion die objekte von / zu bewegt wie mittlerweile eine cammera beweglich ist

    Mit CreateObject hab ich net viel zu tun aber bei den autos, findet ihr nicht auch er hat den autos Waffen gegeben ? :D
    Bei den autos ist folgendes zu viel
    ,0,0,0
    AddStaticVehicleEx(411,358.2448,-2468.8838,29.8859,87.1893,0,0,0,0,0,0); // 1 Falsch
    AddStaticVehicleEx(411,358.2448,-2468.8838,29.8859,87.1893,0,0,60); // 1 Richtig
    EIDT: Peinlichpeinlich, ich hatte auch ein fehler so ists richtig

    Ich habe sowas noch nie gemacht aber ich würde es wie folgt machen:


    SetObjectRot(PDTor[0],0, 90, 90);//schranke zu
    Nun ein timer setzen, der die schranke immer ein Stürck mehr öffnet, damit das flüssig läuft stelle den timer auf 1000/25=40
    Das ist villeicht server auslastend, so geht die schranke mit 25 FPS immer ein stück mehr zu.
    Die Koordinaten um die schranke öffnet musst du natürlich auch durch 25 teilen.

    Ich denke, wenn es sich um eine größere Summe handeln würde (laut steuergesetz 400-500€) dann wil der Staat wissen was wir treiben, aber es geht hier um nichtmal 100€ auf die Hand vondaher hat das financamt nix.