Beiträge von Sharpadox

    Zitat

    Haussytem: Es sollten soow ca 300
    Häuser zum verkauf stehen wo ist egal. Welche auch, sollten aber auch
    villen dabei sein. Und halt normale Häuser. Die Häuser betritt mann auch
    mit Enter. Befehle: /Buyhouse, /sellhouse, /confighouse [auf/zu machen]
    und weiß nicht welche befehle mann noch braucht. Den rest müsst ihr
    wissen !!!.

    Das könnte schwer werden denk ich ;) 300 Häuser sind finde ich zu viele..
    Ich würde bei 50-150 anfangen


    //GANZ OBEN
    new PlayerVehicle[MAX_PLAYERS];
    /////


    COMMAND:v(playerid,params[])
    {
    if(IsPlayerAdmin(playerid)) //Kannst auch deine Adminabfrage
    {
    new String[200], Float:x, Float:y, Float:z, Float:a, vname[20], vehicle = GetVehicleModelIDFromName(vname);
    if(sscanf(params,"s",vname)) return SendClientMessage(playerid, 0xFEFEFEFE, "Tippe: {FFD200}/v {FFFFFF}[NAME] (z.B {FFD200}/v elegy)");
    if(vehicle < 400 || vehicle > 611) return SendClientMessage(playerid, 0xFEFEFEFE, "{FFFFFF}ERROR:{FFD200} Dieses Auto existiert nicht!");
    GetPlayerFacingAngle(playerid, a);
    GetPlayerPos(playerid, x, y, z);
    if(IsPlayerInAnyVehicle(playerid) == 1)
    {
    GetXYInFrontOfPlayer(playerid, x, y, 8);
    }
    else
    {
    GetXYInFrontOfPlayer(playerid, x, y, 5);
    }
    new Float:X,Float:Y,Float:Z, Float:Angle,int1;
    GetPlayerPos(playerid, X,Y,Z);
    GetPlayerFacingAngle(playerid,Angle);
    if(PlayerVehicle[playerid] != 0) { DestroyVehicle(PlayerVehicle[playerid]); }
    PlayerVehicle[playerid] = CreateVehicle(vehicle, x, y, z, a+1, -1, -1, -1);
    LinkVehicleToInterior(PlayerVehicle[playerid],int1);
    PutPlayerInVehicle(playerid, PlayerVehicle[playerid], 0);
    format(String, sizeof(String), "{FFFFFF}Du hast ein {FFD200}%s {FFFFFF}Gespawnt.", FahrzeugName[vehicle - 400]);
    SendClientMessage(playerid,0xFEFEFEFE, String);
    return 1;
    }
    return 1;
    }


    stock GetVehicleModelIDFromName(vname[])
    {
    for(new i = 0; i < 211; i++)
    {
    if(strfind(FahrzeugName[i], vname, true) != -1)
    return i + 400;
    }
    return -1;
    }
    stock GetXYInFrontOfPlayer(playerid, &Float:x2, &Float:y2, Float:distance)
    {
    new Float:a;
    GetPlayerPos(playerid, x2, y2, a);
    GetPlayerFacingAngle(playerid, a);
    if(GetPlayerVehicleID(playerid))
    {
    GetVehicleZAngle(GetPlayerVehicleID(playerid), a);
    }
    x2 += (distance * floatsin(-a, degrees));
    y2 += (distance * floatcos(-a, degrees));
    }

    Hier, das ist nicht meins, aber aus Filterscript ;)



    if(strcmp(cmd, "/v", true, 10) == 0)
    {
    if(IsPlayerAdmin(playerid))
    {
    new String[200];
    new tmp[256];
    new Float:x, Float:y, Float:z;
    tmp = strtok(cmdtext, idx);
    if(!strlen(tmp)) return SendClientMessage(playerid, COLOR_WHITE, "Tippe: {FFD200}/v {FFFFFF}[NAME] (z.B {FFD200}/v elegy)");
    new vehicle = GetVehicleModelIDFromName(tmp);
    if(vehicle < 400 || vehicle > 611) return SendClientMessage(playerid, COLOR_YELLOW, "{FFFFFF}ERROR:{FFD200} Dieses Auto existiert nicht!");
    new Float:a;
    GetPlayerFacingAngle(playerid, a);
    GetPlayerPos(playerid, x, y, z);
    if(IsPlayerInAnyVehicle(playerid) == 1)
    {
    GetXYInFrontOfPlayer(playerid, x, y, 8);
    }
    else
    {
    GetXYInFrontOfPlayer(playerid, x, y, 5);
    }
    new Float:X,Float:Y,Float:Z, Float:Angle,int1;
    GetPlayerPos(playerid, X,Y,Z);
    GetPlayerFacingAngle(playerid,Angle);
    if(PlayerVehicle[playerid] != 0) { DestroyVehicle(PlayerVehicle[playerid]); }
    PlayerVehicle[playerid] = CreateVehicle(vehicle, x, y, z, a+1, -1, -1, -1);
    LinkVehicleToInterior(PlayerVehicle[playerid],int1);
    PutPlayerInVehicle(playerid, PlayerVehicle[playerid], 0);
    format(String, sizeof(String), "{FFFFFF}Du hast ein {FFD200}%s {FFFFFF}Gespawnt.", aVehicleNames[vehicle - 400]);
    SendClientMessage(playerid,COLOR_YELLOW, String);
    return 1;
    }
    return 1;
    }



    GetVehicleModelIDFromName(vname[])
    {
    for(new i = 0; i < 211; i++)
    {
    if(strfind(aVehicleNames[i], vname, true) != -1)
    return i + 400;
    }
    return -1;
    }


    stock GetXYInFrontOfPlayer(playerid, &Float:x2, &Float:y2, Float:distance)
    {
    new Float:a;


    GetPlayerPos(playerid, x2, y2, a);
    GetPlayerFacingAngle(playerid, a);


    if(GetPlayerVehicleID(playerid))
    {
    GetVehicleZAngle(GetPlayerVehicleID(playerid), a);
    }


    x2 += (distance * floatsin(-a, degrees));
    y2 += (distance * floatcos(-a, degrees));
    }

    also ich möchte dass man sich mit einem Befehl zu x,y,z teleportieren kann und gleichzeitung interior setzen


    zB "/einaus 500 350 550 3" //3 = Interior


    dann wenn man "symbol" macht, erschein ingame ein pickup, und wenns geht, soll der dann unter scriptfiles in einer pwn geschpeichert werden..


    "CreateObject(1239,1,x,y,z);

    Hey,


    ich wollte zwei Befehle erstelle.
    1. Ein befehl um sich zu "X,Y,Z,Int,Vw" zu Porten
    2. Ein befehl um ein Pickup zu erstellen und abzuspeicher in einer .PWN


    Funktioniert das so? Und wie kann ich machen, dass in einer PWN mehrere Pickups gespeichert werden?


    ocmd:einaus(playerid,params[])
    {
    if(PlayerInfo[playerid][pAdmin] >= 3)
    {
    new Float:X,Float:Y,Float:Z,int,vw;
    if(sscanf(params,"fffii",X,Y,Z,int,vw)) return SendClientMessage(playerid,Grau,"[Benutze]: /einaus [X] [Y] [Z] [Int] [VW]");
    SetPlayerPos(playerid, X, Y, Y);
    SetPlayerInterior(playerid, int);
    SetPlayerVirtualWorld(playerid, vw);
    new str[128], strr[128];
    format(str,sizeof(str),"X: %0.3f Y: %.3f Z: %.3f",X,Y,Z);
    format(strr,sizeof(strr),"Interior: %i VirtualWorld: %i",int,vw);
    SendClientMessage(playerid,bBlau,"Du hast dich teleportiert!");
    SendClientMessage(playerid,bBlau,str);
    SendClientMessage(playerid,bBlau,strr);
    return 1;
    }
    SendClientMessage(playerid,aRot,"[Info]: Du bist nicht befugt!");
    return 1;
    }
    ocmd:symbol(playerid,params[])
    {
    if(PlayerInfo[playerid][pAdmin] >= 3)
    {
    new kommi[64], Float:X,Float:Y,Float:Z;
    if(sscanf(params,"s",kommi)) SendClientMessage(playerid,Grau,"[Benutze]: /symbol [Kommentar]");
    GetPlayerPos(playerid, X, Y, Y);
    CreatePickup(1239, 1, X, Y, Z);
    if(!dini_Exists("/Pickups/pickups.pwn"))
    {
    dini_Create("/Pickups/pickups.pwn");
    }
    if(dini_Exists("/Pickups/pickups.pwn"))
    {
    new str[128];
    format(str,sizeof(str),"CreatePickup(1239,1,%.6f,%.6f,%.6f); //%s",X,Y,Z,kommi);
    dini_Set("/Pickups/pickups.pwn","Pickup",str);
    return 1;
    }
    return 1;
    }
    SendClientMessage(playerid,aRot,"[Info]: Du bist nicht befugt!");
    return 1;
    }

    Okay, ich glaube das reicht erstmal ^^ ist ja so schon viel arbeit...
    Was empfehlt ihr zum definieren der Eingänge??
    Vielleicht so?:



    new bsnenter, shenter, wsenter; //usw


    oder eher so?
    new eingang[];



    Code
    //===// LISTE //===//
    1 || - LSPD
    2 || - Arbeitsamt
    3 || - Stadthalle
    4 || - Bank
    5 || - 24/7 Shops
    6 || - Fraktionsbasen
    7 || - Fast Food Shops
    //===// ==== //===//

    Bin mir nicht sicher, aber ich glaube so: ^^



    new vid = GetPlayerVehicleID(playerid);
    GetVehicleParamsEx(vid,engine, lights, alarm, doors, bonnet, boot, objective);
    if(engine == VEHICLE_PARAMS_OFF)
    {
    //Tanken
    }