[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
  • Moin,
    eben habe ich eine Payday Funktion erweitert.


    Nun, Jeffry hat mir schon mal bei diesem Problem geholfen doch diesmal klappt das nicht so ganz.


    Die new; funktionen sind schon rausgenommen, doch wie beim VosaRob krieg ich wirre Zahlen raus die gar nicht stimmen sollten. Jetzt hab ich versucht die unter den Includes zu deklarieren bloß bei einer MySQL Funktion schmiert der Compiler ab



    SA:MP in 2020?

  • Hey ich wollte gerade bei meiner Stadthalle z.b eine Zeit einbauen, dass man nachts von 22 Uhr bis Morgens um 8 Nicht rein kann wie scripte ich das in mein Enum sprich die 22.00 Uhr oder auch mal 22:30 Uhr ? Die abfrage bekomme ich alleine hin
    soll ich das als Float angeben ? Ich stehe bisschen aufm Schlauch


    Mit freundlichen Grüßen
    reaL.

    • Offizieller Beitrag

    Neue Funtkionen, aber wenn ich zum Beispiel ein R7 Script mit der R39 Include compilen würde, würde es Fehler geben.//E | Da ein schlicht und ergreifend neue Funktionen gibt, und alte Funtkionen ausgetauscht wurden oder verändert wurden.

    Das war mir auch bewusst, jedoch interessieren mich die explizieten Vorteile, also ob es gff. ein wenig performance schonender ist mal abgesehen von den anderen Funktionen
    //Vom Handy geschrieben

  • if(h > 22 || h < 8 || (h == 22 && m >= 30) || (h == 8 && m < 15)){ //Zwischen 22:30 und 8:15}
    Die festen Werte die ich hier eingetragen habe ersetzt du dann durch deine Variablen.

    Nein Jeffry du hast ein Fehler drinne


    Code
    if(h > 22 && h < 8 || h == 22 && m >= 30 || h == 8 && m < 15)
            		{

    So müsste es aussehen :D
    Bei der ersten abfrage ob H Größer als 22 ist und kleiner als 8 da hattest du || aber da muss ein && hin
    Aber Dankeschön funktioniert Tadellos :D


    Mit freundlichen Grüßen
    reaL.

  • do.de - Domain-Offensive - Domains für alle und zu super Preisen
  • aber wenn ich es so mache
    Komme ich rein ?

    Code
    {-1,-1,1474.6481,-1827.2919,13.5459,0,961.0393,-1279.3260,999.9360,89.7999,0,1,8,0,19,0},//Stadthalle rein
    Code
    new h,m,s;
    				gettime(h,m,s);
    				printf("%d:%d Uhr bis %d:%d Uhr",bInfo[i][b_von],bInfo[i][b_von2],bInfo[i][b_bis],bInfo[i][b_bis2]);
            		if(h > bInfo[i][b_von] || h < bInfo[i][b_bis] || (h == bInfo[i][b_von] && m >= bInfo[i][b_von2]) || (h == bInfo[i][b_bis]  && m < bInfo[i][b_bis2]))
            		{
  • Das liegt daran, dass ich den Code auf den Tageswechsel angepasst habe, wie in deinem Beispiel.
    Mache es dann so, für Zeiten die nicht über den Tageswechsel gehen:
    {-1,-1,1474.6481,-1827.2919,13.5459,0,961.0393,-1279.3260,999.9360,89.7999,0,1,19,0,8,0},//Stadthalle rein


    if(h > bInfo[i][b_von] || h < bInfo[i][b_bis] || (h == bInfo[i][b_von] && m >= bInfo[i][b_von2]) || (h == bInfo[i][b_bis] && m < bInfo[i][b_bis2])) { }
    else
    {
    //Darf rein
    }


    Ich habe es bewusst mit dem else hier gemacht und nicht mit einer kompletten Negation, um Verwechselungen auszuschließen.


    Also praktisch:
    Immer erst die späte Zeit, dann die frühe Zeit.
    Wenn nachts erlaubt: if-Teil
    Wenn tagsüber erlaubt: else-Teil

  • @Jeffry
    Kann ich Objekte auch statisch machen?
    So das sich diese nicht bewegen lassen.
    Oder hat jemand/hast du eine Technik, um dies zu erzielen?


    Ich will Mülltonnen spawnen, diese sollen sich aber nicht bewegen lassen via ein Fahrzeug/pushen.

  • Aber wenn ich das so mache dann geht es und ist doch richtig oder nicht oder bin ich Doof ?




  • Aber wenn ich das so mache dann geht es und ist doch richtig oder nicht oder bin ich Doof ?

    So rum dürfte es auch klappen, ja. Dann musst du den else Teil eben nutzen, wenn etwas über die Nacht offen hat.



    Ich will Mülltonnen spawnen, diese sollen sich aber nicht bewegen lassen via ein Fahrzeug/pushen.

    Das geht leider nicht.
    Du könntest höchstens unsichtbare feste Objekte drum herum setzen, das würde gehen.

  • Hab ein kleines Rechenproblem


    Code
    new taxvalue;
    	new scheck = PlayerInfo[playerid][pPaycheck];
    	new steuer = taxvalue / 100;
    	new lohnsteuer = scheck * steuer;
    	new gehalt = scheck * taxvalue / 100;

    Egal was ich als taxvalue definiere, der compiler stürtzt ab, jedoch wenn ich taxvalue lösche kann er wieder compilen. Was mache ich falsch?
    Sinn ist hier die Steuern auszulesen und auszurechnen für einen Kontoauszug

    SA:MP in 2020?

  • @fishy Ja, du hast taxvalue zwar deklariert aber keinen Wert zugewiesen


    Und falls du taxvalue einen Float zuweisen willst, dann solltest du new Float:taxvalue nehmen (https://wiki.alliedmods.net/Pawn_Tutorial)
    (und bei den anderen dann auch einen Float, denn wenn du etwas mit nem Float verrechnest dann kommen auch wieder Floats raus. So kenne ich das jedenfalls aus Java, vllt löst es ja das Problem ^^)


    //edit also bei mir compiliert der auch mit deinem Code, hat aber errors :D

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