|
You last visited: Today at 12:47
Advertisement
[Mini Tutorial] How to - Fluglevel ändern + paar kleinere Extras
Discussion on [Mini Tutorial] How to - Fluglevel ändern + paar kleinere Extras within the Flyff Private Server forum part of the Flyff category.
04/14/2011, 14:09
|
#1
|
elite*gold: 122
Join Date: Mar 2008
Posts: 796
Received Thanks: 475
|
[Mini Tutorial] How to - Fluglevel ändern + paar kleinere Extras
So ihr Lieben,
In diesem MiniTutorial zeige ich euch wie ihr einstellen könnt ab welchen Level man fliegen kann.
Das Tutorial ist für Änfanger geschrieben und dient zur Einarbeitung in die Source also unterlasst bitte Kommentare wie "das weiß doch jeder".
Öffnet eure MoverParam.cpp.
In der Zeile 1496 (bei euch sollte es weiter oben sein da ich schon was bearbeitet hab) findet ihr die Abfrage:
PHP Code:
if( m_nLevel == 20 ) SetFlightLv( 1 );
Die Abfrage prüft ob euer Level dem Level 20 entspricht und stuft euer Flug Level auf 1.
Ab dem Fluglevel 1 kann man fliegen.
Wenn ihr den Parameter 20 in eine andere Zahl ändert, dann kann man erst fliegen wenn das Level der Zahl entspricht.
Ihr könntet nun noch andere Abfrage machen, schaut euch einfach mal in der Source an welche Funktionen es so gibt.
Z.B in der Mover.h.
Mal angenommen wir wollen dass unser Character ab dem Level 60 eine coole neue Frisur bekommt.
Dann machen wir unter die Abfrage von vorhin eine neue Abfrage die prüft ob der Character Level 60 ist.
Da drunter schreiben wir dann die Aktion um die Haare des Charakters zu ändern.
Das sieht dann so aus:
PHP Code:
if( m_nLevel == 60 ) SetHair(1)
SetHair() ist die Funktion; 1 ist der Parameter, die Id des Hairs.
Na das war doch garnicht so schwer. ;D
Jetzt gehen wir mal bei der Mover.cpp in die Zeile 2791.
Dort sehen wir folgendes:
PHP Code:
int nLimitLv = pItemProp->dwFlightLimit; if( nLimitLv == NULL_ID ) nLimitLv = 1;
if( GetFlightLv() < nLimitLv ) { PrintString( this, TID_GAME_USEAIRCRAFT ); return FALSE; }
Wir sehen dass die Variable nLimitLv mit dem Typ int declariert wird.
Er bekommt den Wert von dwFlightLimit in der PropItem.
Danach folgt eine Abfrage die prüft ob der Wert in der PropItem leer steht.
Wenn dies der Fall wird bekommt nLimitLv den Wert 1.
In der nächstes Abfrage wird geprüft ob das Fluglevel des Spieler kleiner als der Wert von nLimitLv ist.
Sollte dies der Fall sein dann wird ein Text ausgegeben und es wird mit einem FALSE returned.
Da die Funktion IsUseItemReadyTime heißt können wir davon ausgehen, dass geprüft wird ob mein ein Item anziehen kann.
Wir sehen, dass wir verschiedene Möglichkeiten haben einzustellen, wann ein User sein Board anziehen kann.
Wir könnten zum Beispiel einstellen dass alle Player mit dem Fluglevel x das Board anziehen können.
Oder auch dass alle User deren Fluglevel über oder unter einem Wert ein Board anziehen können.
Aber dies solltet ihr nach diesem Tutorial selbst schaffen.
Ich hoffe es war alles verständlich und freue mich wenn ihr etwas gelernt haben solltet.
Edit:
In der Zeile 1805 der Mover.cpp findet ihr die Abfrage:
PHP Code:
if( m_nLevel >= 20 ) SetFlightLv( 1 ); else SetFlightLv( 0 );
Diese wird abgerufen wenn ihr euren Job ändert.
Also die Parameter anpassen dann sollte es gehen.
In der MoverParam.cpp in der Zeile 1836 bei:
PHP Code:
if( m_nLevel < 20 && nLevel >= 20 )
Den Parameter von nLevel ändern.
Mein Compiler hatte mich wohl ein bisschen ausgetrickst. ^^
Greetz
|
|
|
04/14/2011, 14:24
|
#2
|
elite*gold: 2
Join Date: Jul 2009
Posts: 1,447
Received Thanks: 922
|
Net Schlecht, komm mal ICQ, lass mal reden über das alg. Flug System
vllt schaffen wir es das Komplette wieder ein zu führen (Mit Tanken etc)
|
|
|
04/15/2011, 14:47
|
#3
|
elite*gold: 0
Join Date: Aug 2010
Posts: 634
Received Thanks: 116
|
Gut geschrieben !
Auch sher gut erklärt , gut verständlich. TOP !!
In Zeile 25 is jedoch ist jedoch ein minimaler Schreibfehler.
Bei das fehtl ein ''s'' ;D
Wollte es nur sagen (;
|
|
|
04/15/2011, 15:07
|
#4
|
elite*gold: 122
Join Date: Mar 2008
Posts: 796
Received Thanks: 475
|
Ich find ihn nicht. :O
Greetz
|
|
|
04/15/2011, 15:11
|
#5
|
elite*gold: 0
Join Date: Aug 2008
Posts: 18
Received Thanks: 9
|
Sehr netter Guide und gut erklärt, sodass auch Einsteiger alles verstehen sollten.
Quote:
Originally Posted by aldimaster
Das sieht dann so aus:
[php]
PHP Code:
if( m_nLevel == 60 ) SetHair(1)
SetHair() ist die Funktion; 1 ist der Parameter, die Id des Hairs.
Na das war doch garnicht so schwer. ;D
|
Da ist der Fehler
|
|
|
04/15/2011, 15:32
|
#6
|
elite*gold: 1
Join Date: Nov 2010
Posts: 733
Received Thanks: 2,877
|
nice tut
|
|
|
04/17/2011, 19:08
|
#7
|
elite*gold: 6
Join Date: Jun 2008
Posts: 309
Received Thanks: 34
|
Quote:
Originally Posted by aldimaster
So ihr Lieben,
In diesem MiniTutorial zeige ich euch wie ihr einstellen könnt ab welchen Level man fliegen kann.
Das Tutorial ist für Änfanger geschrieben und dient zur Einarbeitung in die Source also unterlasst bitte Kommentare wie "das weiß doch jeder".
Öffnet eure MoverParam.cpp.
In der Zeile 1496 (bei euch sollte es weiter oben sein da ich schon was bearbeitet hab) findet ihr die Abfrage:
PHP Code:
if( m_nLevel == 20 ) SetFlightLv( 1 );
Die Abfrage prüft ob euer Level dem Level 20 entspricht und stuft euer Flug Level auf 1.
Ab dem Fluglevel 1 kann man fliegen.
Wenn ihr den Parameter 20 in eine andere Zahl ändert, dann kann man erst fliegen wenn das Level der Zahl entspricht.
Ihr könntet nun noch andere Abfrage machen, schaut euch einfach mal in der Source an welche Funktionen es so gibt.
Z.B in der Mover.h.
Mal angenommen wir wollen dass unser Character ab dem Level 60 eine coole neue Frisur bekommt.
Dann machen wir unter die Abfrage von vorhin eine neue Abfrage die prüft ob der Character Level 60 ist.
Da drunter schreiben wir dann die Aktion um die Haare des Charakters zu ändern.
Das sieht dann so aus:
[php]
PHP Code:
if( m_nLevel == 60 ) SetHair(1)
SetHair() ist die Funktion; 1 ist der Parameter, die Id des Hairs.
Na das war doch garnicht so schwer. ;D
Jetzt gehen wir mal bei der Mover.cpp in die Zeile 2791.
Dort sehen wir folgendes:
PHP Code:
int nLimitLv = pItemProp->dwFlightLimit; if( nLimitLv == NULL_ID ) nLimitLv = 1;
if( GetFlightLv() < nLimitLv ) { PrintString( this, TID_GAME_USEAIRCRAFT ); return FALSE; }
Wir sehen dass die Variable nLimitLv mit dem Typ int declariert wird.
Er bekommt den Wert von dwFlightLimit in der PropItem.
Danach folgt eine Abfrage die prüft ob der Wert in der PropItem leer steht.
Wenn dies der Fall wird bekommt nLimitLv den Wert 1.
In der nächstes Abfrage wird geprüft ob das Fluglevel des Spieler kleiner als der Wert von nLimitLv ist.
Sollte dies der Fall sein dann wird ein Text ausgegeben und es wird mit einem FALSE returned.
Da die Funktion IsUseItemReadyTime heißt können wir davon ausgehen, dass geprüft wird ob mein ein Item anziehen kann.
Wir sehen, dass wir verschiedene Möglichkeiten haben einzustellen, wann ein User sein Board anziehen kann.
Wir könnten zum Beispiel einstellen dass alle Player mit dem Fluglevel x das Board anziehen können.
Oder auch dass alle User deren Fluglevel über oder unter einem Wert ein Board anziehen können.
Aber dies solltet ihr nach diesem Tutorial selbst schaffen.
Ich hoffe es war alles verständlich und freue mich wenn ihr etwas gelernt haben solltet.
Greetz
|
funktioniert bei mir nicht habe
Code:
if( m_nLevel == 20 )
SetFlightLv( 1 );
in
Code:
if( m_nLevel == 60 && IsMaster() )//Fluglevel
SetFlightLv( 1 );
geändert und man kann trotzdem mit lvl 20 fliegen
|
|
|
04/17/2011, 19:25
|
#8
|
elite*gold: 0
Join Date: Feb 2010
Posts: 294
Received Thanks: 85
|
Quote:
Originally Posted by I<3-electro&house
funktioniert bei mir nicht habe
Code:
if( m_nLevel == 20 )
SetFlightLv( 1 );
in
Code:
if( m_nLevel == 60 && IsMaster() )//Fluglevel
SetFlightLv( 1 );
geändert und man kann trotzdem mit lvl 20 fliegen
|
Was willste genau mit und Master bezwecken ? Fluglevel 1 ist Flugleve 1 einmal hochgesetzt ist es relativ ob Master oder sonstwas. Von daher unötig dein Code.
|
|
|
04/17/2011, 19:27
|
#9
|
elite*gold: 18
Join Date: Sep 2009
Posts: 20,177
Received Thanks: 14,471
|
Er will erreichen, dass wenn man Level 60 ist und auf master, dass man dann erst fliegen kann, jedoch wäre dass so besser:
Quote:
if( IsMaster() )
SetFlightLv( 1 );
|
|
|
|
04/17/2011, 20:22
|
#10
|
elite*gold: 6
Join Date: Jun 2008
Posts: 309
Received Thanks: 34
|
Quote:
Originally Posted by Sedrika
Er will erreichen, dass wenn man Level 60 ist und auf master, dass man dann erst fliegen kann, jedoch wäre dass so besser:
|
das andere sollte allerdings doch normal auch funktionieren oder nicht?
mit nur dem IsMaster() geht es jedoch auch nicht
|
|
|
04/17/2011, 23:37
|
#11
|
elite*gold: 6
Join Date: Jun 2008
Posts: 309
Received Thanks: 34
|
hat es den mal jemand probiert weil bei mir geht es auch nicht wenn ich das lvl einfach nur in z.B. 60 abänder ? ich hab jezz auch noch ne andere abfrage in der mover.cpp gefunden diese hab ich auch geändert geht aber trotzdem nicht funktioniert es bei euch wenn ihr das ändert?
|
|
|
04/18/2011, 14:05
|
#12
|
elite*gold: 122
Join Date: Mar 2008
Posts: 796
Received Thanks: 475
|
Edit angefügt, sollte nun gehen.
Greetz
|
|
|
04/18/2011, 16:22
|
#13
|
elite*gold: 0
Join Date: Apr 2009
Posts: 6
Received Thanks: 0
|
Wo ist diese MoverParam.cpp?? Ich finde sie auf Teufel komm raus nicht!
|
|
|
04/18/2011, 16:47
|
#14
|
elite*gold: 122
Join Date: Mar 2008
Posts: 796
Received Thanks: 475
|
Im _Common Ordner.
Greetz
|
|
|
04/19/2011, 01:53
|
#15
|
elite*gold: 6
Join Date: Jun 2008
Posts: 309
Received Thanks: 34
|
Quote:
Originally Posted by aldimaster
Im _Common Ordner.
Greetz
|
hat einer ne ahnung warum das wenn ich das mit dem IsMaster() || IsHero() mache man erst ab lvl 61 master / hero fliegen kann also mit 60 master oder 60 hero gehts nicht
|
|
|
|
|
Similar Threads
|
WoW Mini Angriffs Bot AutoIt [Tutorial]
08/12/2010 - WoW Exploits, Hacks, Tools & Macros - 16 Replies
Seit ihr manchmal zu faul die lästigen Kill Aufträge mit einer Fingerbelästigung zu erledigen ? Dann seit ihr hier richtig, denn ich erkläre ich euch wie ihr mit AutoIt einen Kampfbot erstellt.
Installation
Als erstes downloaden wir AutoIt v3 (KLiCK MiCH) . Dann installieren wir es. Sobald es fertig ist, müsste beim Pfad (bsp.) C:/Programme(x86)/Autoit3 ein Ordner namens SciTE sein ( wird zum Scripts erstellen benötigt ) . Wenn alles soweit gemacht ist, fangen wir an.
Das Script
Wir...
|
[Mini Tutorial]Windows 7 and SRO Private Servers
06/11/2010 - SRO PServer Guides & Releases - 24 Replies
YouTube - Mini Tutorial Windows 7 and SRO Private Servers
http://www.youtube.com/watch?v=TsLhMy6lBRE
HD Avalbile ! :P
Mini tutorial shows how turn on SRO+Bot in Windows 7 :D
Have fun ^^
|
Alternative Mini-Root für paar Spieler - 1Blu ???
03/27/2010 - Metin2 Private Server - 30 Replies
Wäre das hier eine Möglichkeit nen Mt2 Server fürn paar Spieler rootmässig onzubringen?
1blu Webhosting - Internet-Lösungen für Privat und Business - vServer
da kriegt man nen 1gb ram server für 1€
|
[Mini-Release]S4 Intro ändern
12/31/2009 - S4 League - 4 Replies
Moin elitepvpers,
ich wollte euch mal zeigen wie ihr das "S4 Starten" verändern könnt.
Ihr braucht:
S4 Leauge
Mp3 zu ogg converter -> download 4Musics MP3 to OGG Converter (nur zum musik verändern)
S4Resource ! Besorg euch diese , ihr werdet sie nicht von mir bekommen , ich will keine pms erhalten!
Ok startet den S4Resource und geht dann in resources und dort in intro Ordner findet ihr die "Intro Datein"
Diese könnt ihr nun exportieren ändern und wieder importieren ;)
|
[VIDEO TUTORIAL]how to setup SQL properly and extras
10/06/2009 - Dekaron Private Server - 17 Replies
Before you ppl can use sergcool's pserver making tutorial you have to set your SQL up properly....and a lot of you have issues with that...so i took the liberty in helping you ppl out at some of that stuff with video tuts :D
SQL proper installation tutorial
YouTube - SQL proper installation tutorial
manual account creation tutorial
|
All times are GMT +2. The time now is 12:47.
|
|