[SAMMELTHREAD] Kleine Scripting Fragen

Dein Problem konnte durch einen User gelöst werden? Bedank dich bei ihm indem du seinen Beitrag als Hilfreich markierst sowie einen Daumen oben dalässt
Wichtiger Hinweis: Bitte ändert nicht manuell die Schriftfarbe auf schwarz sondern belasst es bei der Standardeinstellung. Somit tragt ihr dazu bei dass euer Text auch bei Verwendung unseren dunklen Forenstils noch lesbar ist!

Tipp: Ihr wollt längere Codeausschnitte oder Logfiles bereitstellen? Benutzt unseren eigenen PasteBin-Dienst Link
  • public OnPlayerDeath(playerid, killerid, reason)
    {
    sInfo[playerid][PTot] = 1;
    new Float:ptx,Float:pty,Float:ptz,string[80];
    sInfo[playerid][dx] = ptx;
    sInfo[playerid][dy] = pty;
    sInfo[playerid][dz] = ptz;
    GetPlayerPos(playerid, ptx,pty,ptz);
    TotenKopf[playerid] = CreatePickup(1254,1,ptx,pty,ptz);
    format(string,sizeof(string),"Leichen Name\nvon %s",getPlayerName(playerid));
    TotenName[playerid] = Create3DTextLabel(string,GRAU,ptx,pty,ptz,10,GetPlayerVirtualWorld(playerid),0);
    format(string, sizeof(string),"Der Spieler %s ID %i ist soeben gestorben!",getPlayerName(playerid),playerid);
    SendOndutyMedicMessage(GELB,string);
    if(sInfo[playerid][kGeld] > 0)
    {
    if(isPlayerInFrakt(killerid,15))
    {
    GivePlayerMoney(killerid, sInfo[playerid][kGeld]);
    GameTextForPlayer(playerid,"~r~Du warst ein auftrag der Hitmans",2000,0);
    GameTextForPlayer(killerid,"~r~Auftrag Erledigt",2000,0);
    format(string,sizeof(string),"Der Spieler %s hat den auftrag erledigt und %s gekillt.",getPlayerName(killerid),getPlayerName(playerid));
    SendHitmanMessage(BRAUN,string);
    format(string,sizeof(string),"Er erhät nun das ausgesetzte Kopfgeld in Höhe von %i$.",sInfo[playerid][kGeld]);
    SendHitmanMessage(BRAUN,string);
    sInfo[playerid][kGeld] = 0;
    }
    }
    return 1;
    }

  • new Float:ptx,Float:pty,Float:ptz,string[80];
    sInfo[playerid][dx] = ptx;
    sInfo[playerid][dy] = pty;
    sInfo[playerid][dz] = ptz;
    GetPlayerPos(playerid, ptx,pty,ptz);


    zu:
    new Float:ptx,Float:pty,Float:ptz,string[80];
    GetPlayerPos(playerid, ptx,pty,ptz);
    sInfo[playerid][dx] = ptx;
    sInfo[playerid][dy] = pty;
    sInfo[playerid][dz] = ptz;

  • Jeffry: Ich habe jetzt deinen Code benutzt, und der Spielt noch mehr verrückt O.o http://i.epvpimg.com/mDq6h.jpg


    Ich habe diesen Dialog:

    Spoiler anzeigen
    case Dialog_Geburtsdatum:
    {
    new second = gettime();
    new tag,monat,jahr,stunde,minute;
    getdate(jahr,monat,tag);
    gettime(stunde,minute,second);
    new DateInfo[3][20],string[200];
    split(inputtext,DateInfo,'.');
    if(response == 0) return 1;
    else
    {
    if(strlen(inputtext) > 10)
    {
    ShowPlayerDialog(playerid,Dialog_Geburtsdatum,DIALOG_STYLE_INPUT,"{FFFFFF}SmR: {308EAD}Geburtsdatum","Gebe nun bitte dein Alter ein. | Angabe bitte in TT.MM.JJJJ","Weiter","Verlassen");
    return 1;
    }
    new tmp[16];
    format(tmp, sizeof(tmp), "d.d.%d", strval(DateInfo[0]),strval(DateInfo[1]),strval(DateInfo[2]));
    printf("Datum: %s", tmp);
    if(jahr - strval(DateInfo[2]) > 100 || strval(DateInfo[2]) < 1 || strval(DateInfo[2]) >= jahr)
    {
    printf("jahr: %d | eingabe: %d", jahr, strval(DateInfo[2]));
    ShowPlayerDialog(playerid,Dialog_Geburtsdatum,DIALOG_STYLE_INPUT,"{FFFFFF}SmR: {308EAD}Geburtsdatum","Gebe nun bitte dein Alter ein. | Angabe bitte in TT.MM.JJJJ","Weiter","Verlassen");
    return 1;
    }
    new check = jahr - strval(DateInfo[2]);
    if(strval(DateInfo[1]) > monat)
    {
    check -= 1;
    }
    else if(strval(DateInfo[1]) == monat && strval(DateInfo[0]) > tag)
    {
    check -= 1;
    }
    if(check < 14 || check > 50)
    {
    printf("check = %d", check);
    ShowPlayerDialog(playerid,Dialog_Geburtsdatum,DIALOG_STYLE_INPUT,"{FFFFFF}SmR: {308EAD}Geburtsdatum","Gebe nun bitte dein Alter ein. | Angabe bitte in TT.MM.JJJJ","Weiter","Verlassen");
    return 1;
    }
    Spieler[playerid][pAlter] = check;
    format(Spieler[playerid][pGeburtsdatum],11,inputtext);
    format(string,sizeof(string),"Ok du bist also %i Jahre alt.",Spieler[playerid][pAlter]);
    ShowPlayerDialog(playerid,Dialog_Geschlecht,DIALOG_STYLE_LIST,"{FFFFFF}SmR: {308EAD}Geschlecht","{FFFFFF}Männlich\nWeiblich","Weiter","Abbrechen");
    return 1;
    }
    }



    Und so Speichert er alles:

    Spoiler anzeigen
    stock SavePlayerData(playerid)
    {
    new query[950 + MAX_PLAYER_NAME],Tag,Monat,Jahr,Stunde,Minute,Sekunde;
    getdate(Tag,Monat,Jahr);
    gettime(Stunde,Minute,Sekunde);
    format(query,sizeof(query),"d.d.%d - d:d:%d",Tag,Monat,Jahr,Stunde,Minute,Sekunde);
    mysql_format(DBHandle, query, sizeof(query),"UPDATE `Accounts` SET `pAlter` = '%d', `pAdminlevel` = '%d', `pGeburtsdatum` ='%d',`pGeschlecht` ='%d', `pBanned` = '%d', `pBargeld` = '%d', `pKontoguthaben` = '%d', `pLastLogin` = '%s', `pLeben` = '%.1f' WHERE `pName` = '%e'",
    Spieler[playerid][pAlter],Spieler[playerid][pAdminlevel],Spieler[playerid][pGeburtsdatum],Spieler[playerid][pGeschlecht],Spieler[playerid][pBanned],Spieler[playerid][pBargeld],Spieler[playerid][pKontoguthaben],query,Spieler[playerid][pLeben],Spieler[playerid][pName]);
    mysql_tquery(DBHandle, query, "","");
    printf(query,"%d");
    return 1;
    }


    Hier einmal die server_log:

    Spoiler anzeigen

    ----------
    Loaded log file: "server_log.txt".
    ----------

    Spoiler anzeigen
    SA-MP Dedicated Server
    ----------------------
    v0.3z, (C)2005-2014 SA-MP Team

    Spoiler anzeigen
    [18:34:19] filterscripts = "" (string)
    [18:34:19]
    [18:34:19] Server Plugins
    [18:34:19] --------------
    [18:34:19] Loading plugin: mysql
    [18:34:19] >> plugin.mysql: R39-2 successfully loaded.
    [18:34:19] Loaded.
    [18:34:19] Loading plugin: sscanf
    [18:34:19]

    Spoiler anzeigen
    [18:34:19] ===============================

    Spoiler anzeigen
    [18:34:19] sscanf plugin loaded.

    Spoiler anzeigen
    [18:34:19] Version: 2.8.1

    Spoiler anzeigen
    [18:34:19] (c) 2012 Alex "Y_Less" Cole

    Spoiler anzeigen
    [18:34:19] ===============================

    Spoiler anzeigen
    [18:34:19] Loaded.
    [18:34:19] Loaded 2 plugins.

    Spoiler anzeigen
    [18:34:19]
    [18:34:19] Filterscripts
    [18:34:19] ---------------
    [18:34:19] Loaded 0 filterscripts.

    Spoiler anzeigen
    [18:34:19] San Miami Roleplay It's Possible. German Roleplay

    Spoiler anzeigen
    [18:34:19] --------------------------------
    [18:34:19] Dieses Script [Version: It's Possible. German Roleplay] steht unter Datenschutz und darf
    [18:34:19] nur von dem jenigen Besitzer benutzt/verwendet werden.
    [18:34:19] Falls diese Richtlinien nicht eingehalten werden,werden
    [18:34:19] Rechtlicheschritte gegen sie eingeleitet. Script von Eddy.
    [18:34:19] Copyright by sMR
    [18:34:19] --------------------------------
    [18:34:19] San Miami Roleplay It's Possible. German Roleplay

    Spoiler anzeigen
    [18:34:19] Number of vehicle models: 0
    [18:34:37] Incoming connection: 127.0.0.1:52800
    [18:34:38] [join] Eddy_Mind has joined the server (0:127.0.0.1)
    [18:34:38] SELECT COUNT(*) AS `count` FROM `Accounts` WHERE `pName` = 'Eddy_Mind'
    [18:34:41] INSERT INTO `Accounts` (`pName`, `pPasswort`, `pAlter`, `pGeburtsdatum`, `pGeschlecht`, `pAdminlevel`, `pBanned`, `pBargeld`, `pKontoguthaben`, `pLastLogin`, `pRegDatum`, `pVersuche`, `pLeben`) VALUES ('Eddy_Mind','test','0','0','0','0','0','0','0','2014.12.23 - 18:34:41','2014.12.23 - 18:34:41','0','100.0')
    [18:34:43] Datum: 18.11.1994
    [18:34:44] UPDATE `Accounts` SET `pAlter` = '20', `pAdminlevel` = '46', `pGeburtsdatum` ='49',`pGeschlecht` ='1', `pBanned` = '49', `pBargeld` = '49', `pKontoguthaben` = '46', `pLastLogin` = '2014.12.23 - 18:34:44', `pLeben` = '0.0' WHERE `pName` = 'Eddy_Mind'
    [18:36:18] UPDATE `Accounts` SET `pAlter` = '20', `pAdminlevel` = '5', `pGeburtsdatum` ='49',`pGeschlecht` ='1', `pBanned` = '49', `pBargeld` = '49', `pKontoguthaben` = '46', `pLastLogin` = '2014.12.23 - 18:36:18', `pLeben` = '0.0' WHERE `pName` = 'Eddy_Mind'
    [18:36:28] [part] Eddy_Mind has left the server (0:1)


    Und die mysql_log:

    Spoiler anzeigen
    [18:34:19] [DEBUG] CMySQLConnection::Connect - establishing connection to database...
    [18:34:19] [DEBUG] CMySQLConnection::Connect - establishing connection to database...
    [18:34:19] [DEBUG] CMySQLConnection::Connect - connection was successful
    [18:34:19] [DEBUG] CMySQLConnection::Connect - connection was successful
    [18:34:19] [DEBUG] CMySQLConnection::Connect - connection was successful
    [18:34:19] [DEBUG] CMySQLConnection::Connect - auto-reconnect has been enabled
    [18:34:19] [DEBUG] CMySQLConnection::Connect - auto-reconnect has been enabled
    [18:34:19] [DEBUG] CMySQLQuery::Execute[] - starting query execution
    [18:34:19] [DEBUG] CMySQLQuery::Execute[] - query was successfully executed within 7.413 milliseconds
    [18:34:19] [DEBUG] CMySQLQuery::Execute[] - no callback specified, skipping result saving
    [18:34:38] [DEBUG] mysql_format - connection: 1, len: 184, format: "SELECT COUNT(*) AS `count` FROM `Accounts` WHERE `pName` = '%e'"
    [18:34:38] [DEBUG] mysql_tquery - connection: 1, query: "SELECT COUNT(*) AS `count` FROM `Accounts` WHERE `pName` = 'Eddy", callback: "LoadPlayerDataSequence", format: "dd"
    [18:34:38] [DEBUG] CMySQLQuery::Execute[LoadPlayerDataSequence] - starting query execution
    [18:34:38] [DEBUG] CMySQLQuery::Execute[LoadPlayerDataSequence] - query was successfully executed within 2.172 milliseconds
    [18:34:38] [DEBUG] CMySQLResult::CMySQLResult() - constructor called
    [18:34:38] [DEBUG] Calling callback "LoadPlayerDataSequence"..
    [18:34:38] [DEBUG] cache_get_field_content_int - row: 0, field_name: "count", connection: 1
    [18:34:38] [DEBUG] CMySQLResult::GetRowDataByName - row: '0', field: "count", data: "0"
    [18:34:38] [DEBUG] CMySQLResult::~CMySQLResult() - deconstructor called
    [18:34:41] [DEBUG] mysql_format - connection: 1, len: 974, format: "INSERT INTO `Accounts` (`pName`, `pPasswort`, `pAlter`, `pGeburtsdatum`, `pGeschlecht`, `pAdminlevel`, `pBanned`, `pBargeld`, `p..."
    [18:34:41] [DEBUG] mysql_tquery - connection: 1, query: "INSERT INTO `Accounts` (`pName`, `pPasswort`, `pAlter`, `pGeburt", callback: "(null)", format: "(null)"
    [18:34:41] [DEBUG] CMySQLQuery::Execute[] - starting query execution
    [18:34:41] [DEBUG] CMySQLQuery::Execute[] - query was successfully executed within 0.552 milliseconds
    [18:34:41] [DEBUG] CMySQLQuery::Execute[] - no callback specified, skipping result saving
    [18:34:44] [DEBUG] mysql_format - connection: 1, len: 974, format: "UPDATE `Accounts` SET `pAlter` = '%d', `pAdminlevel` = '%d', `pGeburtsdatum` ='%d',`pGeschlecht` ='%d', `pBanned` = '%d', `pBarg..."
    [18:34:44] [DEBUG] mysql_tquery - connection: 1, query: "UPDATE `Accounts` SET `pAlter` = '20', `pAdminlevel` = '46', `pG", callback: "(null)", format: "(null)"
    [18:34:44] [DEBUG] CMySQLQuery::Execute[] - starting query execution
    [18:34:44] [DEBUG] CMySQLQuery::Execute[] - query was successfully executed within 0.665 milliseconds
    [18:34:44] [DEBUG] CMySQLQuery::Execute[] - no callback specified, skipping result saving
    [18:36:18] [DEBUG] mysql_format - connection: 1, len: 974, format: "UPDATE `Accounts` SET `pAlter` = '%d', `pAdminlevel` = '%d', `pGeburtsdatum` ='%d',`pGeschlecht` ='%d', `pBanned` = '%d', `pBarg..."
    [18:36:18] [DEBUG] mysql_tquery - connection: 1, query: "UPDATE `Accounts` SET `pAlter` = '20', `pAdminlevel` = '5', `pGe", callback: "(null)", format: "(null)"
    [18:36:18] [DEBUG] CMySQLQuery::Execute[] - starting query execution
    [18:36:18] [DEBUG] CMySQLQuery::Execute[] - query was successfully executed within 1.40 milliseconds
    [18:36:18] [DEBUG] CMySQLQuery::Execute[] - no callback specified, skipping result saving

    Die Kritik an anderen hat noch keinem die eigene Leistung erspart.

    – Noël Coward

  • Danke euch , es geht jetzt perfekt!


    Aber jetzt komme ich mit den /VEH befehl nicht weiter? Also es soll dann, wenn schon ein Auto erstellt wurde, das alte gelöscht werden. Aber das auto wird nicht gelöscht? Und warum wird kein 3D Text erstellt?


    Spoiler anzeigen

    ocmd:veh(playerid,params[])
    {
    if(SpielerInfo[playerid][pAlevel] >= 2)
    {
    //if(IsPlayerInAnyVehicle(playerid) == 1)return SendClientMessage(playerid, 0xFF0000FF, "Du bist bereits in einem Fahrzeug!");
    new Float:vehx,Float:vehy,Float:vehz, vehid,cc1,cc2,string[128], astring[128], aname[MAX_PLAYERS],VVW,Float:facing, veh;
    GetPlayerName(playerid,aname,sizeof(aname));
    if(sscanf(params,"iii",vehid,cc1,cc2))return SendClientMessage(playerid, 0xFF0000FF,"[FEHLER]{FFFFFF} /Veh [FahrzeugID] [Farbe 1] [Farbe 2]");
    if(vehid < 400 ||vehid > 611)return SendClientMessage(playerid,0xFF0000FF,"[FEHLER] {FFFFFF}Falsche Veh-ID! | ~ | 400 - 611 | ~ |");
    if(SpielerInfo[playerid][pVehErstellt] == 0)
    {
    GetPlayerPos(playerid,vehx,vehy,vehz);
    GetPlayerFacingAngle(playerid, facing);
    VVW = GetPlayerVirtualWorld(playerid);
    veh = AddStaticVehicleEx(vehid,vehx,vehy,vehz,facing,cc1,cc2,-1);
    PutPlayerInVehicle(playerid, veh, 0);
    AddVehicleComponent(veh, 1010);
    SetVehicleVirtualWorld(veh, VVW);
    vehicle3Dtext[vehicle_id]= Create3DTextLabel( "** Administrator Fahrzeug **", 0x00FFBEFF, 0.0, 0.0, 0.0, 0.0, 0, 1 );
    Attach3DTextLabelToVehicle(vehicle3Dtext[vehicle_id],veh,0.0, 0.0, 2.0);
    format(astring,sizeof(astring),"[A-INFO] [%d]%s(LvL: %s) hat '{FFFFFF}/VEH{FF0000}' ausgeführt!",playerid,aname,GetAlevel(playerid));
    SendAdminMessage(0xFF0000FF,astring);
    format(string,sizeof(string),"[INFO]{FFFFFF} Du hast das Fahrzeug mit der ModelID [{FF9100}%d{FFFFFF}] und der VehicleID [{FF9100}%d{FFFFFF}] erstellt!",veh,vehid);
    SendClientMessage(playerid,0xFF0000FF,string);
    SpielerInfo[playerid][pVehErstellt] = 1;
    }
    else if(SpielerInfo[playerid][pVehErstellt] == 1)
    {
    format(string,sizeof(string),"[INFO]{FFFFFF} ModelID[%d] wurde gelöscht! Geben Sie bitte erneurt /VEH ein um einen Auto zu spawnen!",veh);
    SendClientMessage(playerid,0xFF0000FF,string);
    DestroyVehicle(veh);
    SpielerInfo[playerid][pVehErstellt] = 0;
    }
    }
    return 1;
    }


    Jeffry

    Mit freundlichen Grüßen
    [KoSoVa] :klugs:

    2 Mal editiert, zuletzt von [GeD]Max ()

  • Jeffry: Ich habe jetzt deinen Code benutzt, und der Spielt noch mehr verrückt O.o http://i.epvpimg.com/mDq6h.jpg


    Du kannst auch kein string einfach so als integer abspeichern , ich hoffe du nutz auch für das Geburtsdatum den Datentyp varchar und nicht integer.


    Ein tipp von mir , man kann auch mit mysql super das Datum ermitteln :D dazu als Datentyp Date nutzen mit NOW() bekommst du das aktuelle Datum und die Zeit.
    mit Date_Format müsste man das Datum wie gewünscht formatieren

  • Ich brauch immer noch hilfe :/


    Mach doch bitte einen Thread auf, wenn es keine kleine kurze Frage ist. Diese ewig langen Codes hier geben keinen Sinn, das ist ein riesiges Durcheinander.


    Schreibe es erst mal so, dann klappt das mit dem Löschen, und das Label sollte auch dran sein.

    Spoiler anzeigen
    ocmd:veh(playerid,params[])
    {
    if(SpielerInfo[playerid][pAlevel] >= 2)
    {
    //if(IsPlayerInAnyVehicle(playerid) == 1)return SendClientMessage(playerid, 0xFF0000FF, "Du bist bereits in einem Fahrzeug!");
    new Float:vehx,Float:vehy,Float:vehz, vehid,cc1,cc2,string[128], astring[128], aname[MAX_PLAYERS],VVW,Float:facing, veh;
    GetPlayerName(playerid,aname,sizeof(aname));
    if(sscanf(params,"iii",vehid,cc1,cc2))return SendClientMessage(playerid, 0xFF0000FF,"[FEHLER]{FFFFFF} /Veh [FahrzeugID] [Farbe 1] [Farbe 2]");
    if(vehid < 400 ||vehid > 611)return SendClientMessage(playerid,0xFF0000FF,"[FEHLER] {FFFFFF}Falsche Veh-ID! | ~ | 400 - 611 | ~ |");
    if(SpielerInfo[playerid][pVehErstellt] == 0)
    {
    GetPlayerPos(playerid,vehx,vehy,vehz);
    GetPlayerFacingAngle(playerid, facing);
    VVW = GetPlayerVirtualWorld(playerid);
    veh = AddStaticVehicleEx(vehid,vehx,vehy,vehz,facing,cc1,cc2,-1);
    PutPlayerInVehicle(playerid, veh, 0);
    AddVehicleComponent(veh, 1010);
    SetVehicleVirtualWorld(veh, VVW);
    vehicle3Dtext[vehicle_id]= Create3DTextLabel( "** Administrator Fahrzeug **", 0x00FFBEFF, 0.0, 0.0, 0.0, 100.0, 0, 1 );
    Attach3DTextLabelToVehicle(vehicle3Dtext[vehicle_id],veh,0.0, 0.0, 2.0);
    format(astring,sizeof(astring),"[A-INFO] [%d]%s(LvL: %s) hat '{FFFFFF}/VEH{FF0000}' ausgeführt!",playerid,aname,GetAlevel(playerid));
    SendAdminMessage(0xFF0000FF,astring);
    format(string,sizeof(string),"[INFO]{FFFFFF} Du hast das Fahrzeug mit der ModelID [{FF9100}%d{FFFFFF}] und der VehicleID [{FF9100}%d{FFFFFF}] erstellt!",veh,vehid);
    SendClientMessage(playerid,0xFF0000FF,string);
    SpielerInfo[playerid][pVehErstellt] = veh;
    }
    else if(SpielerInfo[playerid][pVehErstellt] != 0)
    {
    format(string,sizeof(string),"[INFO]{FFFFFF} ModelID[%d] wurde gelöscht! Geben Sie bitte erneurt /VEH ein um einen Auto zu spawnen!",veh);
    SendClientMessage(playerid,0xFF0000FF,string);
    DestroyVehicle(SpielerInfo[playerid][pVehErstellt]);
    SpielerInfo[playerid][pVehErstellt] = 0;
    }
    }
    return 1;
    }


    Eddy: Mache bitte einen Thread auf, das hat hier so keinen Sinn, wenn man erst mal drei Meter kurbeln muss, bis man hat was man braucht, und der vorherige Post ist zwei Seiten weiter hinten und dann übersieht man einen. Und beschreibe bitte was denn genau falsch ist, sag am besten, was eigentlich in den Spalten stehen soll. Danke! :)


    @FerienFreak: Das trifft auch für dich zu, sowas ist keine kleine Frage mehr. Zudem: Welches Plugin verwendest du, wie sieht deine Datenbank-/Tabellenstruktur aus?
    EDIT:
    @FerienFreak: ^

    3HZXdYd.png

    Einmal editiert, zuletzt von Jeffry ()

  • Ja genau. Versuch es einfach mal, bei Fragen oder Problemen kannst du dich ja melden.

  • hallo vom ich wollte mir ein /giveschein befehl machen aber weiß nicht wie
    also ich will das man /givescheine [ID] [schein]
    das man bei scheine z.b PKW oder LKW einträgt aber weiß nicht wie
    also
    /givescheine 1 PKW ( gibt id 1 pkw schein )
    /givescheine 2 lkw( gibt id 2 lkwschein )
    aber wie mach ich das ?
    könnte mir jemand ein beispiel machen ? ich arbeite mit ocmd

  • Hier haste einen Beispiel.
    ocmd:givescheine(playerid,params[])
    {
    new pID,scheinname[10];
    if(sscanf(params,"us[10]",pID,scheinname))return SendClientMessage(playerid,-1,"/givescheine [id][schein]");//beim plugin
    //if(sscanf(params,"us",pID,scheinname))return SendClientMessage(playerid,-1,"/givescheine [id][schein]");//Beim stock
    if(!IsPlayerConnected(pID))return SendClientMessage(playerid,-1,"Nicht online!");
    if(!strcmp(scheinname,"auto",true))
    {
    //Autoschein vergeben
    return 1;
    }
    else if(!strcmp(scheinname,"bike",true))
    {
    //Bikeschein vergeben
    return 1;
    }
    return 1;
    }

  • Beitrag von Fernando_Jizuya ()

    Dieser Beitrag wurde gelöscht, Informationen über den Löschvorgang sind nicht verfügbar.
  • Wie kann ich die SetObjectMaterialText löschen?
    Ich habe ein Supmobil, auf diesem habe ich 2 Texte stehen. Wenn ich das Supmobil lösche, bleiben die
    Texte trotzdem stehen. Wie kann ich diese nun löschen?


    [pwn]


    ocmd:supmobil(playerid,params[])
    {
    if(!IsPlayerAnAdmin(playerid,1)) return SendClientMessage(playerid,0xFF3C3CFF,"AdmCmd: Sie besitzen nicht die nötigen Rechte um diesen Befehl zu nutzen!");
    if(HatSupmobil[playerid] == 1) return SendClientMessage(playerid,0x00D2D2FF,"Du hast bereits ein Supporter Fahrzeug erstellt! Lösche es bevor du dir ein neues erstellst.");
    new Float:X, Float:Y, Float:Z;
    GetPlayerPos(playerid,X,Y,Z);
    SupMobil[playerid] = CreateVehicle(560,X,Y,Z,3,166,166,-1);
    new fahrer = CreateObject(19483,X,Y,Z,0,0,0,300.0);
    new beifahrer = CreateObject(19483,X,Y,Z,0,0,0,300.0);
    AttachObjectToVehicle(fahrer,SupMobil[playerid],-1.06, 0.0, 0.0, 0.0, 0.0, 180.0);
    SetObjectMaterialText(fahrer,"Supporter",0,90,"Arial", 28, 0, 0xFFFF8200, 0,1);
    AttachObjectToVehicle(beifahrer,SupMobil[playerid],1.06, 0.0, 0.0, 0.0, 0.0, 0.0);
    SetObjectMaterialText(beifahrer,"Supporter",0,90,"Arial", 28, 0, 0xFFFF8200, 0,1);
    SetVehicleNumberPlate(SupMobil[playerid],"Supporter");
    PutPlayerInVehicle(playerid, SupMobil[playerid], 0);
    Support3DText[playerid] = Create3DTextLabel("Supporter im Dienst",0xEE8613FF,0.0,0.0,0.0,50.0,0,0);
    Attach3DTextLabelToVehicle(Support3DText[playerid],SupMobil[playerid],0.0,0.0,1.0);
    HatSupmobil[playerid] = 1;
    SendClientMessage(playerid,0xFFFFFF,"{DB4447}Info: {F0F0F0}Du hast ein Supporter Fahrzeug erstellt! Benutze {2A98D4}/delscar{F0F0F0} um das Fahrzeug zu Entfernen.");
    return 1;
    }


    ocmd:delscar(playerid,params[])
    {
    if(!IsPlayerAnAdmin(playerid,1)) return SendClientMessage(playerid,0xFF3C3CFF,"AdmCmd: Sie besitzen nicht die nötigen Rechte um diesen Befehl zu nutzen!");
    if(HatSupmobil[playerid] == 0) return SendClientMessage(playerid,0x00D2D2FF,"Du bist nicht im Besitz eines Supporter Fahrzeugs!");
    RemovePlayerFromVehicle(playerid);
    DestroyVehicle(HatSupmobil[playerid]);
    Delete3DTextLabel(Support3DText[playerid]);
    HatSupmobil[playerid] = 0;
    SendClientMessage(playerid,0x00D2D2FF,"Du hast dein Supporter Fahrzeug erfolgreich gelöscht!");
    return 1;
    }


    [/pwn]

    Die Kritik an anderen hat noch keinem die eigene Leistung erspart.

    – Noël Coward

  • Du brauchst ein globales Array.
    new objFahrer[MAX_PLAYERS];
    new objBeifahrer[MAX_PLAYERS];


    ocmd:supmobil(playerid,params[])
    {
    if(!IsPlayerAnAdmin(playerid,1)) return SendClientMessage(playerid,0xFF3C3CFF,"AdmCmd: Sie besitzen nicht die nötigen Rechte um diesen Befehl zu nutzen!");
    if(HatSupmobil[playerid] == 1) return SendClientMessage(playerid,0x00D2D2FF,"Du hast bereits ein Supporter Fahrzeug erstellt! Lösche es bevor du dir ein neues erstellst.");
    new Float:X, Float:Y, Float:Z;
    GetPlayerPos(playerid,X,Y,Z);
    SupMobil[playerid] = CreateVehicle(560,X,Y,Z,3,166,166,-1);
    objFahrer[playerid] = CreateObject(19483,X,Y,Z,0,0,0,300.0);
    objBeifahrer[playerid] = CreateObject(19483,X,Y,Z,0,0,0,300.0);
    AttachObjectToVehicle(objFahrer[playerid],SupMobil[playerid],-1.06, 0.0, 0.0, 0.0, 0.0, 180.0);
    SetObjectMaterialText(objFahrer[playerid],"Supporter",0,90,"Arial", 28, 0, 0xFFFF8200, 0,1);
    AttachObjectToVehicle(objBeifahrer[playerid],SupMobil[playerid],1.06, 0.0, 0.0, 0.0, 0.0, 0.0);
    SetObjectMaterialText(objBeifahrer[playerid],"Supporter",0,90,"Arial", 28, 0, 0xFFFF8200, 0,1);
    SetVehicleNumberPlate(SupMobil[playerid],"Supporter");
    PutPlayerInVehicle(playerid, SupMobil[playerid], 0);
    Support3DText[playerid] = Create3DTextLabel("Supporter im Dienst",0xEE8613FF,0.0,0.0,0.0,50.0,0,0);
    Attach3DTextLabelToVehicle(Support3DText[playerid],SupMobil[playerid],0.0,0.0,1.0);
    HatSupmobil[playerid] = 1;
    SendClientMessage(playerid,0xFFFFFF,"{DB4447}Info: {F0F0F0}Du hast ein Supporter Fahrzeug erstellt! Benutze {2A98D4}/delscar{F0F0F0} um das Fahrzeug zu Entfernen.");
    return 1;
    }


    ocmd:delscar(playerid,params[])
    {
    if(!IsPlayerAnAdmin(playerid,1)) return SendClientMessage(playerid,0xFF3C3CFF,"AdmCmd: Sie besitzen nicht die nötigen Rechte um diesen Befehl zu nutzen!");
    if(HatSupmobil[playerid] == 0) return SendClientMessage(playerid,0x00D2D2FF,"Du bist nicht im Besitz eines Supporter Fahrzeugs!");
    RemovePlayerFromVehicle(playerid);
    DestroyVehicle(HatSupmobil[playerid]);
    Delete3DTextLabel(Support3DText[playerid]);
    HatSupmobil[playerid] = 0;
    DestroyObject(objFahrer[playerid]);
    DestroyObject(objBeifahrer[playerid]);
    SendClientMessage(playerid,0x00D2D2FF,"Du hast dein Supporter Fahrzeug erfolgreich gelöscht!");
    return 1;
    }

  • Wie mache ich diese Textdraws so das sie 2 Stellen haben?


    format(string,sizeof(string),"~r~%s",VehNames[GetVehicleModel(VID)-400]);
    format(string1,sizeof(string1),"~r~KM/H:~g~ %d %f",value);
    format(string2,sizeof(string2),"~r~Tank:~g~ %s %f", Tank, Gas[VID]);
    format(string4,sizeof(string4),"~r~Zustand:~g~ %.1f",leben/10);
    format(string3,sizeof(string3),"~r~Kilometer:~g~ %d %f Km",floatround(Kilometer[veh]));

  • do.de - Domain-Offensive - Domains für alle und zu super Preisen