KOSTENLOSE REGISTRIERUNG - FREE REGISTER
  • Willkommen, Gast!
  • Dienstag, 12. November 2024, 18:35:08
Position: Home » Tutorials » Workshop » In Bearbeitung » Variablen...ganz einfach

Willkommen im GTAvision.com Forum

Du bist noch nicht bei uns angemeldet. Wenn das dein erster Besuch bei uns ist, so kannst du die wichtigsten Funktionen des Boards in der FAQ nachlesen. Um Beiträge zu schreiben oder neue Themen zu erstellen musst du in fast jedem Forum registriert und eingeloggt sein. Dies gilt nicht bei den Newskommentaren, dort können auch Gäste etwas schreiben ohne sich vorher registrieren zu müssen. Damit du Beiträge lesen kannst, musst du dir erst ein Forum aussuchen welches dich interessiert, z.B. GTA V - Allgemeines, dann klickst du auf ein Thema das dich interessiert z.B. "Allgemeine GTA V Plauderecke" und schon kannst du die Beiträge lesen. Um im genannten Thema zu antworten, musst du dich allerdings vorher eingeloggt haben. Viel Spaß in unserem Forum, wünscht das gesamte GTAvision.com Team.

Follow @GTAvision
Thema: Variablen...ganz einfach [Seite 1 ]  

Kein neuer Beitrag 10.12.2008, 22:17
Beitrag #1   

Yoda
Obergangster
* * * * * * O O O O O
Kein Bild vorhanden
Registrierung: 16.03.2008, 16:40
User-Info: Hp: www.chris-space.de.vu
Beiträge: 190

Warum schreibe ich ein Tutorial?...

Also ja, ich versuche mich selber schon lange an vielen Programmiersprachen wie C++,php,html und
halt auch pawn. Nun ich möchte mein wissen nun auch an andere weitergeben, die vllt Interresse in
diesem bereich haben.


Um was gehts hier?

Hier veröffentliche ich nun ein kleines Tutorial was euch helfen soll mit Variablen umzugehen.
_______________________________________________________________________________

1. Deklaration einer Variable


1.1. Allgemein

Um eine Variable verwenden zu können muss diese erstmal deklariert(erklären/aufführen) werden.
Dazu benutzen wir im Panwo die Funktion:

Code:
1
new namedervariable;


1.2. Int Variable

Eine Int-Variable, also eine Variable der eine bestimmte Zahl zugeordnet werden kann würd so
deklariert:

Code:
1
new intvariable;


Zur Definition dieser Variablae komme ich später.

1.3. Player Variable

Eine Player-Variable, also eine Variable die sich auf einen Player bezieht würd so deklariert:

Code:
1
new playervariable[MAX_PLAYERS];


Zur Definition dieser Variable komme ich später.

1.4. String Variable

Eine String Variable ist eine Variable der man einen String(bustaben,sätze,etc.) anhängt.Diese
deklariert man so:

Code:
1
new stringvariable[256];


_______________________________________________________________________________
2. Definition einer Variable

2.1. Allgemein

Durch die Definition einer Variable würd ein Wert/String in dieser gespeichert.

Code:
1
2
3
4
5
variable = Wert;
playervar = Wert;
new stringvar[256]; // stringvar = Name; [256] = Meistbenutze Länge einer Variable in Zeichen 
format(stringvar, sizeof(stringvar), "Ich bin der String von 'stringvar'."); // stringvar = Name; sizeof(stringvar) = Oben angegebene Länge der Variable
//bitte mit den Stringgrößen sparen, es würd nie ein String von der größe 256 gebraucht!!!


2.2. Arten der Wert zuweißung an Intvariablen

Man kann auf verschiedene weißen den Wert einer Intvariable verändern:

Deklaration und Definition auf einmal:

Code:
1
new variable = Wert;


Definition einzeln:

Code:
1
variable = Wert;


2.2.1. Wert verändern der Intvariable

