Beiträge von Mogly1

    ich meinn ja
    mach mal das
    new vehicle = GetPlayerVehicleID(hitid);
    zu das
    new vehicle = hitid;


    weil GetPlayerVehicleID ist doch nur für palyerid baer die hitid ist ja schon die carid


    Bzw.
    mach mal das



    if(copangeschossen[playerid] == 0)
    {
    if(hittype == BULLET_HIT_TYPE_VEHICLE)
    {
    for(new a = 0; a < sizeof(lspdcar); a++)
    {
    print("a");
    if(hitid == lspdcar[a])return WantedGebenWegenBeschuss(playerid,hitid);
    }
    for(new b = 0; b < sizeof(sfpdcars); b++)
    {
    print("b");
    if(hitid== sfpdcars[b])return WantedGebenWegenBeschuss(playerid,hitid);
    }
    }
    }
    else { return 1; }
    stock WantedGebenWegenBeschuss(playerid,vehicle)
    {
    print("c");
    for(new i; i < MAX_PLAYERS; i++)
    {
    print("d");
    if(Spieler[i][Fraktion] != 1)continue;
    if(IsPlayerInVehicle(i, vehicle))
    {
    print("e");
    new string[128];
    new AngriffaufBeamtenFahrzeug[128] = "Angriff auf ein Beamtenfahrzeug";
    Spieler[playerid][Wanteds] += 1;
    Spieler[playerid][WantedGrund] = AngriffaufBeamtenFahrzeug;
    SetTimerEx("copangeschossentimer",1000*60*2,0,"i",playerid);
    copangeschossen[playerid] = 1;
    format(string,sizeof(string),"Verbrecher %s hat 1 Wanted erhalten, Verbrechen: Angriff auf ein Beamtenfahrzeug",SpielerName(playerid));
    SCM(playerid,STEALTH_ORANGE,"Du hast ein 1 Wanted erhalten, Verbrechen: Angriff auf einen Beamtenfahrzeug");
    SendFamilyMessage(1, STEALTH_ORANGE, string);

    print("done");
    return 1;
    }
    }
    return 1;
    }

    und sag mal biss welchen buchtsateb es geht???
    //überarbeitet 2

    Warum willst du das machen?
    bzw was ist mit Speichern?
    und das mit der Sekunde wegploppen liebt an diesen Schnipsel
    if(hInfo[id][h_pickup] != -1) {DestroyPickup(hInfo[id][h_pickup]);}if(hInfo[id][h_text] != Text3D:-1) {Delete3DTextLabel(hInfo[id][h_text]);}
    Und ausserdem Wegen dem hier...
    for(new i=0; i<sizeof(hInfo); i++) { OnHausesLoad(); updateHaus(i); }
    Du lässt also OnHausesLoad(); um die 100-500 mal ausführen je nach dem wie viele häuser du hast???
    Also du lässt in einer schleife ne näste schleife machen HÄÄÄ
    machd as mal so XD
    forward Hausupdate();public Hausupdate(){ for(new i=0; i<sizeof(hInfo); i++) { updateHaus(i); } OnHausesLoad(); return 1;}


    wobei vergiss dass ich würd einfach so amchen XD



    forward Hausupdate();
    public Hausupdate()
    {
    OnHausesLoad();
    return 1;
    }


    updateHaus(id)
    {
    new string[128];
    if(hInfo[id][h_pickup] != -1)
    {
    DestroyPickup(hInfo[id][h_pickup]);
    }
    if(hInfo[id][h_text] != Text3D:-1)
    {
    Delete3DTextLabel(hInfo[id][h_text]);
    }
    if(!strlen(hInfo[id][h_besitzer]))
    {
    hInfo[id][h_pickup]=CreatePickup(1273, 1, hInfo[id][h_x], hInfo[id][h_y], hInfo[id][h_z], -1);
    format(string,sizeof(string), "Zum Verkauf\nKosten: %i$\n/hauskaufen", hInfo[id][h_preis]);
    hInfo[id][h_text]=Create3DTextLabel(string, COLOR_RED, hInfo[id][h_x], hInfo[id][h_y], hInfo[id][h_z], 10, 0, 1);
    }
    else
    {
    hInfo[id][h_pickup]=CreatePickup(1239, 1, hInfo[id][h_x], hInfo[id][h_y], hInfo[id][h_z], -1);
    format(string,sizeof(string), "Besitzer: %s\n/enter", hInfo[id][h_besitzer]);
    hInfo[id][h_text]=Create3DTextLabel(string, COLOR_BUSBLUE, hInfo[id][h_x], hInfo[id][h_y], hInfo[id][h_z], 10, 0, 1);
    }
    return 1;
    }


    public OnHausesLoad()
    {
    new num_rows;
    cache_get_row_count(num_rows);
    if(!num_rows)return 1;
    for(new i=0; i<num_rows; i++)
    {
    new id=getFreeHausID();
    cache_get_value_name_float(i, "h_x", hInfo[id][h_x]); //Float
    cache_get_value_name_float(i, "h_y", hInfo[id][h_y]); //Float
    cache_get_value_name_float(i, "h_z", hInfo[id][h_z]); //Float
    cache_get_value_name_float(i, "ih_x", hInfo[id][ih_x]); //Float
    cache_get_value_name_float(i, "ih_y", hInfo[id][ih_y]); //Float
    cache_get_value_name_float(i, "ih_z", hInfo[id][ih_z]); //Float
    cache_get_value_name_int(i, "h_interior", hInfo[id][h_interior]); //Float
    new tmp_name[MAX_PLAYER_NAME];
    cache_get_value_name(i, "besitzer", hInfo[id][h_besitzer]); //Float
    strmid(hInfo[id][h_besitzer], tmp_name, 0, sizeof(tmp_name), sizeof(tmp_name));
    cache_get_value_name_int(i, "id",hInfo[id][h_id]); //Float
    cache_get_value_name_int(i, "h_preis",hInfo[id][h_preis]); //Float
    updateHaus(id);
    }
    return 1;
    }

    Wobei ich wiegesagt nicht ganz verstehe warum du die Häuser nochmal von der Datenbank auslsesen lassen willst...

    Ja XD
    evt so fehler mal verpessert...

    Unter onplayerweaponshot:
    if(copangeschossen[playerid] == 0)
    {
    if(hittype == BULLET_HIT_TYPE_VEHICLE)
    {
    for(new a = 0; a < sizeof(lspdcar); a++)
    {
    if(hitid == lspdcar[a])return WantedGebenWegenBeschuss(playerid,vehicle);
    }
    for(new b = 0; b < sizeof(sfpdcars); b++)
    {
    if(hitid== sfpdcars[b])return WantedGebenWegenBeschuss(playerid,vehicle);
    }
    }
    neuer stock
    stock WantedGebenWegenBeschuss(playerid,vehicle)
    {
    for(new i; i < MAX_PLAYERS; i++)
    {
    if(Spieler[i][Fraktion] != 1)continue;
    if(IsPlayerInVehicle(i, vehicle))
    {
    new string[128];
    new AngriffaufBeamtenFahrzeug[128] = "Angriff auf ein Beamtenfahrzeug";
    Spieler[playerid][Wanteds] += 1;
    Spieler[playerid][WantedGrund] = AngriffaufBeamtenFahrzeug;
    SetTimerEx("copangeschossentimer",1000*60*2,0,"i",playerid);
    copangeschossen[playerid] = 1;
    format(string,sizeof(string),"Verbrecher %s hat 1 Wanted erhalten, Verbrechen: Angriff auf ein Beamtenfahrzeug",SpielerName(playerid));
    SCM(playerid,STEALTH_ORANGE,"Du hast ein 1 Wanted erhalten, Verbrechen: Angriff auf einen Beamtenfahrzeug");
    SendFamilyMessage(1, STEALTH_ORANGE, string);
    return 1;
    }
    }
    return 1;
    }

    Du würdest dich zwar über Positives feedback freuen aber nunja...
    Ich finde den boden etwas eintönig und dann auf einmal rasen mhhm so als wäre da nen grenze.
    2 gebäude mahh und ein paar tische da ist noch so viel platz...
    also mahh 3/10

    Hey so evt.?



    Unter onplayerweaponshot:
    if(copangeschossen[playerid] == 0)
    {
    if(hittype == BULLET_HIT_TYPE_VEHICLE)
    {
    new vehicle = GetPlayerVehicleID(hitid);
    for(new a = 0; a < sizeof(lspdcar); a++)
    {
    if(vehicle == lspdcar[a])return WantedGebenWegenBeschuss(playerid,vehicle);
    }
    for(new b = 0; b < sizeof(sfpdcars); b++)
    {
    if(vehicle == sfpdcars[b])return WantedGebenWegenBeschuss(playerid,vehicle);
    }
    }
    neuer stock
    stock WantedGebenWegenBeschuss(playerid,vehicle)
    {
    for(new i; i < MAX_PLAYERS; i++)
    {
    if(Spieler[i][Fraktion] != 1)continue;
    if(IsPlayerInVehicle(i, vehicle))
    {
    new string[128];
    new AngriffaufBeamtenFahrzeug[128] = "Angriff auf ein Beamtenfahrzeug";
    Spieler[playerid][Wanteds] += 1;
    Spieler[playerid][WantedGrund] = AngriffaufBeamtenFahrzeug;
    SetTimerEx("copangeschossentimer",1000*60*2,0,"i",playerid);
    copangeschossen[playerid] = 1;
    format(string,sizeof(string),"Verbrecher %s hat 1 Wanted erhalten, Verbrechen: Angriff auf ein Beamtenfahrzeug",SpielerName(playerid));
    SCM(playerid,STEALTH_ORANGE,"Du hast ein 1 Wanted erhalten, Verbrechen: Angriff auf einen Beamtenfahrzeug");
    SendFamilyMessage(1, STEALTH_ORANGE, string);
    return 1;
    }
    }
    return 1;
    }

    hey check mal soaus evt ;D
    hab mal nocha bfrage mit ==0 gemacht wenn nicht nötig amch es wieder raus



    public OnPlayerTakeDamage(playerid, issuerid, Float: amount, weaponid, bodypart)
    {
    if(issuerid != INVALID_PLAYER_ID)
    {


    PlayerPlaySound(issuerid,17802,0.0,0.0,0.0);
    PlayerPlaySound(playerid,17802,0.0,0.0,0.0);

    if(AngeschossenShop[playerid]==0)
    {
    AngeschossenShop[playerid] = 1;
    SetTimerEx("angeschossenshop",1000*15,0,"i",playerid);
    }

    if(Angeschossen[playerid]==0)
    {
    Angeschossen[playerid] = 1;
    SetTimerEx("angeschossen",1000*10,0,"i",playerid);
    }


    new string[300];
    new da, mont, yea, hou, minut;
    gettime(hou, minut);
    getdate(da, mont, yea);
    format(string,sizeof(string),"%s hat %s angegriffen. Schaden: %f, Waffe: %s(ID: %d) || Date: %d.%d.%d Time: %02d:%02d",SpielerName(issuerid),SpielerName(playerid),amount,aWeaponNames[weaponid-400],weaponid,da, mont, yea, hou, minut);
    MakeDamageLog(string);

    if(Spieler[playerid][Fraktion] == 1 || Spieler[playerid][Fraktion] == 2)
    {
    if(Spieler[issuerid][Fraktion] != 1 && Spieler[issuerid][Fraktion] != 2)
    {
    new AngriffaufBeamten[128] = "Angriff auf einen Beamten";
    Spieler[issuerid][Wanteds] += 1;
    Spieler[issuerid][WantedGrund] = AngriffaufBeamten;
    }
    }
    }
    return 1;
    }

    Hier probier es mal so
    gerade einfach erstellt

    oben halt die türen so setzen
    new knastdoors[8],knastdoorsknucked;
    ongamemodeinit
    {
    knastdoorsknucked=0;
    knastdoors[0]=CreateObject(19303, 199.46680, 1894.99988, 496.49469, 0.00000, 0.00000, 90.00000); //Knasttuer zu
    knastdoors[1]=CreateObject(19303, 199.42690, 1890.23706, 496.49469, 0.00000, 0.00000, 90.00000); //Knasttuer zu
    knastdoors[2]=CreateObject(19303, 199.46809, 1885.28723, 496.49469, 0.00000, 0.00000, 90.00000); //Knasttuer zu
    knastdoors[3]=CreateObject(19303, 199.47490, 1880.59814, 496.49469, 0.00000, 0.00000, 90.00000); //Knasttuer zu
    knastdoors[4]=CreateObject(19303, 206.62250, 1880.52808, 496.46170, 0.00000, 0.00000, 90.00000); //Knasttuer zu
    knastdoors[5]=CreateObject(19303, 206.57224, 1885.49341, 496.46170, 0.00000, 0.00000, 90.00000); //Knasttuer zu
    knastdoors[6]=CreateObject(19303, 206.58618, 1890.30164, 496.46170, 0.00000, 0.00000, 90.00000); //Knasttuer zu
    knastdoors[7]=CreateObject(19303, 206.58693, 1895.00525, 496.46170, 0.00000, 0.00000, 90.00000); //Knasttuer zu


    }


    ocmd:knastdoor(playerid,params[])
    {
    if()//wenn er Whelemann ist
    {
    if(!ispalyerinrangeofPoint)return SendClientMessage(palyerid,rot,"Du kannst hier nigs machen");
    if(knastdoorsknucked==0)
    {
    knastdoorsknucked=1;
    for(new i; i<MAX_PLAYERS;i++)
    {
    if()//wenn der spieler Cop oder gefangener ist
    {
    SendClientMessage(i,farbe, "Ein Wheelman hat die Knast Türen auf gemacht ihr habt 5 Sekunden Zeit raus zu gehen");
    }
    }
    Moveopen();
    }
    else
    {
    SendClientMessage(i,farbe, "Türen sind schon geöffnet");
    }


    }
    return 1;
    }


    stock Moveopen()
    {
    //Falls Object move ment zu schnell anpassen
    MoveObject(knastdoors[0], 199.46680, 1894.99988, 499.23184,1.0, 0.00000, 0.00000, 90.00000);
    MoveObject(knastdoors[1], 199.42690, 1890.23706, 499.33591,1.0, 0.00000, 0.00000, 90.00000);
    MoveObject(knastdoors[2], 199.46809, 1885.28723, 499.37720,1.0, 0.00000, 0.00000, 90.00000);
    MoveObject(knastdoors[3], 199.47490, 1880.59814, 499.70712,1.0, 0.00000, 0.00000, 90.00000);
    MoveObject(knastdoors[4], 206.62250, 1880.52808, 499.60370,1.0, 0.00000, 0.00000, 90.00000);
    MoveObject(knastdoors[5], 206.57224, 1885.49341, 499.84753,1.0, 0.00000, 0.00000, 90.00000);
    MoveObject(knastdoors[6], 206.58618, 1890.30164, 499.16940,1.0, 0.00000, 0.00000, 90.00000);
    MoveObject(knastdoors[7], 206.58693, 1895.00525, 499.03336,1.0, 0.00000, 0.00000, 90.00000);
    SetTimer("KnastDoorsMove",5000,false)
    }


    stock Moveclose()
    {
    MoveObject(knastdoors[0], 199.46680, 1894.99988, 496.49469,1.0, 0.00000, 0.00000, 90.00000);
    MoveObject(knastdoors[1], 199.42690, 1890.23706, 496.49469,1.0, 0.00000, 0.00000, 90.00000);
    MoveObject(knastdoors[2], 199.46809, 1885.28723, 496.49469,1.0, 0.00000, 0.00000, 90.00000);
    MoveObject(knastdoors[3], 199.47490, 1880.59814, 496.49469,1.0, 0.00000, 0.00000, 90.00000);
    MoveObject(knastdoors[4], 206.62250, 1880.52808, 496.46170,1.0, 0.00000, 0.00000, 90.00000);
    MoveObject(knastdoors[5], 206.57224, 1885.49341, 496.46170,1.0, 0.00000, 0.00000, 90.00000);
    MoveObject(knastdoors[6], 206.58618, 1890.30164, 496.46170,1.0, 0.00000, 0.00000, 90.00000);
    MoveObject(knastdoors[7], 206.58693, 1895.00525, 496.46170,1.0, 0.00000, 0.00000, 90.00000);
    knastdoorsknucked=0;
    //falls gewollt
    for(new i; i<MAX_PLAYERS;i++)
    {
    if()//wenn der spieler Cop oder gefangener ist
    {
    SendClientMessage(i,farbe, "Das Zellen System hat wieder alle türen verriegelt");
    }
    }
    }


    forward KnastDoorsMove();
    public KnastDoorsMove()
    {
    Moveclose();
    }