Beiträge von robbi2304

    Schaut supi aus :D



    Mal eine Frage an dich, mir ist aufgefallen bzw der pawn Compiler,


    das du immer wieder die erste schleife verändert hattest,



    also


    for(new id = 0; id < sizeof(cInfo); i++)


    ich habe diese immer wieder auf


    [pwn]for(new id = 0; id < sizeof(cInfo); id++)[/pwn]


    geändert. Hat das einen bestimmten Grund oder nur gewohnheit ?

    Es ist so gewollt das wenn ein Spieler nicht Online ist, auch nicht abgefragt werden kann ob das Fahrzeug diesem Spieler gehört.


    Grundhierfür ist, das Fahrzeuge erst erstellt werden wenn das Passwort Richtig eingegeben wurde.
    Sobald der Spieler Disconnected ist das Fahrzeug auch wieder weg


    Aber der Fehler bestand scheinbar im GetVehicleBesitzer :D.


    Denn jetzt klappt es

    Scheint für mich denke ich in Ordnung zusein aber ich lass mal lieber dich nochmal drauf schauen :D. Du kennst dich damit um einiges besser als ich aus




    GetVehicleBesitzer(vehicelid)
    {
    for(new i = 0; i < sizeof(cInfo); i++)
    {
    if(cInfo[i][id_x] == vehicelid)
    {
    for(new playerid = 0; playerid<MAX_PLAYERS; playerid++)
    {
    if(cInfo[i][besitzer] == playerid) return playerid;
    }
    }
    }
    return 1;
    }

    Das ganze mache ich folgendermaßen




    loadPlayerCars(playerid)
    {
    new query[128];
    format(query,sizeof(query),"SELECT * FROM autos WHERE besitzer='%i'",PlayerInfo[playerid][p_id]);
    mysql_pquery(handle,query,"OnPlayerCarsLoad","i",playerid);
    return 1;
    }



    forward OnPlayerCarsLoad(playerid);
    public OnPlayerCarsLoad(playerid)
    {
    for(new i=0; i<cache_num_rows(); i++)
    {
    new id = getFreeCarID();
    cache_get_value_name_int(i, "id", cInfo[id][db_id] );//Integer
    cache_get_value_name_int(i, "model", cInfo[id][model]);//Integer
    cache_get_value_name_int(i, "besitzer", cInfo[id][besitzer]);//Integer
    cache_get_value_name_float(i, "x", cInfo[id][c_x]); //Float
    cache_get_value_name_float(i, "y", cInfo[id][c_y]);//Float
    cache_get_value_name_float(i, "z", cInfo[id][c_z]);//Float
    cache_get_value_name_float(i, "r", cInfo[id][c_r]);//Float
    cache_get_value_name_int(i, "c1", cInfo[id][color1]);//Integer
    cache_get_value_name_int(i, "c2", cInfo[id][color2]);//Integer
    cache_get_value_name_int(i, "c3", cInfo[id][color3]);//Integer
    cache_get_value_name_int(i, "key", cInfo[id][key]);//Integer
    cache_get_value_name_int(i, "c_gesperrt", cInfo[id][c_gespeert] );//Integer
    if(cInfo[id][c_gespeert] == 0)
    {
    cInfo[id][id_x] = CreateVehicle(cInfo[id][model],cInfo[id][c_x],cInfo[id][c_y],cInfo[id][c_z],cInfo[id][c_r],cInfo[id][color1],cInfo[id][color2],cInfo[id][color3]);
    }
    }
    return 1;
    }

    Ich habe deine Vorlage nun eins zu eins übernommen. Allerdings wird mir nun folgendes angezeigt




    else
    {
    SendClientMessage(playerid,-1,"Dieses Fahrzeug gehört nicht der Fraktion 1 oder einem Spieler.");
    }


    ich weiß ganz erlich nicht was da falsch angegeben wurden sein kann

    Ja klar doch :D




    ocmd:carinfo(playerid,params[])
    {
    if(isACop(playerid))return SendClientMessage(playerid,COLOR_RED,"Nein");
    new string[264],vid,Float:x,Float:y,Float:z,pID;
    if(sscanf(params,"d",vid)) return SendClientMessage(playerid,-1,"/carinfo [CARID]");
    if(vid == INVALID_VEHICLE_ID) return SendClientMessage(playerid,-1,"Ungültige Fahrzeug ID");
    GetVehiclePos(vid,x,y,z);
    if(!IsPlayerInRangeOfPoint(playerid,8,x,y,z)) return SendClientMessage(playerid,-1,"Du bist nicht in der Nähe des Fahrzeugs das du abrufen möchtest!");
    pID = GetVehicleBesitzer(vid);
    for(new id = 0; id < sizeof(cInfo); id++)



    {
    if(cInfo[id][id_x]==vid)
    {
    if(cInfo[id][fraktion]==1)
    {
    format(string,sizeof(string),"Fahrzeug Besitzer: LSPD & Letzter Fahrer: %s. [Fahrzeug ID %i]",LastDriver[vid],vid);
    SendClientMessage(playerid,COLOR_BUSBLUE,string);
    }
    }
    if(cInfo[id][id_x]==vid)
    {
    if(cInfo[id][besitzer])
    {
    new string2[128];
    format(string2,sizeof(string2),"Fahrzeug Besitzer: %s & Letzter Fahrer: %s. [Fahrzeug ID %i]",GetVehicleBesitzer(vid),LastDriver[vid],vid);
    SendClientMessage(playerid,COLOR_BUSBLUE,string2);
    }
    }
    }
    return 1;
    }

    Es kommt immer drauf an von welchen Prozessor du auf einen neuen Prozessor steigen möchtest.
    Hinzu ist die Frage, welche Prozessortypen unterstützt dein Mainboard.


    Im Grunde nimmst du bei den meißten Computern einfach nur den Großen Lüfter auf dem Mainboard ab. !!! Achtung !!!


    wenn du den Lüfter wieder drauf setzt braucht der CPU neue Kühlpaste. Auch wenn du den alten weiterhin verwendest.


    Solltest du dich also für den austausch entschließen, musst du den Prozessor durch einen kleinen Hebel freigeben und kannst ihn vorsichtig mit der Hand raus holen und den neuen einbauen.


    Nenne uns also nun mal deinen Prozessor inkl allen Daten + MainBoard Modell

    Ich scheine es nun nicht für Privat Fahrzeuge hinzukriegen.


    Hier einmal der Code den ich drunter gesetzt habe



    if(cInfo[id][besitzer])
    {
    format(string,sizeof(string),"Fahrzeug Besitzer: %s & Letzter Fahrer: %s. [Fahrzeug ID %i]",GetVehicleBesitzer(vid),LastDriver[vid],vid);
    SendClientMessage(playerid,COLOR_BUSBLUE,string);
    }
    }


    Mir wird ein komischer Wert in allen %s Variablen ausgegeben

    Hallo liebe Leute ich brauch doch nochmal eure Hilfe bei meinem Carinfo Befehl.



    Sobald ich den Befehl mit der ID eingebe wird mir ein Ergebnis angezeigt allerdings nicht nur bei cInfo[id][fraktion]==1 sondern auch bei anderen Fahrzeugen die diesen Wert garnicht besitzen.


    Vielleicht kann mir da ja jemand bei einen Rat geben.


    Hier mal der Code



    ocmd:carinfo(playerid,params[])
    {
    if(isACop(playerid))return SendClientMessage(playerid,COLOR_RED,"Nein");
    new string[128],vid,Float:x,Float:y,Float:z,pID;
    if(sscanf(params,"d",vid)) return SendClientMessage(playerid,-1,"/carinfo [CARID]");
    if(vid == INVALID_VEHICLE_ID) return SendClientMessage(playerid,-1,"Ungültige Fahrzeug ID");
    GetVehiclePos(vid,x,y,z);
    if(!IsPlayerInRangeOfPoint(playerid,8,x,y,z)) return SendClientMessage(playerid,-1,"Du bist nicht in der Nähe des Fahrzeugs das du abrufen möchtest!");
    pID = GetVehicleBesitzer(vid);
    new id;
    if(cInfo[id][fraktion]==1)
    {
    format(string,sizeof(string),"Fahrzeug Besitzer: LSPD & Letzter Fahrer: %s. [Fahrzeug ID %i]",LastDriver[vid],vid);
    SendClientMessage(playerid,COLOR_BUSBLUE,string);
    return 1;
    }
    return 1;



    }

    Okay das Compilen klappt.


    Nachdem ich den Befehl eingebe hängt mein pc sich auf und ich habe nur samp laufen.


    Mein PC Verfügt über einen i5, 4 Kern 2.4 GHz mit 8GB Ram.


    Mein Prozessor Index zeigt mir an das er zu 100% ausgelastet ist.


    Wo kann das Problen sein ?




    Nur bei ocmd:frisk hab ich das Problem


    stock WeaponName(playerid, weaponID) // symbol is never used: "playerid"
    {
    new wName[64];
    switch(weaponID)
    {
    case 0: {wName="Faust";}
    case 1: {wName="Schlagring";}
    case 2: {wName="Golfschläger";}
    case 3: {wName="Schlagstock";}
    case 4: {wName="Nesser";}
    case 5: {wName="Baseball";}
    case 6: {wName="Schaufel";}
    case 7: {wName="Billard";}
    case 8: {wName="Katana";}
    case 9: {wName="Kettensäge";}
    case 10: {wName="Doppeldildo";}
    case 11: {wName="Dildo";}
    case 12: {wName="Vibrator";}
    case 13: {wName="SL Vibrator";}
    case 14: {wName="Blumen";}
    case 15: {wName="Gehstock";}
    case 16: {wName="Granate";}
    case 17: {wName="Tränengas";}
    case 18: {wName="Molotov";}
    case 22: {wName="Pistole";}
    case 23: {wName="SD Pistole";}
    case 24: {wName="Deagle";}
    case 25: {wName="Schrotflinte";}
    case 26: {wName="Abgesägte Schrotflinte";}
    case 27: {wName="Kriegsschrotflinte";}
    case 28: {wName="Micro SMG";}
    case 29: {wName="MP5";}
    case 30: {wName="AK-47";}
    case 31: {wName="M4";}
    case 32: {wName="Tec-9";}
    case 33: {wName="Landgewehr";}
    case 34: {wName="Scharfschützengewehr";}
    case 35: {wName="Raketenwerfer";}
    case 36: {wName="HS Raketenwerfer";}
    case 37: {wName="Flammenwerfer";}
    case 38: {wName="Minigun";}
    case 39: {wName="Sprengtasche";}
    case 40: {wName="Auslöser";}
    case 41: {wName="Spraydose";}
    case 42: {wName="Feuerlöscher";}
    case 43: {wName="Camera";}
    case 44: {wName="Nachtsichtgerät";}
    case 45: {wName="Wärmesichtgerät";}
    case 46: {wName="Fallschirm";}
    }
    return wName;
    }
    ocmd:frisk(playerid,params[])
    {
    new pID, str[128], weapons[13][2];
    if(sscanf(params,"u",pID)) return SendClientMessage(playerid,COLOR_RED,"[Benutze]: /frisk [Name/ID]");
    format(str,sizeof(str),"* %s untersucht %s nach Gegenständen.",getPlayerName(playerid),getPlayerName(pID));
    for(new i = 0; i < MAX_PLAYERS; i++)
    {
    new Float:X, Float:Y, Float:Z;
    GetPlayerPos(playerid, X, Y, Z);
    if(IsPlayerConnected(i) && IsPlayerInRangeOfPoint(i, 10.0,X, Y, Z))
    {
    SendClientMessage(i, COLOR_GREEN, str);
    }
    new str2[128];
    for(new is = 0; is < 13; i++)
    {
    GetPlayerWeaponData(playerid, is, weapons[is][0], weapons[is][1]);
    format(str2, sizeof(str2), "Waffe_%i: %s",is,WeaponName(weapons[is][0])); // warning 202: number of arguments does not match definition
    SendClientMessage(playerid, COLOR_RED, str);
    }
    }
    return 1;
    }

    Hallo Jeffry, erstmal vielen dank für deine Hilfe.



    Allerdings kriege ich noch immer folgende Fehler angezeigt




    C:\Users\Rene\Desktop\Desktop\SAMP-Coding\Aktuell\mysql-R41-win32\gamemodes\beispiel.pwn(4409) : warning 202: number of arguments does not match definition
    C:\Users\Rene\Desktop\Desktop\SAMP-Coding\Aktuell\mysql-R41-win32\gamemodes\beispiel.pwn(4394) : warning 204: symbol is assigned a value that is never used: "wName"
    C:\Users\Rene\Desktop\Desktop\SAMP-Coding\Aktuell\mysql-R41-win32\gamemodes\beispiel.pwn(4415) : warning 203: symbol is never used: "playerid"



    nun aber im format

    Hallo,
    ich habe einen Fehler in meiner schleife und hoffe ihr könnt mir dabei helfen.


    Der Fehler liegt in SendClientMessage




    for(new is = 0; is < 13; i++)
    {
    GetPlayerWeaponData(playerid, is, weapons[is][0], weapons[is][1]);
    SendClientMessage(playerid, COLOR_RED, "Waffe_%i: %s",is,WeaponName(weapons[is][0]));

    }


    und die Fehlerbezeichnung



    C:\Users\Rene\Desktop\Desktop\SAMP-Coding\Aktuell\mysql-R41-win32\gamemodes\beispiel.pwn(4408) : warning 202: number of arguments does not match definition
    C:\Users\Rene\Desktop\Desktop\SAMP-Coding\Aktuell\mysql-R41-win32\gamemodes\beispiel.pwn(4408) : warning 202: number of arguments does not match definition
    C:\Users\Rene\Desktop\Desktop\SAMP-Coding\Aktuell\mysql-R41-win32\gamemodes\beispiel.pwn(4408) : warning 202: number of arguments does not match definition
    C:\Users\Rene\Desktop\Desktop\SAMP-Coding\Aktuell\mysql-R41-win32\gamemodes\beispiel.pwn(4414) : warning 203: symbol is never used: "playerid"

    Du musst die klammern richtig einrenken^^

    Vielen dank für den Hinweis aber das sind Sie :D breadfish verschiebt sie nur im pawn editor

    Nun würde ich gerne das Tacho updaten lassen. Soweit habe ich dafür einen public erstellt. Nun möchte ich das es auch geupdatet wird wenn der timer später eingebaut ist.


    Allerdings zeigt mir Pawno noch einen tag mistatch an.




    forward Speedometer(playerid);
    public Speedometer(playerid)
    {
    TextDrawHideForPlayer(playerid,TDEditor_TD[1]);
    if(IsPlayerInAnyVehicle(playerid))
    {
    TextDrawShowForPlayer(playerid,TDEditor_TD[1]);
    new kmh,speed_string[255];
    kmh = getKmh(playerid,true);

    if(GetPlayerState(playerid) == PLAYER_STATE_DRIVER)
    {
    format(speed_string,255,"KM/H %d",kmh);
    PlayerTextDrawSetString(playerid,TDEditor_TD, speed_string);
    }
    }
    }

    Ich habe nun etwas gestaltet was mir für das 2te mal TextDraw arbeit gefällt. Nun zeigt er mir das aber nicht Richtig an.




    new Text:TDEditor_TD[15];



    TDEditor_TD[0] = TextDrawCreate(161.999877, 409.520080, "_");
    TextDrawLetterSize(TDEditor_TD[0], 0.420000, -0.468267);
    TextDrawTextSize(TDEditor_TD[0], 277.515625, 0.000000);
    TextDrawAlignment(TDEditor_TD[0], 1);
    TextDrawColor(TDEditor_TD[0], -1);
    TextDrawUseBox(TDEditor_TD[0], 1);
    TextDrawBoxColor(TDEditor_TD[0], -1061109505);
    TextDrawSetShadow(TDEditor_TD[0], 0);
    TextDrawSetOutline(TDEditor_TD[0], 0);
    TextDrawBackgroundColor(TDEditor_TD[0], 255);
    TextDrawFont(TDEditor_TD[0], 1);
    TextDrawSetProportional(TDEditor_TD[0], 1);
    TextDrawSetShadow(TDEditor_TD[0], 0);



    TDEditor_TD[1] = TextDrawCreate(162.799972, 353.520172, "_");
    TextDrawLetterSize(TDEditor_TD[1], 0.381599, 5.729038);
    TextDrawTextSize(TDEditor_TD[1], 154.519165, 0.000000);
    TextDrawAlignment(TDEditor_TD[1], 1);
    TextDrawColor(TDEditor_TD[1], -1);
    TextDrawUseBox(TDEditor_TD[1], 1);
    TextDrawBoxColor(TDEditor_TD[1], -1061109505);
    TextDrawSetShadow(TDEditor_TD[1], 0);
    TextDrawSetOutline(TDEditor_TD[1], 0);
    TextDrawBackgroundColor(TDEditor_TD[1], 255);
    TextDrawFont(TDEditor_TD[1], 1);
    TextDrawSetProportional(TDEditor_TD[1], 1);
    TextDrawSetShadow(TDEditor_TD[1], 0);
    TextDrawShowForPlayer(playerid,TDEditor_TD[playerid]);


    Es wird nur der TDEditor_TD[0] angezeigt

    // Edit war falsch



    Du hast massen an klammerfehlern gehabt.


    Dir fehlten 3 Stück glaube ich





    new Float:Pos[3], string[128];
    if(response)
    {
    if(strlen(inputtext) && IsNumeric(inputtext))
    {
    new vehicleid = GetPlayerNearestCarID(playerid,5);
    for(new slot = 0;slot<MAX_PLAYER_VEHICLES;slot++)
    {
    if(IsValidVehicle(PrivateVehicle[playerid][slot][vehID]))
    {
    if(vehicleid == PrivateVehicle[playerid][slot][vehID])
    {
    if(GetVehiclePos(PrivateVehicle[playerid][slot][vehID], Pos[0], Pos[1], Pos[2]) && IsPlayerInRangeOfPoint(playerid, 5.0, Pos[0], Pos[1], Pos[2]))
    {
    new countx = 0;
    if(!IsPlayerBehindVehicle(playerid,PrivateVehicle[playerid][slot][vehID]))return SendClientMessage(playerid, COLOR_GREY, "Du befindest dich nicht am Kofferraum des Fahrzeuges.");
    new weaponsx[13][2];
    /*for(new x=0;x<=12;x++){
    GetPlayerWeaponData(playerid, x, weaponsx[x][0], weaponsx[x][1]);
    }*/
    /*
    new countx = 0;
    if(!IsPlayerBehindVehicle(playerid,PrivateVehicle[playerid][slot][vehID]))return SendClientMessage(playerid, COLOR_GREY, "Du befindest dich nicht am Kofferraum des Fahrzeuges.");
    new weapons[13][2];
    for(new i=0;i<=12;i++){
    GetPlayerWeaponData(playerid, i, weapons[i][0], weapons[i][1]);
    }
    for(new i=0;i<=12;i++){
    if(weapons[i][0] == 30 && weapons[i][1] >= strval(inputtext))
    {
    countx ++;
    SetPlayerAmmo(playerid, weapons[i][0], 0);
    }
    }
    if(countx == 0){
    return OnDialogResponse(playerid, DIALOG_TRUNKWAFFEEINL, 1, 0, "");
    }
    PrivateVehicle[playerid][slot][vehAKRounds] += strval(inputtext);
    format(string, sizeof(string), "Du hast %d Schüsse AK-47 in dein Fahrzeug gelegt.", strval(inputtext));
    SendClientMessage(playerid, COLOR_LIGHTBLUE, string);
    OnDialogResponse(playerid, DIALOG_TRUNK, 1, 3, "");
    break;
    */
    }
    }
    }
    }
    }
    }

    Wie wäre es mit "Position"? Logischerweise? :D

    Entschuldigung meiner falschen Ausdrucksweise. Ich möchte die Blaue Box nach unten vergrößern und nicht den Ort verändern.


    // Edit




    Wie wäre es mit "Position"? Logischerweise? :D


    Achso. du musst Box auswählen und kannst dann mit size die grösse ändern.

    Seitlich funktioniert das ganze nur nicht nach unten :D


    // Edit



    Erledigt mit LetterSize



    // Edit



    Wie kriege ich eine Transparenz in die Box rein ?