Code:
1
2
3
4
5
6
7
variable++; //zu der variable würd 1 dazu gerechnet
variable--;//von der variable werden 1 abgezogen
variable += wert; //+ den besagten wert
variable -= wert;//- den besagten wert
variable = wert;//überschreibt den alten wert
variable = wert+wert;//variable würd zu der summe der beiden werte
... 


2.3. Stringvariablen

Code:
1
2
format(stringvar, sizeof(stringvar), "Ich bin der String von 'stringvar'.");
//der variable stringvar würd hier ein text(string) zugewiesen


_______________________________________________________________________________
3. Variablen Arrays zuweisen

3.1. Was ist ein Array

Arrays ermöglichen es uns eine Variable mehrmals in verschiedenster weiße zu benutzen. Also kann
man mit einem Array mehrere Informationen für eine Variable speichern.

3.2. Allgemeine Deklaration

Code:
1
new array[5];//die 5 steht dafür wie viele Varianten diese Variable verfügbar ist


3.3. Mehrdimensionales Arrays Deklarieren

>> Eindimensionales Array:
Code:
1
new array[5];//man kann 5 verschiedene Definitionen ausführen


>>Zweidimensionales Array:
Code:
1
new array[5][5];//man kann 5*5 verschiedene Definitionen ausführen


>>Ndimensionales Array:
Code:
1
2
new array[5][5][5]...;//man kann 5*N verschiedene Definitionen ausführen
//in pawn sind nur bis zu Dreidimensionale arrays erlaubt, in c++ kann dies unendlich ausgeweitet werden


3.4. Definieren eines Arrays

Wie schon gesagt kann man nun eine Variable mehrfachnutzen. Wie die Definition aussieht seht ihr
hier:

Wir arbeiten hier mit einen einwertigen Array
Code:
1
2
3
4
5
6
7
8
new array[5];//Deklaration

/////Definition
array[0] = 1; // erste variante
array[1] = 2; // zweite variante
array[2] = 3;
array[3] = 4;
array[4] = 5; // fünfte variante


Vllt habt ihr bemerkt das wir array[5] nicht nutze, das liegt daran das wir nur 5 verschiedene
Varianten der Definitionen hier anwenden können. Bei Array werden von [0] an gezählt, also [5] wäre
die 6 Variante.

Jetzt noch ein Beispiel mit einem zweiwertigen array
Code:
1
2
3
4
5
6
7
8
new array[5][7];//Deklaration

/////Definition
array[0][0] = 1; 
array[0][1] = 2; 
array[0][2] = 3;
array[1][5] = 4;
array[4][6] = 5; 


Hier gibt es 5*7(also 35) varianten, die habe ich nicht alle aufgezählt aber ich hoffe aus der
darstellung(oben) konntet ihr schließen wie mehrwertige Arrays zu Definieren sind.

_______________________________________________________________________________
4. Anwendungs Bsp.

Ich werde hier aufgaben stellen mit denen ihr üben könnt.

Die lösungen findest du ganz unten.

4.1. Etwas leichtes zum Anfang

Deklariere eine Variable namens " auto " und weiße dieser den Wert " 100 " zu.

4.2. Das kann man Schaffen

Deklariere eine Variable namens " sekunden ". Nun Starte einen Timer der eine Funktion aktiviert
namens "zeit".(du weißt nicht wie dies geht? Keine Angst es gibt ein Tutorial dazu)Den Timer lässt
du alle 1000milisekunden laufen. Die Funktion soll jedes mal 1 zu sekunden hinzu rechnen.


4.3. Schwierig

Konstruiere eine Funktion die die variable "sekunden==388" in die variable "minuten" umrechnet.
Denke daran das 1minute: 60 sekunden hat. sollten die sekunden halt nicht auf gehn bleiben diese
halt über.
Stelle einen Gamemodetext her der schluss endlich anzeigt wie viele minuten(und übrige sekunden)
aus 388 sekunden enstehen.



_______________________________________________________________________________
5. Lösungen

5.1.Lösung zu "Etwas leichtes zum Anfang"

Code:
1
2
3
4
5
6
7
8
entweder so:

new auto;
auto=100;

oder so:

new auto=100;



5.2.Lösung zu "Das kann man Schaffen"

