Beiträge von PizzaHaus

    Er wollte auch nicht die codes von deiner map.


    Zu dem anderen: Wenn du doch bei dem Objekt bist das in deinem Interior ist kannst du doch durch den ausgang, der in deinem interior ja vorhanden sein muss, rausgehen ?

    Also wenn ich eine Stadthalle erstelle (BIZ) muss ich Draußen (neben der Tür von Stadthalle sein) dannach BIZ erstellen diesdas dann peer Datenbank die
    INTX
    INTY
    INTZ
    ändern und wenn ich die ganz normale Stadthalle mache wird das ja nicht angezeigt ...

    Hallo ich habe ein Problem undzwar mein Stadthalle Interior ist gemappt und wenn ich die IntX, IntY IntZ eingebe kommt man in das ganz normale Stadthalle? und nicht diese was gemappt wurde wie kann ich das machen das man die Stadthalle betretet das da auch gemappt ist?

    Ich weiß zwar nicht wieso einige hier so provokant antworten, aber das ist ein anderes Thema.


    Zeig uns doch mal bitte die Code-Umgebung, außerdem ist in deiner Datenbank nirgendwo ein Wert mit der Interior-ID 3 gesetzt. Und wenn ich das richtige Bankinterior im Kopf habe, müsste dieses die Interior-ID 0 haben, und im Vergleich zur äußeren Welt nicht verändert werden ;)

    Also wenn ich die Interior ändere Fällt man vom Himmel runter aber wenn man zur Base fährt und rein geht ist man in der Alte San News Base (wird nicht geändert)


    lel

    Wir möchten den Code wie sie in die Bank kommen


    Den /enter Befehl oder wie sie auch immer rein kommen!!!

    if(strcmp(cmd, "/enter", true) == 0){if(PlayerInfo[playerid][wurdegetroffen]!=0){SendClientMessage(playerid, COLOR_RED, "Du wurdest gerade eben angeschossen und kannst nicht rein... (2 Sekunden Wartezeit)");return 1;}EnterHouse(playerid);return 1;}


    /e


    EnterHOUSE


    public EnterHouse(playerid){
    if(dmarena[playerid] != 0){
    SendClientMessage(playerid, COLOR_RED, "Du musst erst die DM-Arena verlassen ...");
    return 1;
    }


    new stringp1[256];
    for(new i = 0;i < MAX_BIZESs; i++){
    if (IsPlayerInRangeOfPoint(playerid,2.0, Bizes[i][biz_x], Bizes[i][biz_y],Bizes[i][biz_z])){
    if(i == 26 || i == 45 ||i == 46 ||i == 47 || i == 56){
    if(PlayerInfo[playerid][xLevel] == 1){
    SendClientMessage(playerid, COLOR_RED,"Du brauchst mindestens Level 2, um rein zu kommen. (/buylevel)");
    return 1;
    }
    if(PlayerInfo[playerid][xLevel] == 2 || PlayerInfo[playerid][xLevel] == 3 || PlayerInfo[playerid][xLevel] == 4){
    SendClientMessage(playerid, COLOR_RED,"Benutze /buygun, um eine Waffe zu kaufen");
    }
    }


    if(Bizes[i][biz_intx]!=0){
    if(Bizes[i][biz_lock] == 1){
    SendClientMessage(playerid, COLOR_RED,"Das Biz ist zu!");
    return 1;
    }
    if (Bizes[i][biz_eintritt] > GetPlayerEuro(playerid) && PlayerInfo[playerid][xLevel]> 4){
    SendClientMessage(playerid, COLOR_RED,"Du kannst den Eintritt nicht bezahlen!");
    return 1;
    }



    if(i == 48){
    if(Bizes[i][biz_prods] == 0){ SendClientMessage(playerid, COLOR_RED, "Dieses BIZ hat keine Prods. Deswegen kommst du hier nicht rein!"); return 1; }
    Bizes[i][biz_prods]--;
    SetBIZProds(Bizes[i][biz_prods], i);
    GivePlayerGun(playerid, 46, 1);
    }


    if(canenterbiz(playerid, i))
    {
    PlayerInfo[playerid][waittime] = 4;
    playerbizint[playerid] = GetPlayerInterior(playerid);
    GetPlayerPos(playerid, Bizxpos[playerid],Bizypos[playerid], Bizzpos[playerid]);
    biznummer[playerid] = i;
    if(PlayerInfo[playerid][xLevel] > 4) GivePlayerEuro(playerid, -Bizes[i][biz_eintritt]);
    SetPlayerInterior(playerid, Bizes[i][biz_interior]);
    SetPlayerToPoS(playerid, Bizes[i][biz_intx], Bizes[i][biz_inty], Bizes[i][biz_intz]+0.4);
    if(i == 75) SetPlayerVirtualWorld(playerid, 75);
    if(PlayerInfo[playerid][xLevel] > 4)format(stringp1, sizeof(stringp1), "Du hast %d Euro für den Eintritt bezahlt!", Bizes[i][biz_eintritt]);
    if(PlayerInfo[playerid][xLevel] < 3) format(stringp1, sizeof(stringp1), "Als Neuling ist der Eintritt umsonst. Ab Level 3 musst du den normalen Eintrittspreis zahlen!");
    SendClientMessage(playerid, COLOR_GREEN,stringp1);
    imbiz[playerid] = 1;
    bizesids[playerid] = i;
    SendClientMessage(playerid, COLOR_GRAD2, "Schreibe /exit, um das Gebäude zu verlassen");
    if(PlayerInfo[playerid][xLevel] > 4) GeldInDieBiz(Bizes[i][biz_eintritt]/2, i);
    if(PlayerInfo[playerid][xLevel] > 4) serverSettings[sStaatsbank]+=Bizes[i][biz_eintritt]/4;
    PlayerInfo[playerid][enterhouse] = 1;
    }
    }
    else{
    SendClientMessage(playerid, COLOR_RED,"Das Biz hat keinen Innen-Raum!");
    }
    }
    }


    if(IsPlayerInRangeOfPoint(playerid,4.0, hausx[HDD[playerid]], hausy[HDD[playerid]], hausz[HDD[playerid]])){
    if (HausSystem[HDD[playerid]][lock] == 0){
    if(IsPlayerInRangeOfPoint(playerid,4.0, hausx[HDD[playerid]], hausy[HDD[playerid]], hausz[HDD[playerid]])){
    SetPlayerInHouse(playerid,HDD[playerid]);
    SetPlayerVirtualWorld(playerid, HDD[playerid]);
    PlayerInfo[playerid][waittime] = 4;
    PlayerInfo[playerid][enterhouse] = 1;
    }
    }
    else if(IsPlayerAllowedInHouse(playerid,HDD[playerid])==1){
    PlayerInfo[playerid][waittime] = 4;
    SetPlayerInHouse(playerid,HDD[playerid]);
    TogglePlayerControllable(playerid,1);
    SetPlayerVirtualWorld(playerid, HDD[playerid]);
    PlayerInfo[playerid][enterhouse] = 1;
    }
    else{


    MeldungText(playerid, "Die Tür ist abgeschlossen!", 6);
    }
    }


    for (new i=0; i<MAX_GANGSAs; i++){
    if (IsPlayerInRangeOfPoint(playerid,2.5, DFraktion[i][ex], DFraktion[i][ey],DFraktion[i][ez])){



    if(DFraktion[i][fzu] == 0){
    PlayerInfo[playerid][waittime] = 4;
    SetPlayerInterior(playerid, DFraktion[i][eint]);
    SetPlayerToPoS(playerid, DFraktion[i][intx], DFraktion[i][inty], DFraktion[i][intz]+0.5);
    warten[playerid] = 10;
    PlayerInfo[playerid][enterhouse] = 1;
    }
    else{
    if(PlayerInfo[playerid][Team] == i){
    PlayerInfo[playerid][waittime] = 4;
    warten[playerid] = 10;
    SetPlayerInterior(playerid, DFraktion[i][eint]);
    SetPlayerToPoS(playerid, DFraktion[i][intx], DFraktion[i][inty], DFraktion[i][intz]+0.5);
    PlayerInfo[playerid][enterhouse] = 1;
    }
    else{
    if(!IsACop(playerid) && PlayerInfo[playerid][afktime] > 3){
    SendClientMessage(playerid, COLOR_RED,"Das Fraktionshaus ist für andere Mitglieder geschlossen!");
    }
    }
    }
    }
    }


    //Hitmangarage Eingang
    if(IsPlayerInRangeOfPoint(playerid,5.0, serverSettings[sHitmanGarage][0], serverSettings[sHitmanGarage][1], serverSettings[sHitmanGarage][2]) && PlayerInfo[playerid][Team] == 21){
    if(IsPlayerInAnyVehicle(playerid) && GetPlayerVehicleSeat(playerid) == 0){
    new vehicleID = GetPlayerVehicleID(playerid);
    SetVehiclePos(vehicleID, 238.7406, -1508.6156, 981.3649);
    SetVehicleZAngle(vehicleID, 0.5658);
    SetVehicleVirtualWorld(vehicleID, 257);


    for(new i = 0; i < MAX_PLAYERS; i++)
    if(GetPlayerVehicleID(i) == vehicleID) SetPlayerVirtualWorld(i, 257);
    }
    else{
    SetPlayerToPoS(playerid, 238.7406, -1508.6156, 981.3649);
    SetPlayerVirtualWorld(playerid, 257);
    }
    }
    //Hacker Eingang für Garage
    if(IsPlayerInRangeOfPoint(playerid,5.0, serverSettings[sHackerGarage][0], serverSettings[sHackerGarage][1], serverSettings[sHackerGarage][2]) && PlayerInfo[playerid][Team] == 28){
    if(IsPlayerInAnyVehicle(playerid) && GetPlayerVehicleSeat(playerid) == 0){
    new vehicleID = GetPlayerVehicleID(playerid);
    SetVehiclePos(vehicleID, 243.8448,-1191.7313,979.6753);
    SetVehicleZAngle(vehicleID, 267.8630);
    SetVehicleVirtualWorld(vehicleID, 325);


    for(new i = 0; i < MAX_PLAYERS; i++)
    if(GetPlayerVehicleID(i) == vehicleID) SetPlayerVirtualWorld(i, 325);
    }
    else{
    SetPlayerToPoS(playerid, 243.8448,-1191.7313,979.6753);
    SetPlayerVirtualWorld(playerid, 325);
    }
    }


    //Hitmangarage Eingang von Interior
    if(IsPlayerInRangeOfPoint(playerid,3.0, 213.4703, -41.6236, 1002.0234)){
    SetPlayerToPoS(playerid, 224.6339, -1470.4895, 981.7969);
    SetPlayerInterior(playerid, 0);
    SetPlayerVirtualWorld(playerid, 257);
    }


    //Hitmangarage Eingang zur Base
    if(IsPlayerInRangeOfPoint(playerid,3.0, 221.0142, -1475.3643, 981.7969)){
    SetPlayerToPoS(playerid, 210.7625, -41.6598, 1001.8047);
    SetPlayerInterior(playerid, 1);
    SetPlayerVirtualWorld(playerid, 0);
    }


    return 1;
    }

    Natürlich ist der keine Pflicht aber dadurch hätte er sein Problem von Anfang an perfekt erklären können.
    Schönes Beispiel aber, nun gut. Schluss mit Off-Topic. Wie oben schon erwähnt schau dir die Virtuellen Welten an.

    Was willst du denn für ein Code die Bank wird peer Datenbank erstellt! Und die San News Base genau so

    Setze die Spalte "id" in deiner Tabelle auf "AUTO_INCREMENT" (A_I) und ändere das Query zu:
    format(sql, sizeof(sql), "INSERT INTO biz (name,besitzer,x,y,z,kostet) VALUES ('%s','Niemand',%f,%f,%f,%d)",result,spx,spy,spz,player1);


    Dann leere die Tabelle und versuche es erneut.


    so etwa?

    Wenn ich eine neue BIZ erstelle kommt dieser Fehler beim Server.exe ====



    21:30:49] Error-ID: 1062 | Error: Duplicate entry '2' for key 'PRIMARY' | Callback: | Query: INSERT INTO biz (id,name,besitzer,x,y,z,kostet) VALUES (2,'Stadthalle','Niemand',1826.846679,-1301.925659,82.132812,1)


    newbiz


    if(strcmp(cmd, "/newbiz23", true) == 0) {
    if(PlayerInfo[playerid][ALevel] == 1){
    SendClientMessage(playerid, COLOR_GREEN, "Du bist nicht befugt!");
    return 1;
    }


    if(IsPlayerAdmin(playerid)){
    if(PlayerInfo[playerid][ALevel] == 0) {
    MeldungText(playerid, "Du bist nicht befugt!!", 5);
    return 1;
    }


    tmp = strtok(cmdtext, idx);
    if(!strlen(tmp)){
    MeldungText(playerid, "Verwendung: /newbiz [Kosten] [Name]", 6);
    return 1;
    }
    new player1;
    player1 = strval(tmp);


    new length = strlen(cmdtext);
    while ((idx < length) && (cmdtext[idx] <= ' ')){
    idx++;
    }
    new offset = idx;
    new result[128];
    while ((idx < length) && ((idx - offset) < (sizeof(result) - 1))){
    result[idx - offset] = cmdtext[idx];
    idx++;
    }
    result[idx - offset] = EOS;
    tmp = strtok(cmdtext, idx);




    ladebize++;
    new Float: spx, Float: spy, Float: spz;
    GetPlayerPos(playerid, spx, spy,spz);
    new sql[128];
    format(sql, sizeof(sql), "INSERT INTO biz (id,name,besitzer,x,y,z,kostet) VALUES (%d,'%s','Niemand',%f,%f,%f,%d)",ladebize,result,spx,spy,spz,player1);
    mysql_query(sql);
    }
    return 1;
    }

    Also wenn du das 23'te Business erstellst?

    Nein der Befehl heißt einfach so? (newbiz23) der wurde halt so gennant!


    /e


    21:30:49] Error-ID: 1062 | Error: Duplicate entry '2' for key 'PRIMARY' | Callback: | Query: INSERT INTO biz (id,name,besitzer,x,y,z,kostet) VALUES (2,'Stadthalle','Niemand',1826.846679,-1301.925659,82.132812,1)

    Newbiz & newHouse ist glaub ich nicht das gleiche? :P

    AHHHH sry xD


    if(strcmp(cmd, "/newbiz23", true) == 0) {
    if(PlayerInfo[playerid][ALevel] == 1){
    SendClientMessage(playerid, COLOR_GREEN, "Du bist nicht befugt!");
    return 1;
    }


    if(IsPlayerAdmin(playerid)){
    if(PlayerInfo[playerid][ALevel] == 0) {
    MeldungText(playerid, "Du bist nicht befugt!!", 5);
    return 1;
    }


    tmp = strtok(cmdtext, idx);
    if(!strlen(tmp)){
    MeldungText(playerid, "Verwendung: /newbiz [Kosten] [Name]", 6);
    return 1;
    }
    new player1;
    player1 = strval(tmp);


    new length = strlen(cmdtext);
    while ((idx < length) && (cmdtext[idx] <= ' ')){
    idx++;
    }
    new offset = idx;
    new result[128];
    while ((idx < length) && ((idx - offset) < (sizeof(result) - 1))){
    result[idx - offset] = cmdtext[idx];
    idx++;
    }
    result[idx - offset] = EOS;
    tmp = strtok(cmdtext, idx);




    ladebize++;
    new Float: spx, Float: spy, Float: spz;
    GetPlayerPos(playerid, spx, spy,spz);
    new sql[128];
    format(sql, sizeof(sql), "INSERT INTO biz (id,name,besitzer,x,y,z,kostet) VALUES (%d,'%s','Niemand',%f,%f,%f,%d)",ladebize,result,spx,spy,spz,player1);
    mysql_query(sql);
    }
    return 1;
    }