<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://wiki.multitheftauto.com/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=TheGreenkeyy</id>
	<title>Multi Theft Auto: Wiki - User contributions [en]</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.multitheftauto.com/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=TheGreenkeyy"/>
	<link rel="alternate" type="text/html" href="https://wiki.multitheftauto.com/wiki/Special:Contributions/TheGreenkeyy"/>
	<updated>2026-04-24T19:03:33Z</updated>
	<subtitle>User contributions</subtitle>
	<generator>MediaWiki 1.39.3</generator>
	<entry>
		<id>https://wiki.multitheftauto.com/index.php?title=Template:DE/N%C3%BCtzliche_Funktionen&amp;diff=43260</id>
		<title>Template:DE/Nützliche Funktionen</title>
		<link rel="alternate" type="text/html" href="https://wiki.multitheftauto.com/index.php?title=Template:DE/N%C3%BCtzliche_Funktionen&amp;diff=43260"/>
		<updated>2014-12-12T19:46:01Z</updated>

		<summary type="html">&lt;p&gt;TheGreenkeyy: Translated table.map to german&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;*[[callClientFunction]] &amp;lt;span style=&amp;quot;color:gray; font-family:'Georgia',sans-serif; font-size:smaller;&amp;quot;&amp;gt;» Diese Funktion erlaubt es jede clientseitige Funktion vom Server aus aufzurufen.&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*[[callServerFunction]] &amp;lt;span style=&amp;quot;color:gray; font-family:'Georgia',sans-serif; font-size:smaller;&amp;quot;&amp;gt;» Diese Funktion erlaubt es dir jede serverseitige Funktion vom Client aus aufzurufen.&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*[[Check]] &amp;lt;span style=&amp;quot;color:gray; font-family:'Georgia',sans-serif; font-size:smaller;&amp;quot;&amp;gt;» Diese Funktion überprüft ob die Argumente vom richtigen Typ sind und ruft die Error-Funktion auf wenn nicht.&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*[[doForAllElements]] &amp;lt;span style=&amp;quot;color:gray; font-family:'Georgia',sans-serif; font-size:smaller;&amp;quot;&amp;gt;» Diese Funktion kann benutzt werden um eine bestimmte Funktion für alle Elemente eines bestimmten Typs auszuführen.&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*[[iterElements]] &amp;lt;span style=&amp;quot;color:gray; font-family:'Georgia',sans-serif; font-size:smaller;&amp;quot;&amp;gt;» Spart Zeit beim schreiben von &amp;amp;nbsp;for Schleifen&amp;amp;nbsp;. Anstatt &amp;amp;nbsp;ipairs( getElementsByType( type))&amp;amp;nbsp; wird &amp;amp;nbsp;iterElements( type )&amp;amp;nbsp; benutzt.&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*[[findRotation]] &amp;lt;span style=&amp;quot;color:gray; font-family:'Georgia',sans-serif; font-size:smaller;&amp;quot;&amp;gt;» Nimmt zwei Punkte und gibt die Richtung von Punkt A zu Punkt B aus.&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*[[FormatDate]] &amp;lt;span style=&amp;quot;color:gray; font-family:'Georgia',sans-serif; font-size:smaller;&amp;quot;&amp;gt;» Formatiert ein Datum nach den Standards.&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*[[getAge]] &amp;lt;span style=&amp;quot;color:gray; font-family:'Georgia', sans-serif; font-size:smaller;&amp;quot;&amp;gt;» Diese Funktion kalkuliert ein Alter eines Geburtsdatums.&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*[[getPointFromDistanceRotation]] &amp;lt;span style=&amp;quot;color:gray; font-family:'Georgia',sans-serif; font-size:smaller;&amp;quot;&amp;gt;» Findet einen Punkt basierend auf dem Start-Punk, Richtung und Entfernung.&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*[[getTimestamp]] &amp;lt;span style=&amp;quot;color:gray; font-family:'Georgia',sans-serif; font-size:smaller;&amp;quot;&amp;gt;» Mit dieser Funktion kann die [http://en.wikipedia.org/wiki/Unix_time UNIX Zeit] benutzt werden.&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*[[IfElse]] &amp;lt;span style=&amp;quot;color:gray; font-family:'Georgia',sans-serif; font-size:smaller;&amp;quot;&amp;gt;» Gibt einen von zwei Werten, basierend auf einer boolean, aus.&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*[[isLeapYear]] &amp;lt;span style=&amp;quot;color:gray; font-family:'Georgia',sans-serif; font-size:smaller;&amp;quot;&amp;gt;» Überprüft ob das gegebene Jahr ein Schaltjahr ist.&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*[[math.round]] &amp;lt;span style=&amp;quot;color:gray; font-family:'Georgia',sans-serif; font-size:smaller;&amp;quot;&amp;gt;» Rundet eine Zahl auf die angegebenen Dezimalstellen und der Methode.&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*[[setTableProtected]] &amp;lt;span style=&amp;quot;color:gray; font-family:'Georgia',sans-serif; font-size:smaller;&amp;quot;&amp;gt;» Schützt eine Tabelle und setzt sie zu &amp;quot;Read-Only&amp;quot;.&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*[[setVehicleGravityPoint]] &amp;lt;span style=&amp;quot;color:gray; font-family:'Georgia',sans-serif; font-size:smaller;&amp;quot;&amp;gt;» Diese clientseitige Funktion setzt den Gravitations Punkt in drei, dreidimensionalen Koordinaten mit der Stärke fest.&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*[[string.explode]] &amp;lt;span style=&amp;quot;color:gray; font-family:'Georgia',sans-serif; font-size:smaller;&amp;quot;&amp;gt;» Diese Funktion spaltet einen &amp;quot;String&amp;quot; an einem bestimmten Punkt und füg sie in eine Tabelle in Stücken ein.&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*[[table.copy]] &amp;lt;span style=&amp;quot;color:gray; font-family:'Georgia',sans-serif; font-size:smaller;&amp;quot;&amp;gt;» Diese Funktion kopiert eine ganze Tabelle mit allen beinhaltenden Tabellen.&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*[[table.map]] &amp;lt;span style=&amp;quot;color:gray; font-family:'Georgia',sans-serif; font-size:smaller;&amp;quot;&amp;gt;» Diese Funktion läuft durch eine Tabelle und ersetzt jedes Feld mit dem Rückgabewert der angegebenen Funktion, wobei der Wert des Feldes als erstes Argument übergeben wird und optional weitere Argumente übergeben werden können.&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*[[table.size]] &amp;lt;span style=&amp;quot;color:gray; font-family:'Georgia',sans-serif; font-size:smaller;&amp;quot;&amp;gt;» Findet die größe einer Tabelle.&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*[[var_dump]] &amp;lt;span style=&amp;quot;color:gray; font-family:'Georgia',sans-serif; font-size:smaller;&amp;quot;&amp;gt;»Diese Funktion gibt Informationen über eine oder mehrere Variablen über &amp;amp;nbsp;outputConsole()&amp;amp;nbsp; aus. &amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*[[RGBToHex]] &amp;lt;span style=&amp;quot;color:gray; font-family:'Georgia',sans-serif; font-size:smaller;&amp;quot;&amp;gt;» Diese Funktion gibt einen &amp;quot;String&amp;quot; aus, der die Farbe in Hexadezimal enthält.&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*[[getAlivePlayersInTeam]] &amp;lt;span style=&amp;quot;color:gray; font-family:'Georgia',sans-serif; font-size:smaller;&amp;quot;&amp;gt;» Diese Funktion gibt eine Tabelle mit den aktuell lebenden Spieler eines Teams aus.&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*[[getResourceSettings]] &amp;lt;span style=&amp;quot;color:gray; font-family:'Georgia',sans-serif; font-size:smaller;&amp;quot;&amp;gt;» Diese Funktion gibt eine Tabelle mit den Ressourcen Informationen aus.&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*[[onVehicleWeaponFire]] &amp;lt;span style=&amp;quot;color:gray; font-family:'Georgia',sans-serif; font-size:smaller;&amp;quot;&amp;gt;» Dieser Code implementiert ein Event das ausgelöst wird wenn ein Spieler die Waffe eines Fahrzeuges benutzt.&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*[[toHex]] &amp;lt;span style=&amp;quot;color:gray; font-family:'Georgia',sans-serif; font-size:smaller;&amp;quot;&amp;gt;» Diese Funktion konvertiert eine Dezimalzahl zu einer Hexadezimalzahl, als Problem Behebung clientseitig.&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*[[getElementSpeed]] &amp;lt;span style=&amp;quot;color:gray; font-family:'Georgia',sans-serif; font-size:smaller;&amp;quot;&amp;gt;» Diese Funktion nimmt die Schnelligkeit eines Elements in kph(kilometers per hour) oder in mph(miles per hour).&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*[[setElementSpeed]] &amp;lt;span style=&amp;quot;color:gray; font-family:'Georgia',sans-serif; font-size:smaller;&amp;quot;&amp;gt;» Diese Funktion setzt die Schnelligkeit eines Elements in kph(kilometers per hour) oder in mph(miles per hour).&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*[[centerWindow]] &amp;lt;span style=&amp;quot;color:gray; font-family:'Georgia',sans-serif; font-size:smaller;&amp;quot;&amp;gt;» Diese Funktion zentriert ein Fenster in jeder Auflösung.&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*[[coroutine.resume]] &amp;lt;span style=&amp;quot;color:gray; font-family:'Georgia',sans-serif; font-size:smaller;&amp;quot;&amp;gt;» Fix für Koroutine Fehler-Nachrichten&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*[[getPlayerFromNamePart]] &amp;lt;span style=&amp;quot;color:gray; font-family:'Georgia',sans-serif; font-size:smaller;&amp;quot;&amp;gt;» Diese Funktion nimmt den Spieler bei einem Teil seines Namens.&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*[[string.count]] &amp;lt;span style=&amp;quot;color:gray; font-family:'Georgia',sans-serif; font-size:smaller;&amp;quot;&amp;gt;» Diese Funktion zählt euch auf, wie oft ein bestimmter String in einem anderen gegebenen String vorhanden ist.&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Category:Useful Functions]]&lt;/div&gt;</summary>
		<author><name>TheGreenkeyy</name></author>
	</entry>
	<entry>
		<id>https://wiki.multitheftauto.com/index.php?title=Git_Coding_Guidelines&amp;diff=37199</id>
		<title>Git Coding Guidelines</title>
		<link rel="alternate" type="text/html" href="https://wiki.multitheftauto.com/index.php?title=Git_Coding_Guidelines&amp;diff=37199"/>
		<updated>2013-09-17T21:46:39Z</updated>

		<summary type="html">&lt;p&gt;TheGreenkeyy: Not a deprecated function&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;#REDIRECT [[Coding_guidelines]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
This page is to discuss a new set of coding guidelines that will be used for the rest of the development phase through [http://git-scm.com/ Git] and [http://www.github.com/ GitHub].  It also covers related aspects of the development process such as nightly builds.&lt;br /&gt;
&lt;br /&gt;
Before you start reading, ask for a link to the Git guide. It does a pretty good job of explaining how Git works.&lt;br /&gt;
&lt;br /&gt;
== Quick tutorial ==&lt;br /&gt;
For a quick tutorial on how to setup and use TortoiseGit, go to the [http://wiki.github.com/multitheftauto/multitheftauto/how-to-use-tortoisegit How to use TortoiseGit] wiki page on GitHub.&lt;br /&gt;
&lt;br /&gt;
== Why Git? ==&lt;br /&gt;
Git has several advantages compared to the previous source code management system Subversion. Some relevant features are outlined below.&lt;br /&gt;
&lt;br /&gt;
=== Forks and patches ===&lt;br /&gt;
One of the differences of Git is that it is distributed. That is, everyone owns his/her own repository that is [http://en.wikipedia.org/wiki/Fork_(software_development) forked] from our main repository [http://github.com/multitheftauto/multitheftauto/tree multitheftauto/multitheftauto], and all the changes that one would normally commit to the SVN trunk (or branch) are kept in that forked repository.&lt;br /&gt;
&lt;br /&gt;
The advantage of this approach is that any programmer in the world that is registered at GitHub is capable of forking the multitheftauto repository and work on their own changes. All forks based on multitheftauto will show up on the [http://github.com/multitheftauto/multitheftauto/network/members Networks] page at GitHub, so it'll be easy to track. No need to mess around with patches: if we see someone doing good work, whether it be a known or unknown developer, it's just a matter of reviewing the commits (comments can be posted for every commit, in every file, on every line) and pull (fetch &amp;amp; merge) them into the multitheftauto repository. See the guide (p.39) for more details.&lt;br /&gt;
&lt;br /&gt;
==== Offline commits ====&lt;br /&gt;
Another feature of Git is that you don't need an internet connection in order to commit. You can commit as much as you want to your local (off-line) repository, and just push all of these when you feel like it. Obviously, this benefits the speed at which you commit as there's no need to send any data to the remote repository. This can also be advantageous when you're doing a lot of work that you want to split up in commits for maintainability and push in one go.&lt;br /&gt;
&lt;br /&gt;
==== Synchronization with SVN ====&lt;br /&gt;
Git is fully compatible with our current SVN repository. This means that any changes that are made in git repositories can be committed to the SVN repository, and any changes that are made in the SVN repository can be fetched into the git repository. As far as migration goes, this is pretty valuable as we will be able to work side-to-side with SVN and git while people are switching over.&lt;br /&gt;
&lt;br /&gt;
== Master, experimental, trunks and branches ==&lt;br /&gt;
[[File:Gitsetup.png|thumb|400px]]&lt;br /&gt;
&lt;br /&gt;
The main repository ''multitheftauto/multitheftauto'' will be set up with write access for all current project contributors and owners. The repository is structed as follows:&lt;br /&gt;
* master&lt;br /&gt;
* merge&lt;br /&gt;
* untested&lt;br /&gt;
* experimental&lt;br /&gt;
* 1.0-Release (tag)&lt;br /&gt;
&lt;br /&gt;
=== Master ===&lt;br /&gt;
The ''master'' is the default (top) branch that will contain the stable version that will ultimately form the next release.. and nothing more than that. This is not the SVN trunk. On release, it will be forked into 1.x-Release and the entire cycle starts over again. In order to keep the master stable, we will only merge the changes in that are planned and outlined in the [[Roadmap]]. Nightly builds will be available for anyone who wishes to test and use the stable version. Nothing should get into this master branch without having been thoroughly tested. This branch should remain as stable as a release build.&lt;br /&gt;
&lt;br /&gt;
=== Merge ===&lt;br /&gt;
The ''merge'' branch is the first stop for code that originates from a developer's fork and is intended for the release. All code should naturally be tested to the extent of the developer's own ability first. Experimental code that is more likely to break should go into the ''experimental'' branch instead.&lt;br /&gt;
&lt;br /&gt;
The ''merge'' branch will be a collection/mess of untested changes that have been pulled in from forks by anyone with write access. The changes can be rapidly tested in the ''unstable'' build. This build is comparable to a nightly trunk build, which can be seriously broken at times.&lt;br /&gt;
&lt;br /&gt;
=== Untested ===&lt;br /&gt;
The ''untested'' branch sits below ''merge'' and is intended to act as a barrier to ''master''. By using this barrier, we can selectively choose sets of multiple (related) changes from ''merge'' that are considered to be complete. While ''merge'' may contain all sorts of unrelated pulled-in changes from various developers that are still only half working (due to programmer error), the ''untested'' branch will only pull these changes in when they're considered complete every few days. A build containing a specific set of changes is then generated and tested (ideally this would be automated at some point).&lt;br /&gt;
&lt;br /&gt;
=== Experimental ===&lt;br /&gt;
The ''experimental'' branch is for risky code or work-in-progress code that needs to be built by the build system so that it can be tested. Once it has been found to be stable, it can be merged up to ''merge'' from the original fork. Periodically this fork may be reset to being identical to ''merge'', and will be kept in sync with ''merge''. If necessary more experimental branches could be created if more than one experimental feature requires a build at once.&lt;br /&gt;
&lt;br /&gt;
=== Your forks ===&lt;br /&gt;
You should generally fork either ''merge'' or ''experimental'' and work there, then merge up to the relevant branch when you're ready.&lt;br /&gt;
&lt;br /&gt;
== Guidelines ==&lt;br /&gt;
Commits that are merged from a fork into ''merge'' must be:&lt;br /&gt;
* reviewed by other developers&lt;br /&gt;
* tested for stability and correctness (if necessary, the commit can be pulled into ''experimental'' first for testing purposes)&lt;br /&gt;
&lt;br /&gt;
Commits that have already been merged into ''experimental'' and were found to be stable must be:&lt;br /&gt;
* reviewed by other developers in the originating fork&lt;br /&gt;
* pulled from the originating fork into ''master''&lt;br /&gt;
&lt;br /&gt;
== Nightly builds ==&lt;br /&gt;
As mentioned above, nightly builds will be available in four different flavours:&lt;br /&gt;
* rc (release candidate, compiled from ''multitheftauto/multitheftauto/master''), rarely built&lt;br /&gt;
* untested (compiled from ''multitheftauto/multitheftauto/untested''), built on-change&lt;br /&gt;
* unstable (compiled from ''multitheftauto/multitheftauto/merge''), frequently built&lt;br /&gt;
* experimental (compiled from ''multitheftauto/multitheftauto/experimental''), built on-demand&lt;br /&gt;
&lt;br /&gt;
For more information, head over to the [http://nightly.mtasa.com Nightly Builds] page.&lt;/div&gt;</summary>
		<author><name>TheGreenkeyy</name></author>
	</entry>
</feed>