Code:
1
2
3
4
5
6
7
8
9
10
11
12
13
Ganz oben im Script:
new sekunden;
forward zeit();

Unter OnFilterScriptInit:
SetTimer("zeit",1000,1);

Ganz unter im Script:
public zeit()
{
     sekunden++;
     return 1;
}



5.3.Lösung zu "Schwierig"


Code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
new sekunden = 388;
new string[256];
//////////////////////////
public irgendwas()
{
     while(sekunden >= 60)
     {
      sekunden -= 60;
      minuten++;
     }
     format(string,sizeof(string),"388sekunden sind %d minuten und %d sekunden",minuten,sekunden);      
     GameTextForAll(string,4000,1);
     return 1;
}

________________________________________________________________

Diese Tutorial habe ich bereits in folgenden Foren veröffentlicht:
-gtamp.de
-sampfish.de
-superheroes.de.vu
Bei fehlern bitte kommentar abgeben!
Für Rechtschreibfehler übernehme ich keine haftung.


mfg [$]Yoda
Dieser Beitrag wurde insgesamt 1 mal editiert. Das letzte Mal 18.12.2008, 17:42 von Yoda.

Kein neuer Beitrag 10.12.2008, 22:36
Beitrag #2   

Rafioso
King of GTAvision.com
* * * * * * * * * * *
Registrierung: 17.04.2006, 10:39
User-Info: Unikat! Gefällt mir :-)
Homepage: http://www.NetVisionWork.net
Lieblings-GTA: GTA: Vice City
Script Editor: Sanny Builder 3
Wohnort: LS
PSN-ID: GV-Rafioso
Xbox Live Gamertag: SP: GVRafioso & MP: GVR...
GFWL-Tag: GVRafioso
Social Club: Rafioso
Beiträge: 11018

Hallo,

danke für das ausführliche Tutorial.

Es hat sich leider ein Fehler eingeschlichen.

ZitatPaintball hat folgendes geschrieben:
Code:
1
new array[5];//man kann 5 verschiedene Definitionen ausführen

Arrays beginnen (wenn nichts anderes angegeben ist) bei 0.
Folglich würde es so aussehen:
[0][1][2][3][4][5] = 6 Felder, nicht 5.

PS: Das bezieht sich auf alle Arrays in dem Tutorial.

Ansonsten ist es gut geschrieben :)

MfG
Rafioso

http://forum.gtavision.com/sonstiges/userbars/gtavision_userbar_admin_1.gif
Dieser Beitrag wurde insgesamt 1 mal editiert. Das letzte Mal 10.12.2008, 22:37 von Rafioso.

Kein neuer Beitrag 11.12.2008, 07:01
Beitrag #3   

Dörfler
Obergangster
* * * * * * O O O O O
Registrierung: 05.09.2007, 20:02
Homepage: http://www.nsg-board.de
Lieblings-GTA: GTA: Vice City
Script Editor: Pawno
Wohnort: kA
Beiträge: 429

ZitatRafioso hat folgendes geschrieben:
Hallo,

danke für das ausführliche Tutorial.

Es hat sich leider ein Fehler eingeschlichen.

ZitatPaintball hat folgendes geschrieben:
Code:
1
new array[5];//man kann 5 verschiedene Definitionen ausführen

Arrays beginnen (wenn nichts anderes angegeben ist) bei 0.
Folglich würde es so aussehen:
[0][1][2][3][4][5] = 6 Felder, nicht 5.

PS: Das bezieht sich auf alle Arrays in dem Tutorial.

Ansonsten ist es gut geschrieben :)

MfG
Rafioso

paintball hat schon recht:

array[5] ist [0] bis [4] bei [5] kommt schon "Error:out of bounds"

Kein neuer Beitrag 11.12.2008, 08:40
Beitrag #4   

