[Source Tutorial] Flyff Ships verwenden

12/08/2012 12:52 aldimaster#1
Das ist keine große Sache, aber da ich das gerade in einem Thread gepostet habe, weiß ich dass sofort der nächste Geier kommen und es hier posten wird.

Generel funktioniert das System so:
Damit die Schiffe auftauchen definiert folgendes in eurer VersionCommon.h:
__IAOBJ0622

Ihr müsst nun auf dem Schiff mit dem ObjectIndex 3 stehen und dann die Tab-Taste drücken.
Mit der Taste gibt es aber ein paar Probleme, also müsst ihr bei Ship.cpp und WndWorldControlPlayer.cpp bei folgender Zuweisung den Key ändern:
PHP Code:
 BOOL bBoard g_bKeyTableVK_TAB ]; 
Wenn ihr jedes Schiff verwenden wollt entfernt ihr einfach die letzte Bedingung der folgenden Abfrage:

PHP Code:
 if( g_pPlayer->GetIAObjLink() && g_pPlayer->GetIAObjLink()->GetType() == OT_SHIP && g_pPlayer->GetIAObjLink()->GetIndex() == 
Dieser Ausschnitt befindet sich in der WndWorldControlPlayer.cpp


Hier ist der Abschnitt wo ihr weitere Schiffe hinzufügt:
PHP Code:
#ifdef __IAOBJ0622    
    
if( GetID() == WI_WORLD_MADRIGAL )    // ¸¶µå¸®°¥ ÀÐÀ»¶§ Å×½ºÆ®ºñ°øÁ¤¶ç¿ì±â
    
{
        
CObj *pObj    CreateObjD3DDEVICEOT_SHIP);
        
D3DXVECTOR3 vPos D3DXVECTOR36997.2f124.2f3243.7f );
        
pObj->SetPosvPos );
        
pObj->SetAngle180.0f );
        
ADDOBJpObjTRUEnLayer );

        
CObj *pObj2    CreateObjD3DDEVICEOT_SHIP);
        
D3DXVECTOR3 vPos2 D3DXVECTOR37508.74f90.2f3168.28f );
        
pObj2->SetPosvPos2 );
        
pObj2->SetAngle180.0f );
        
ADDOBJpObj2TRUEnLayer );

        
CObj *pObj3    CreateObjD3DDEVICEOT_SHIP);
        
D3DXVECTOR3 vPos3 D3DXVECTOR37528.74f90.2f3178.28f );
        
pObj3->SetPosvPos3 );
        
pObj3->SetAngle180.0f );
        
ADDOBJpObj3TRUEnLayer );

        
CObj *pObj4    CreateObjD3DDEVICEOT_SHIP);
        
D3DXVECTOR3 vPos4 D3DXVECTOR37558.74f90.2f3188.28f );
        
pObj4->SetPosvPos4 );
        
pObj4->SetAngle180.0f );
        
ADDOBJpObj4TRUEnLayer );

        
CObj *pObj5    CreateObjD3DDEVICEOT_SHIP);
        
D3DXVECTOR3 vPos5 D3DXVECTOR37198.74f140.2f3198.28f );
        
pObj5->SetPosvPos5 );
        
pObj5->SetAngle180.0f );
        
ADDOBJpObj5TRUEnLayer );

    }
#endif // IAOBJ0622 
Der letzte Parameter bei CreateObj( D3DDEVICE, OT_SHIP, 3 ); gibt den ObjectIndex an.


Screenshot:
[Only registered and activated users can see links. Click Here To Register...]


Greetz
12/08/2012 12:55 Jopsi332#2
nice danke
12/08/2012 13:26 Velmore#3
wäre gut wenn du vll noch einen screen von dem ganzes einsetzt da glaube nicht alle das kennen.
12/08/2012 14:15 ™Dryad#4
WoW sehr coole sache ..
Danke :)
12/08/2012 14:18 Velmore#5
hab zu dem ganzes noch ne frage.
konnte man das schiff so fliegen wie man will oder wohin fliegen die schiffe?
12/08/2012 15:09 Caseツ#6
Is ja mal en geiles system danke schön
12/08/2012 15:32 dennisdra#7
Mit den Schiffen kann man dann selber fliegen, sobald man dann Tab drückt kommt man in den Flugmodus und kann das ganze mit den Tasten steuern.
12/08/2012 15:54 TrøublêMakêr#8
wie schnell sind die?
12/08/2012 17:29 dennisdra#9
Quote:
Originally Posted by Bloodyrain' View Post
wie schnell sind die?
Nicht wirklich schnell, also 300km/h wie bei Boards bekommste nicht :D
Das ganze lässt sich jedoch verändern, ich meine irgendwo in der ActionMoverState(2)? war da ein Wert.

Die aktuelle Geschwindigkeit kannste mit dem Laufspeed eines ungebufften/ equipten Chars vergleichen.
12/08/2012 17:46 Velmore#10
ja einfach erhöhen. find ich sogar besser als teleporter hat iwie was
12/08/2012 18:06 Mognakor#11
Bewegen sich andere Spieler mit den Schiffen mit wenn sie drauf stehen?
Wie sieht es aus wenn jemand das Teil steuert und ein anderer TAB drückt?
12/08/2012 20:40 Lumi#12
Besser wäre es, wenn ein Fenster beim betritt des Schiffes erscheint. Dort werden alle Maps aufgelistet, die bestimmte Koordinaten haben und dort hin fährt er dann. Es sollte wie eine Reise sein.
12/08/2012 21:36 TrøublêMakêr#13
Also wie WoW?
12/08/2012 22:34 Мarvіn#14
Quote:
Originally Posted by Lumi' View Post
Besser wäre es, wenn ein Fenster beim betritt des Schiffes erscheint. Dort werden alle Maps aufgelistet, die bestimmte Koordinaten haben und dort hin fährt er dann. Es sollte wie eine Reise sein.
Quote:
Originally Posted by Bloodyrain' View Post
Also wie WoW?
In WoW ist auch so, gut erkannt Watson.

Mentus hatte es letztens auch im Source gefunden, wussten beide aber nichts von der Steuerung über TAB.
Frage ist jetzt, inwiefern das System irgendwelche Bugs hat :b
Frage mich auch, warum es überhaupt entfernt worden ist.
12/08/2012 23:32 dennisdra#15
Quote:
Originally Posted by Mаrvin View Post
In WoW ist auch so, gut erkannt Watson.

Mentus hatte es letztens auch im Source gefunden, wussten beide aber nichts von der Steuerung über TAB.
Frage ist jetzt, inwiefern das System irgendwelche Bugs hat :b
Frage mich auch, warum es überhaupt entfernt worden ist.
Es wird auch standardmäßig nicht über TAB "gesteuert" bzw. gestartet :facepalm:

Code:
bBoard = g_bKeyTable['B'];
Es hat keine Bugs bis auf die Tastenbelegung welche im Konflikt mit dem Inventory-Bag steht.
Entfernt wurde es weil es wahrscheinlich genervt hatte wenn so ein riesen Schiff plötzlich in Flaris aufm Boden ist und man nichts mehr sieht...