Beiträge von Shine

    Hachja, wie ich solche Themen liebe.


    1. Post:
    Sehr schön, gefällt mir.
    5 Posts weiter:
    Wird ja immer interessanter, ich werde später mal rein schauen!
    Weitere 5 Posts unten:
    Mhm? o_O
    Nochmal 4 Posts weiter:
    Naja okay, scheint doch nicht schlecht zu sein.
    Die letzten Posts:
    Dreck.

    Zudem solltest du darauf achten, auch die richtige 'PVarInt'' auf 1 zu setzen...


    - SetPVarInt(i,"Gebant",1);
    - Warum werde ich nicht gebannnt wen ich mir 900 hp gebe ?


    Wie stehts in der account.ini ? Mit 1, 2 oder doch 3 'n's?

    Warum setzt ihr alle die if-Anweisungen so unübersichtlich & doof?


    dcmd_stopf(playerid, params[])
    {
    #pragma unused params
    if(!IsAFisher(playerid))
    {
    return SCM(playerid, C_RED, "Du bist kein Fischer!");
    }
    else
    {
    if(IsDuty(playerid))
    {
    return SCM(playerid, C_RED, "Du darfst nicht im Dienst sein!");
    }
    else
    {
    if(!Player[playerid][pFishing])
    {
    return SCM(playerid, C_RED, "Du bist noch nicht beim Fischen, starte zuerst mit /startf!");
    }
    else
    {
    print("anfang"); //das erscheint nichtmal im Log!
    DestroyPlayerCPs(playerid);
    Player[playerid][pFishing] = 0;
    return SCM(playerid, C_ORANGE, "Du kannst nun deine Fische in Bayside verkaufen, wenn du möchtest!");
    }
    }
    }
    }

    Was willst du uns mit dem Glashaus sagen ???
    5/10


    Deine Kommentare sind immer so gut durchdacht und aufschlussreich...
    Ja, man sollte echt viel Wert auf deine Kommentare legen...



    B2T:
    Die Idee an sich ist gut. Ein Glashaus, dazu auch die richtigen Objekte wie ich finde.
    Aber du hättest den obersten Part raus lassen sollen, also alles wo man die Landebahnen sieht. Das passt einfach nicht.
    Dann einfach ein Glasdach drüber.
    Vielleicht ein paar Säulen / Trennwände aus Glas dazwischen als ''Deckungsmöglichkeit''.
    Dann hättest du wesentlich bessere Kritik bekommen ;)


    Aber die komischen Landebahnen ziehen alles runter.
    Denn beim Glas ist laut Video kaum Geflacker zu sehen. Alles nur da oben...lösch das einfach xD


    5/10 - weil ich die Idee gut finde, aber wie gesagt...der obere Part zieht das Gesamtkunstwerk runter.

    Nicht in der .ini :(
    Als Beispiel nehme ich jetzt das Handy.
    Wenn ein Spieler sich ein Handy kauft, wird die Zeile in der .ini ja geändert,
    Handy=0
    wird zu
    Handy=1


    Und wie geschieht das bei dir im Script?
    Wo speicherst du im Script, dass das Handy gekauft wurde? Also dort, wo du die .ini änderst.


    Wenn du uns sagst wie das gespeichert wird, können wir dir weiter helfen ^^
    Außerdem lernst du so direkt, wie man nun genau was speichert.

    public OnPlayerPickUpPickup(playerid, pickupid)
    {
    if(pickupid==lspdwaffen)
    {
    if(isPlayerInFrakt(playerid,1))
    {
    GivePlayerWeapon(playerid,25,100);
    GivePlayerWeapon(playerid,29,100);
    GivePlayerWeapon(playerid,22,100);
    }
    else
    {
    SendClientMessage(playerid,ROT,"Du bist nicht in der LSPD.");
    }
    return 1;
    }
    else if(pickupid==lspdheal)
    {
    if(isPlayerInFrakt(playerid,1))
    {
    SetPlayerHealth(playerid,100);
    }
    else
    {
    SendClientMessage(playerid,ROT,"Du bist nicht in der LSPD.");
    }
    return 1;
    }
    else if(pickupid==lspdarmor)
    {
    if(isPlayerInFrakt(playerid,1))
    {
    SetPlayerArmour(playerid, 100);
    }
    else
    {
    SendClientMessage(playerid,ROT,"Du bist nicht in der LSPD.");
    }
    return 1;
    }
    }


    //edit: leicht verbessert xD

    //tipp: Die Meldung ''Du bist nicht in der LSPD'' klingt blöd...mach da was anderes hin ;) z.B. ''Du bist kein Beamter'' oder so..

    Server dicht machen & nie wieder einen auf machen...


    Nein, also:
    schreib mal wie du Spielerdaten speicherst.
    Du wirst ja irgendwo im Script eine Registration haben, wo das Passwort des Spielers gespeichert wird.
    Schreib hier mal hin, wie dieses Passwort nun gespeichert wird und wie du es beim Login wieder abfragst.
    Das solltest du noch hinbekommen, ich glaube an dich.
    Wenn du das geschafft hast, die zwei Sachen hier rein zu posten, helfe ich dir bei deiner eigentlichen Frage.

    hab mal gerade jemmanden gefragt und hat gesagt mann braucht für müllabfuhr
    REALABSCHLUSS


    mein notendurchschnitt 1,3 realschule

    Ich hoffe das soll ein Witz sein... ''Realabschluss'', ''jemmanden'',....



    B2T: Ich selbst war so ähnlich drauf wie du. Ich wusste nicht wohin mit mir, hatte keinen Bock auf handwerklichen Kram.
    Ich wusste, dass ich was mit Computern machen möchte.
    Jetzt sitze ich in der Ausbildung zum Fachinformatiker, Anwendungsentwicklung. Ich kann es nur empfehlen.
    Mit einem Hauptschulabschluss wird es eher schwer, klar. Aber ich denke, wenn man sich ins Zeug legt, wenn du dich privat vielleicht anfängst damit zu beschäftigen, entsprechend was vorweisen kannst dass du dann kein Anfänger mehr bist, könntest du es zumindest in ein Praktikum (wenn auch erst einmal unbezahlt) schaffen.
    Wenn du dich im Praktikum gut anstellst, hättest du nochmal bessere Chancen auf eine Ausbildungsstelle.


    Du kannst nicht erwarten, dass dir irgendetwas zufliegt, oder sich von alleine ergibt.
    Du musst dafür arbeiten, überlegen wie wichtig es dir ist, und wenn nötig auch deine Freizeit vorerst vernachlässigen.
    Wenn für dich machbar, kannst du ja einen Abschluss nachholen.
    Zum Beispiel könntest du ein Fachabitur machen, dauert 2 Jahre.
    Innerhalb der 2 Jahre hast du
    1. mehr Zeit zum überlegen, was du denn evtl. werden möchtest
    2. einen besseren Abschluss -> wesentlich mehr Chancen auf eine Ausbildung
    3. je nach Bereich (ich absolvierte ein Fachabitur im Bereich IT-Management) nochmal mehr Chancen auf deine gewünschte Ausbildung.


    Es liegt im Endeffekt allein bei dir, du bist für dich verantwortlich.


    Ich hoffe ich konnte dir vielleicht ein bisschen weiterhelfen.


    Gruß,
    Shine

    Probier es mit


    if(strcmp(cmd,"/rep",true) == 0)
    {
    if(IsACop(playerid) || IsPlayerInFrac(playerid,4) || IsPlayerInFrac(playerid,7))
    {
    if(IsPlayerInRangeOfPoint(playerid,4.0,796.9246,-2102.7170,12.6823) || IsPlayerInRangeOfPoint(playerid,4.0,1547.5944,-1610.1729,13.3828) || IsPlayerInRangeOfPoint(playerid,4.0,-1628.6464,652.0121,7.1875) || IsPlayerInRangeOfPoint(playerid,4.0,1244.3359,-2042.6630,59.8744) || IsPlayerInRangeOfPoint(playerid,4.0,1571.3887,-1705.3455,28.3948) || IsPlayerInRangeOfPoint(playerid,4.0,1692.5320,-1539.5343,13.5469))
    {
    new veh = GetPlayerVehicleID(playerid);
    if(IsAnAmbulance(veh) || IsACopCar(veh) ||IsAArmyCar(veh) || IsAPraesiCar(veh))
    {
    if(GetPlayerState(playerid) == PLAYER_STATE_DRIVER)
    {
    new Float:vehX, Float:vehY, Float:vehZ, Float:vehA;
    GetVehiclePos(veh,vehX,vehY,vehZ);
    GetVehicleZAngle(veh,vehA);
    RemovePlayerFromVehicle(playerid);
    FreezePlayer(playerid);
    SetVehicleToRespawn(veh);
    SetTimerEx("Rep",5000,0,"iiffff",playerid,veh,vehX,vehY,vehZ,vehA);
    GameTextForPlayer(playerid,"~g~Fahrzeugreperatur~n~~y~Bitte warten...",4500,3);
    }
    }
    }
    else if(IsPlayerInRangeOfPoint(playerid,4.0,1196.0211,-1351.2733,13.4017) || IsPlayerInRangeOfPoint(playerid,4.0,-1407.8838,507.2498,18.2344) || IsPlayerInRangeOfPoint(playerid,4.0,-1234.6599,473.8205,7.1875) || IsPlayerInRangeOfPoint(playerid,4.0,1136.2015,-1342.8668,13.7693))
    {
    veh = GetPlayerVehicleID(playerid);
    if(IsAnAmbulance(veh) || IsACopCar(veh) ||IsAArmyCar(veh) || IsAPraesiCar(veh))
    {
    if(GetPlayerState(playerid) == PLAYER_STATE_DRIVER)
    {
    new Float:vehX, Float:vehY, Float:vehZ, Float:vehA;
    GetVehiclePos(veh,vehX,vehY,vehZ);
    GetVehicleZAngle(veh,vehA);
    RemovePlayerFromVehicle(playerid);
    FreezePlayer(playerid);
    SetVehicleToRespawn(veh);
    SetTimerEx("Rep",5000,0,"iiffff",playerid,veh,vehX,vehY,vehZ,vehA);
    GameTextForPlayer(playerid,"~g~Fahrzeugreperatur~n~~y~Bitte warten...",4500,3);
    }
    else { SendClientMessage(playerid,COLOR_RED," Du bist nicht der Fahrer!"); }
    }
    else {SendClientMessage(playerid,COLOR_RED," Du bist in keinem Staatsfahrzeug!");}
    }
    else {SendClientMessage(playerid,COLOR_RED," Du bist an keinem /rep-Punkt!");}
    }
    else {SendClientMessage(playerid,COLOR_RED," Du bist nicht berechtigt, dein Fahrzeug auf Kosten des Staats zu reparieren!");}
    return 1;
    }



    PS: Dass das so dämlich eingerückt ist liegt ned an mir, habs nur von dir kopierrt & Klammern eingefügt...
    Erklärung: Bei sämtlichen Else-Zweigen hast du die {} vergessen. Woher soll das Programm denn wissen, wann es was ausführen soll, wenn du nichts eingrenzt?

    Mein Tipp:
    Wenn du ein GF verwendest, such dort nach den Befehlen /o oder /f
    Da schaust du an wie das mit der Reichweite geht.
    Dann schaust du wo das mit dem "%s sagt: %s" steht, das ist ja dann das ohne einen Befehl, also wenn man nur den Text eingibt.
    Dann 1 und 1 zusammen zählen, umstrukturieren, fertig.
    Anschließend fehlen nur noch die Farben, aber die kann man ja später, wenn du weißt wie, mittels switch-case einfügen.


    Wenn du kein GF nutzt das diese Befehle /o und /f hat, suchst du dir halt eins. Einfach die Pwn download, nebenher öffnen und schauen wie das geht.
    Ggf. dann auf dein Script anpassen...



    Mehr kann ich dir leider von hier aus nicht helfen, sorry.

    Er meint den ''bekannten'' OOC aus nem GF...
    Da ist es so, wenn man /o TEXT schreibt, sehen es alle.
    Er will aber nicht dass man /o TEXT schreibt, sondern einfach nur TEXT.


    Zusätzlich soll in diesem ''Mainchat'' die Fraktion des Spielers erkannt werden, und die Namen farbig ausgegeben werden.


    Bsp.:
    Hans im FBI, Peter der GroveStreet:
    Hans: Hi
    Peter: Hi, was geht ab?


    Und das soll komplett ohne ''Reichweite'' gehen, d.h. jeder kann es lesen, egal wer, egal wo.


    Nur wie man das umsetzt weiß ich gerade nicht.

    Hätte bei sowas fest mit einem Error gerechnet...
    Naja okay, mal abwarten bis ciNo sich wieder meldet.


    -> ocmd richtig includiert?
    -> Einen Befehl hier rein schreiben vom /sup wäre hilfreich um auf Logikfehler zu prüfen.

    Wie wärs mal mit nem Beispiel wie du so einen Code anlegst?..
    z.B. schreibste mal den /sup-Befehl hier rein.
    Hast mit sicherheit irgendwelche Logikfehler drin von den Abfragen her, ein > oder so falsch herum z.B....


    Das return 1; an den Befehlen sagt eig. nur, dass du kein ''Server unknown command'' bekommst - ob du es hinmachst oder nicht wirkt sich aber nicht auf den Befehl an sich aus.

    Da ist es doch das gleiche innerhalb der Switch-Case Anweisung.
    Du fragst Dinge über if() ab, setzt aber kein else().
    Ob und an welchen Stellen es bei Pawn benötigt wird, weiß ich nicht, aber vom logischen her würde ich sagen: Machs rein.


    Um ein Beispiel zu nennen:
    case 0:{
    if(GetPVarInt(playerid,"Prempoints")<100){
    return SendClientMessage(playerid,ROT,"Du hast zu wenigPremiumpunkte!!");
    }
    else{
    SetPVarInt(playerid,"Prempoints",GetPVarInt(playerid,"Prempoints") - 100);
    SetPVarInt(playerid,"Bank",GetPVarInt(playerid,"Bank") + 10000);
    SendClientMessage(playerid,BLAU,"Es wurden 10000euro auf deine Bank eingezahlt.");
    }
    }
    Das macht den Code zwar wesentlich länger, aber ich denke auch wesentlich übersichtlicher.
    Du kannst es natürlich kürzen wie du willst, es soll dir nur veranschaulichen was ich meine.



    //edit:
    Zusätzlich:
    Wenn du nacher das Problem hast, dass dir beim Kauf nicht die Punkte bei case 0 abgezogen werden, sondern einfach auf -100 gesetzt werden, egal wie viele Punkte du hast,
    probiers mit -= 100, an Stelle von -100.
    Das gleiche beim Geld mit += 10000, und bei allen anderen case-Anweisungen.

    scmd(premshop)
    {
    if(IsPlayerInRangeOfPoint(playerid,3.0,2309.4846,-2.2630,26.7422)) return SendClientMessage(playerid,ROT,"Du bist nicht am Premium Shop!!");
    {
    ShowPlayerDialog(playerid,DIALOG_PREMSHOP,DIALOG_STYLE_LIST,"Premium Shop","Premiumpunkte einlösen\nPremiumpunkte aufladen\n","Auswählen","Abbrechen");
    }
    return 1;
    }
    Ist ein Logikfehler.
    Kann aber auch sein, dass ich mich irre xD


    Probiers mal mit


    scmd(premshop)
    {
    if(!IsPlayerInRangeOfPoint(playerid,3.0,2309.4846,-2.2630,26.7422)){ return SendClientMessage(playerid,ROT,"Du bist nicht am Premium Shop!!");}
    else{
    ShowPlayerDialog(playerid,DIALOG_PREMSHOP,DIALOG_STYLE_LIST,"Premium Shop","Premiumpunkte einlösen\nPremiumpunkte aufladen\n","Auswählen","Abbrechen");
    }
    return 1;
    }