Rafioso
King of GTAvision.com
* * * * * * * * * * *
Registrierung: 17.04.2006, 10:39
User-Info: Unikat! Gefällt mir :-)
Homepage: http://www.NetVisionWork.net
Lieblings-GTA: GTA: Vice City
Script Editor: Sanny Builder 3
Wohnort: LS
PSN-ID: GV-Rafioso
Xbox Live Gamertag: SP: GVRafioso & MP: GVR...
GFWL-Tag: GVRafioso
Social Club: Rafioso
Beiträge: 11018

Oh ja.. hast recht, war schon zu lang wach :D
Nimm alles zurück -> Super Tut :)

//Edit
LOL weiter unten erklärt ers ja nochmal... ich war wirklich zu lang wach :/

http://forum.gtavision.com/sonstiges/userbars/gtavision_userbar_admin_1.gif
Dieser Beitrag wurde insgesamt 1 mal editiert. Das letzte Mal 11.12.2008, 08:41 von Rafioso.

Kein neuer Beitrag 11.12.2008, 12:20
Beitrag #5   

Recycler
Vize-Boss
* * * * * * * * * O O
Registrierung: 29.12.2006, 11:54
User-Info: nicht mehr da
Beiträge: 2146

Ein paar Sachen, wenn man es ganz korrekt machen möchte.

ZitatPaintball hat folgendes geschrieben:
1.2. Int Variable


Ein "new" definiert keinen bestimmten Variablentypen. Bei keiner weiteren Kennzeichnung wird nur
automatisch ein Integer erstellt. Einen Integer erstellt man eigentlich so:

Code:
1
int i;


Das gilt auch für Strings, Bools usw.

ZitatPaintball hat folgendes geschrieben:
1.3. Player Variable
Code:
1
new playervariable[MAX_PLAYERS];


1.4. String Variable
Code:
1
new stringvariable[256];


Das ist dasselbe. Es gibt keinen Unterschied - beides sind Variablen mit Arrays. Man kann die
Zellen zusammen als Zeichenkette nutzen.

ZitatPaintball hat folgendes geschrieben:
//bitte mit den Stringgrößen sparen, es würd nie ein String von der größe 256 gebraucht!!!


Für die normalen Chatnachrichten gilt ein Maximum von 128 Zeichen, daher ist es sinnvoll keine
größeren Räume anzulegen. Bei SQL- und Datei-Abfragen sollte man, um Probleme zu vermeiden, lieber
256 verwenden.

ZitatZitat:
Vllt habt ihr bemerkt das wir array[5] nicht nutze, das liegt daran das wir nur 5 verschiedene
Varianten der Definitionen hier anwenden können. Bei Array werden von [0] an gezählt, also [5] wäre
die 6 Variante.


Nun, das Vorgehen ist schon richtig. Die letzte Zelle eines Arrays ist aber trotzdem vorhanden, man
darf sie nur nicht beschreiben. Diese enthält Bits, die das Ende der Variable einleiten.

Sonst, schönes Tutorial :-)

MfG
Recycler
Dieser Beitrag wurde insgesamt 2 mal editiert. Das letzte Mal 11.12.2008, 12:21 von Recycler.

Kein neuer Beitrag 11.12.2008, 18:10
Beitrag #6   

Yoda
Obergangster
* * * * * * O O O O O
Kein Bild vorhanden
Registrierung: 16.03.2008, 16:40
User-Info: Hp: www.chris-space.de.vu
Beiträge: 190

danke für die kommentare.

ich hab das tut einfach so als zeitvertreib geschrieben, und wenn ich damit anderen helfen kann ist
es ja dann auch ein sinnvoller zeitvertreib,
dies soll jtz nicht rechtfertigen das es einige fehler gibt aber ich wollts trotzdem schreiben.
Dieser Beitrag wurde insgesamt 1 mal editiert. Das letzte Mal 11.12.2008, 18:11 von Yoda.

Kein neuer Beitrag 11.12.2008, 18:13
Beitrag #7   

Recycler
Vize-Boss
* * * * * * * * * O O
Registrierung: 29.12.2006, 11:54
User-Info: nicht mehr da
Beiträge: 2146

Will dir ja nur helfen, dein Tutorial zu verbessern. Damit hilfst du dann den Lesern, mehr
Informationen zu begreifen.

MfG
Recycler

