<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="de">
		<id>https://wiki.samp-udf.net/index.php?action=history&amp;feed=atom&amp;title=AHK_L%3AFunktionen</id>
		<title>AHK L:Funktionen - Versionsgeschichte</title>
		<link rel="self" type="application/atom+xml" href="https://wiki.samp-udf.net/index.php?action=history&amp;feed=atom&amp;title=AHK_L%3AFunktionen"/>
		<link rel="alternate" type="text/html" href="https://wiki.samp-udf.net/index.php?title=AHK_L:Funktionen&amp;action=history"/>
		<updated>2026-04-29T16:43:19Z</updated>
		<subtitle>Versionsgeschichte dieser Seite in San Andreas Multiplayer UDF</subtitle>
		<generator>MediaWiki 1.28.1</generator>

	<entry>
		<id>https://wiki.samp-udf.net/index.php?title=AHK_L:Funktionen&amp;diff=18&amp;oldid=prev</id>
		<title>Suchty112: Die Seite wurde neu angelegt: „== Vorwort == Funktionen sind dafür gedacht, wiederekhrende Codefragmente nur einmal zu schreiben aber sie immer wieder zu nutzen. &lt;br&gt; Man kann dieses zwar a…“</title>
		<link rel="alternate" type="text/html" href="https://wiki.samp-udf.net/index.php?title=AHK_L:Funktionen&amp;diff=18&amp;oldid=prev"/>
				<updated>2014-09-08T14:11:32Z</updated>
		
		<summary type="html">&lt;p&gt;Die Seite wurde neu angelegt: „== Vorwort == Funktionen sind dafür gedacht, wiederekhrende Codefragmente nur einmal zu schreiben aber sie immer wieder zu nutzen. &amp;lt;br&amp;gt; Man kann dieses zwar a…“&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Neue Seite&lt;/b&gt;&lt;/p&gt;&lt;div&gt;== Vorwort ==&lt;br /&gt;
