• Bitte schaltet eure Ad Blocker aus. SLinfo kann nur betrieben werden, wenn es durch Werbung Einnahmen erzielt. Vielen Dank!!
  • Wir freuen uns, wenn du dich in unserem Forum anmeldest. Bitte beachte, dass die Freigabe per Hand durchgeführt wird (Schutz vor Spammer). Damit kann die Freigabe bis zu 24 Stunden dauern.
  • Wir verwenden Cookies, um Inhalte und Anzeigen zu personalisieren, Funktionen für soziale Medien anbieten zu können und die Zugriffe auf unsere Website zu analysieren. Sie geben Einwilligung zu unseren Cookies, wenn Sie unsere Webseite weiterhin nutzen.

random Item Giver alle 24 Std auf klick

ihr habt ja recht,
ich sollte mir ne ordentliche formatierung angewöhnen

so ist es besser und dann hab ich den Fehler auch gefunden:

Code:
integer reset_list=86400;//reset list nach einem Tag (in sekunden)
list klick;

default
{
	touch_start(integer total_number)
	{
       	    key id = llDetectedKey(0);
       	    string name = llDetectedName(0);
        
		if(llListFindList(klick,[id])==-1)
		{
       	 	   klick+=[id];
           	   llGiveInventory(id,llGetInventoryName(INVENTORY_OBJECT,(integer)llFrand(llGetInventoryNumber(INVENTORY_OBJECT))));
           	   llSay(0,"Herzlichen Glückwunsch " + name + " zu deinem Gewinn");
       	        }
		else
		{
           	   llSay(0,"schade " + name + ", du hattest heute deinen Gewinn schon abgeholt\nversuch es doch Morgen noch einmal!,");
       	        }
        
		if(llGetTime()>=reset_list)
		{
           	   llResetScript();
       	        }
       }
}

danke euch alle recht herzlich

Jojo

Da ist immer noch ein kleiner Formatierungsfehler drin, der if/else Block ab Zeile 11 ist zu weit eingerückt.
Der Trick an der sauberen Einrückung ist, dass man damit bei vielen Programmen Klammerfehler/Semikolonfehler schnell erkennen kann. Der LSL Editor (LSL Editor Community Edition | Free Development software downloads at SourceForge.net) kann z.B. automatisch richtig einrücken/formatieren, wenn man strg+D drückt, abhängig von den gesetzen Klammern/Semikolons. Und wenn es dann irgengwas verhaut bei dieser Aktion hat man entweder eine Klammer vergessen oder ein Semikolon.

Ansonsten würde ich immer nur den Key des Avas in der Liste speichern und den DisplayNamen des daraus im Else Loop generieren. (Der Username hat manchmal ein Resident)
 
Kleine Ergaenzung.
Dem Server ist es schnutz piep egal wie du das Script schreibst. Voellig egal ob du alle Eintraege direkt unter einander machst oder einfach komplett ohne zu Entern alles in Zeile 0 nebeneinander schreibst.
Eine saubere Formatierung ist nur fuer dich und andere die es ebenfalls lesen sollen. Wenn in deinem Script reines Chaos herrscht bist du ewig damit beschaeftig ueberhaupt mal einen Ueberblick zu bekommen. Damit erleichterst du dir auch spaeteres Aendern und musst nicht lange suchen.

Kleine Anekdote.
Vor ein paar Tagen gab mir ein Freund mal ein Script zum rein sehen, da hab ich nur die Haende uebern kopf zusammen geschlagen.
Fuer ihn ist es alles Uebersichtlich, weil er es gewohnt ist, aber ich habe da so meine Schwierigkeiten.
Selbst nach 5maligen rauf und runter Scrollen konnte ich zum verrecken den dataserver Event nicht finden, ich musste tatsaechlich die Suche benutzen und dort dataserver eingeben.
Der Event dataserver stand direkt unter einer if else auf gleicher hoehe. Da der Event bei mir hellblau und die if's dunkelblau dargestellt werden, kann ich lange suchen. Das hebt sich naemlich nicht voneinander ab wenn es direkt zusammen steht.
Scripttechnich ist er ein Genie, aber in der Schreibweise eine alte Sau.
Nach 5 Minuten habe ich das Script mit den Worten "tut mir Leid, aber das kann und will ich nicht lesen" einfach geschlossen.
Ich muesste mir vorher eine geschlagene halbe Stunde Zeit nehmen, nur um die Klammern und Einrueckungen zu sortieren, um einen Ueberblick zu finden.
Darauf habe ich definitiv keine Lust.

LG
Dae
 

Users who are viewing this thread

Zurück
Oben Unten