Kein neuer Beitrag 11.12.2008, 18:14
Beitrag #8   

Yoda
Obergangster
* * * * * * O O O O O
Kein Bild vorhanden
Registrierung: 16.03.2008, 16:40
User-Info: Hp: www.chris-space.de.vu
Beiträge: 190

kannst dud as rein eiditieren hab leider keine zeit mehr :-( geschichte hausaufgaben...
thx

Kein neuer Beitrag 11.12.2008, 18:15
Beitrag #9   

Recycler
Vize-Boss
* * * * * * * * * O O
Registrierung: 29.12.2006, 11:54
User-Info: nicht mehr da
Beiträge: 2146

ZitatPaintball hat folgendes geschrieben:
kannst dud as rein eiditieren hab leider keine zeit mehr :-( geschichte hausaufgaben...
thx


-> Mod | Admin muss das erledigen ;-)

MfG
Recycler

Kein neuer Beitrag 12.12.2008, 08:18
Beitrag #10   

Rafioso
King of GTAvision.com
* * * * * * * * * * *
Registrierung: 17.04.2006, 10:39
User-Info: Unikat! Gefällt mir :-)
Homepage: http://www.NetVisionWork.net
Lieblings-GTA: GTA: Vice City
Script Editor: Sanny Builder 3
Wohnort: LS
PSN-ID: GV-Rafioso
Xbox Live Gamertag: SP: GVRafioso & MP: GVR...
GFWL-Tag: GVRafioso
Social Club: Rafioso
Beiträge: 11018

ZitatRecycler hat folgendes geschrieben:
ZitatPaintball hat folgendes geschrieben:
kannst dud as rein eiditieren hab leider keine zeit mehr :-( geschichte hausaufgaben...
thx


-> Mod | Admin muss das erledigen ;-)

MfG
Recycler


Ich weiß nicht was ich rein editieren soll.
Aber Paintball kann seinen Beitrag doch auch z.B. heute selbst editieren :)

http://forum.gtavision.com/sonstiges/userbars/gtavision_userbar_admin_1.gif

Druckansicht

n/a n/a 1     (Anzeige: 1 – 10; Insgesamt: 10) n/a n/a
Toggle Ähnliche Themen zu „Variablen...ganz einfach“
  Antworten Aufrufe Themeneröffnung Letzter Beitrag
Keine neuen Beiträge, „heißes Thema“   GTA Online: Crew Member gesucht, die nicht einfach nur auf Krawal ... 0 52204 02.06.2015, 19:16
Von: herbo
02.06.2015, 19:16
Von: herbo
Zum letzten Beitrag
Keine neuen Beiträge, „heißes Thema“   GTA iv ultraeinfach 9 10090 12.07.2010, 22:06
Von: »cooler«
13.07.2010, 22:13
Von: »cooler«
Zum letzten Beitrag
Keine neuen Beiträge, „heißes Thema“   Youtube schließt einfach Konto 11 9356 25.06.2010, 07:00
Von: N0rax
26.06.2010, 23:09
Von: ForceB.
Zum letzten Beitrag
Keine neuen Beiträge, „heißes Thema“   GTA IV hängt sich einfach auf 2 3029 05.06.2009, 16:31
Von: FloRaX
05.06.2009, 20:45
Von: FloRaX
Zum letzten Beitrag
Keine neuen Beiträge, „heißes Thema“ Thema [VWW] Globale/Lokale Variablen mit/ohne Arrays 2 28363 12.04.2007, 20:28
Von: Recycler
03.12.2007, 12:25
Von: FloRaX
Zum letzten Beitrag
  • 0.037231 Sek., 20 DB-Zugriffe, 2.172 MiB
  • Powered by Boardsolution v1.45
GTAvision.com :: Forumregeln :: FAQ :: Impressum :: Kontakt :: RDRvision.com :: LANOIREvision.com :: MaxPayneVision.com
NetVisionWork.NET
.: © 2006-2014 by GTAvision.com :.

Rockstar GamesTake-Two Interactive Deutschland

Free Grand Theft Auto Downloads