Funktionen sind dafür gedacht, wiederekhrende Codefragmente nur einmal zu schreiben aber sie immer wieder zu nutzen. &amp;lt;br&amp;gt;&lt;br /&gt;
Man kann dieses zwar auch ber (GoSub) lösen, doch können wir da keine Werte übergeben, sondern sie bleiben starr. Durch das Nutzen einer Funktion, machen wir unseren Code Dynamisch. Es ist nur zu beachten, das wir Variablen die wir im Script verwenden nicht innerhalb einer Funktion nutzen können. Wir müssen sie Übergeben.&lt;br /&gt;
&amp;lt;div style=&amp;quot;background: #dcdcdc; border:1px solid #000; margin-bottom:5px; width:500px&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;div style=&amp;quot;border-left: 10px solid blue; padding: 2px 2px 1px 8px;&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;&lt;br /&gt;
&amp;lt;strong&amp;gt;Merke:&amp;lt;/strong&amp;gt;&lt;br /&gt;
Variablen können wir nicht Direkt verwenden, wir müssen sie Übergeben&lt;br /&gt;
&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Erstellen einer Funktion ==&lt;br /&gt;
Um eine Funktion zu erstellen benötigt es nicht viel &lt;br /&gt;
&amp;lt;source lang=&amp;quot;Autohotkey&amp;quot;&amp;gt;&lt;br /&gt;
VarOutput()&lt;br /&gt;
{&lt;br /&gt;
	Var := !Var&lt;br /&gt;
	return, Var&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Nun wollen wir iuns mit dem Aufbau einer Funktion befassen. &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;quot;VarOutput()&amp;quot; dieses setzt unseren Namen der Funktion &amp;lt;br&amp;gt;&lt;br /&gt;
Dann folgen unsere Klammern, wo wir unseren &amp;quot;Arbeitsbereich&amp;quot; mit eingrenzen&amp;lt;br&amp;gt;&lt;br /&gt;
Wichtig ist, das wir das Return innerhalb der klammer setzen denn nur hier können wir auch das Ergebniss mit ausgeben.&amp;lt;br&amp;gt;&lt;br /&gt;
Doch was bringt uns das nun? &amp;lt;br&amp;gt;&lt;br /&gt;
Wir könnten nun per &lt;br /&gt;
&amp;lt;source lang=&amp;quot;Autohotkey&amp;quot;&amp;gt;&lt;br /&gt;
OutputVar := VarOutput()&lt;br /&gt;
&amp;lt;/source&amp;gt; &lt;br /&gt;
Das Ergebniss in einer Variable speichern um sie so auch zu verwenden&lt;br /&gt;
&amp;lt;source lang=&amp;quot;Autohotkey&amp;quot;&amp;gt;&lt;br /&gt;
Loop, 4&lt;br /&gt;
{&lt;br /&gt;
	OutputVar := VarOutput()&lt;br /&gt;
	MsgBox % OutputVar&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
VarOutput()&lt;br /&gt;
{&lt;br /&gt;
	Var := !Var&lt;br /&gt;
	return, Var&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Doch wird uns das nicht vieles bringen, da die Var immer 1 sein wird. Denn wir können die Var nicht nach Aussen speichern, sie wird innerhalb der Funktion verworfen sobald sie nicht mehr gebraucht wird. Um dieses verhalten zu ändern müssen wir Variablen auch übergeben. &lt;br /&gt;
&amp;lt;source lang=&amp;quot;Autohotkey&amp;quot;&amp;gt;&lt;br /&gt;
OutputVar := &amp;quot;&amp;quot;&lt;br /&gt;
Loop, 4&lt;br /&gt;
{&lt;br /&gt;
	OutputVar := VarOutput(OutputVar)&lt;br /&gt;
	MsgBox % OutputVar&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
VarOutput(str)&lt;br /&gt;
{&lt;br /&gt;
	Var := !str&lt;br /&gt;
	return, Var&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Es gibt auch noch eine zweite Möglichkeit, diese möchte ich euch auch nicht Vorenthalten. Wir benutzen hierfür &amp;quot;global&amp;quot;. Das erlaubt uns Variablen Global zu setzen und so auch den Inhalt abzurufen. &lt;br /&gt;
&amp;lt;source lang=&amp;quot;Autohotkey&amp;quot;&amp;gt;&lt;br /&gt;
Loop, 4&lt;br /&gt;
{&lt;br /&gt;
	OutputVar := VarOutput()&lt;br /&gt;
	MsgBox % OutputVar&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
VarOutput()&lt;br /&gt;
{&lt;br /&gt;
	global OutputVar&lt;br /&gt;
	Var := !OutputVar&lt;br /&gt;
	return, Var&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
es ist hier immer sinnvoller den Parameter &amp;quot;global&amp;quot; zu verwenden.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Interesannt ist, das wir nun auch unsere Funktion direkt wiedergeben können&lt;br /&gt;
&amp;lt;source lang=&amp;quot;Autohotkey&amp;quot;&amp;gt;&lt;br /&gt;
Loop, 4&lt;br /&gt;
{&lt;br /&gt;
	OutputVar := VarOutput()&lt;br /&gt;
	MsgBox % VarOutput()&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
VarOutput()&lt;br /&gt;
{&lt;br /&gt;
	global OutputVar&lt;br /&gt;
	Var := !OutputVar&lt;br /&gt;
	return, Var&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
=== Optionale Parameter ===&lt;br /&gt;
Uns ist es gegeben, Parameter auch Optional zu setzen, d.h. das beim Funktionsaufruf der Parameter nicht angegeben werden muss, aber kann. Dazu setzen wir die Parameterbezeichnung ein &amp;quot;=&amp;quot; mit dem Standartwert hintendrann (Texte müssen mit &amp;quot;&amp;quot; gekennzeichnet sein) &lt;br /&gt;
&amp;lt;source lang=&amp;quot;Autohotkey&amp;quot;&amp;gt;&lt;br /&gt;
MsgBox % VarOutput(&amp;quot;Max Mustermann&amp;quot;, &amp;quot;moin&amp;quot;)&lt;br /&gt;
MsgBox % VarOutput(&amp;quot;Max Mustermann&amp;quot;)&lt;br /&gt;
&lt;br /&gt;
VarOutput(Name, Grussformel=&amp;quot;Hallo&amp;quot;)&lt;br /&gt;
{&lt;br /&gt;
	Var := Grussformel . &amp;quot; &amp;quot; . Name . &amp;quot; Wie geht es dir?&amp;quot;&lt;br /&gt;
	return, Var&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Kategorie:AHK_L]]&lt;/div&gt;</summary>
		<author><name>Suchty112</name></author>	</entry>

	</feed>