Register for your free account! | Forgot your password?

You last visited: Today at 12:35

  • Please register to post and access all features, it's quick, easy and FREE!


[Source Tut] Eigene Scroll erstellen

Reply
 
Old   #1
 
elite*gold: 400
Join Date: May 2012
Posts: 156
Received Thanks: 38
[Source Tut] Eigene Scroll erstellen

Custom Scrolls erstellen

Hallo liebe Com,

Ich hab solch ein Tutorial nirgends gefunden und daher dacht ich mir mach ich es einfach mal

Es geht darum wie man in der Source seine eigene Scroll mit eigenen Wirkungen erstellt.
Ich werde versuchen alles so zu erklären dass man es mit 0 Source Kenntnis versteht.

Fangen wir mal an mit dem Source Part.

In der MoverSkill.cpp gibt es eine Funktion die sich so schimpft:
Code:
int  CMover::DoUseItemSystem( ItemProp *pItemProp, CItemElem* pItemElem, int nPart )
Sie brauchen wir wenn wir eine Art Item benutzen. Alle hier verzeichneten Items haben in der Regel in ihrer dwID auch ein "_SYS_" (DoUseItemSystem sagt alles)

Ich werde das Ganze mit der Scroll aus Lumis Tutorial zum Premium System über SM Mode erläutern. Link zum Tutorial

Das ist seine Scroll aus dem Tut:
Code:
#ifdef __PREMIUM
case II_ITEM_PREMIUM:
{
if( !( IsSMMode( SM_PREMIUM ) ) )
SetSMMode( SM_PREMIUM, pItemProp->dwCircleTime );
else
nResult = 2;
}
break;
#endif
Also. Eine neue Scroll könnt ihr nun in der Switch-Abfrage erstellen. Eine Switch-Abfrage ist nichts anderes als, dass das Programm guckt welchen Wert eine Variable hat. Unsere Abfrage fragt nach pItemProp->dwID :
Code:
switch( pItemProp->dwID ) { 
...
}
Also nach der dwID des benutzen Items. (pItemProp wurde der Funktion übergeben, wie man in der Deklaration sieht)

Um nun die neue Scroll auch zu erstellen gehen wir direkt in die Switch-Abfrage und erstellen, nach zum Beispiel der ersten Scroll, also nach dem ersten "break;" eine neue "Möglichkeit" in Form von:
Code:
case II_ITEM_PREMIUM {
//Inhalt der "Möglichkeit" bzw. in dem Fall dass das benutzte Item die dwID "II_ITEM_PREMIUM" hat
}
break;
Erklärung:
Nun können wir uns dem Inhalt witmen.. Ich werde dieses Tutorial später um die BUFF_ITEM 's erweitern, aber westmal nun zu Lumis Scroll:

Code:
if( !( IsSMMode( SM_PREMIUM ) ) )
SetSMMode( SM_PREMIUM, pItemProp->dwCircleTime );
else
nResult = 2;
Diese Funktion fragt einfach nur ab ob der SM Mode SM_PREMIUM aktiv ist.
Wenn er es nicht ist wenn die Scroll benutzt wird, so wird dem Player der SM Mode SM_PREMIUM zugewiesen, für die Zeit, die in der pItemProp->dwCircle Time (Ressource Part) zugewisen ist.

Nun müssen wir nur noch in dem Ressource Ordner der Source in der defineItem.h das item "II_ITEM_PREMIUM" hinzufügen. Also so:
Code:
#define II_ITEM_PREMIUM                2125
Also kommen wir nun zum Ressource Part.

In der defineItem.h eures Ressource-Ordners in euren Files wird das selbe gemacht wie in der Source.

In der propItem.txt (alternativ Spec_Item) kommt Folgenes:
Code:
6    II_ITEM_PREMIUM     "Item [Premium]"    1    1    IK1_CHARGED    IK2_SYSTEM    IK3_SCROLL    =    =    1    =    5000000    =    =    =    =    =    =    =    0    =    =    1    =    =    1    1    =    =    =    =    _NONE    0    =    =    =    =    =    =    =    =    =    =    =    =    =    =    =    =    =    =    =    =    =    =    =    =    =    =    =    =    =    =    =    =    =    =    =    =    =    =    =    =    =    =    =    =    =    =    =    XI_SYS_REMOVE01    =    =    =    604800    =    =    WUI_NOW    =    =    =    =    =    =    =    =    =    0    0    0    0    0    =    =    =    =    =    =    =    =    =    =    =    =    =    =    =    =    =    """itm_GenGemAmpere.dds"""    0    """"""    "I will give you the premium status"
Erklärung:
Die Rubrik "Buffs" werde ich noch adden.


Don't Copy and Paste.
Credits:
95% Trotex
5% Lumi für die Scroll-Vorlage in seinem Tut



.Trotex. is offline  
Thanks
5 Users
Old 02/20/2014, 01:16   #2
 
elite*gold: 0
Join Date: Jan 2012
Posts: 57
Received Thanks: 40
Nice Tut. Sehr ausführlich

Was genau meinst du jetzt mit der "Rubrik Buffs" ?


JiiGaa is offline  
Old 02/20/2014, 01:24   #3
 
elite*gold: 400
Join Date: May 2012
Posts: 156
Received Thanks: 38
Quote:
Originally Posted by JiiGaa View Post
Nice Tut. Sehr ausführlich

Was genau meinst du jetzt mit der "Rubrik Buffs" ?

Es gibt bei manchen Scrolls wie den Amplis die Funktion einen "Buff" zu adden der verschiedene Funktionen beherbergt, dazu werd ich die nächsten Tage mal ein wenig was drüber schreiben
(Ich bin einfach nur zu müde für heute und muss zur Frühschicht morgen )
.Trotex. is offline  
Old 02/22/2014, 18:35   #4

 
elite*gold: 18
The Black Market: 103/0/0
Join Date: Sep 2009
Posts: 20,150
Received Thanks: 14,347
Das break; kommt vor dem } sonst würde es wenig Sinn ergeben.
Ansonsten gut erklärt :)


Sedrika is offline  
Old 02/22/2014, 18:37   #5
 
elite*gold: 0
Join Date: Jun 2013
Posts: 166
Received Thanks: 258
Quote:
Originally Posted by Sedrika View Post
Das break; kommt vor dem } sonst würde es wenig Sinn ergeben.
Ansonsten gut erklärt :)
Muss nicht sein, ist eine Frage des Stils.
WurstbrotQT is offline  
Old 02/22/2014, 19:03   #6


 
elite*gold: 0
The Black Market: 485/0/0
Join Date: Jan 2012
Posts: 12,558
Received Thanks: 2,974
Quote:
Originally Posted by Sedrika View Post
Das break; kommt vor dem } sonst würde es wenig Sinn ergeben.
Ansonsten gut erklärt :)
Würde theoretisch beides gehen, da beide den gleichen Sinn haben.

Btw. Gut erklärt. Ich bin mal gespannt wie genau du das mit den Buffs erklärst.
Lumi is offline  
Old 02/22/2014, 19:22   #7

 
elite*gold: 18
The Black Market: 103/0/0
Join Date: Sep 2009
Posts: 20,150
Received Thanks: 14,347
Quote:
Originally Posted by WurstbrotQT View Post
Muss nicht sein, ist eine Frage des Stils.
Hab es vorher noch nie ausprobiert o.ä., da ich es nicht anders gelernt habe. Aber wenn es doch gehen sollte, dann nehme ich meine Aussage zurück.
Sedrika is offline  
Old 02/22/2014, 19:37   #8
 
elite*gold: 0
Join Date: Dec 2013
Posts: 10
Received Thanks: 2
Also ich wäre auch dafür das Sedrika das Tutorial mal in seinen Index aufnimmt.
Du hast alles ausführlich erklärt nicht so wie andere die einfach schreiben
PHP Code:
Macht das darunter oder macht das dazwischen usw
Was ich ausserdem gut finde das du einzelne Wörter wie z.B. break o.Ä. erläutert hast.

Danke für dein Tutorial

Lg Chiamasu


Chiamasu is offline  
Thanks
1 User
Reply



« [Open Source] Vexare GUI Editor | [Release] Riesige Instanz »

Similar Threads
[Source Release]Scroll of Unbinding
Hallo Da in letzter zeit nur mist wegen Unbinding Scroll gepostet wurde. Poste ich jetzt hier eine 100%tig funktionierende Scroll. Das die...
60 Replies - Flyff PServer Guides & Releases
[Source TUT]Scroll of Unbinding
Da in einem anderen Thread dannach gefragt wurde hier: WndField.Cpp CWndUnbind::CWndUnbind void ) { m_pItemElem = NULL; m_pTexture =...
6 Replies - Flyff PServer - Discussions / Questions
[Source Request] Scroll of Unbinding
Moin Community, Ich hab da mal 'ne Frage: Hat wer von euch die Unbinding Scroll und rückt sie (auch ggn. Bezahlung) raus? Nein, die von Etioom...
10 Replies - Flyff PServer - Discussions / Questions
Counterstrike Source eigene Map erstellen :)
Wie kann ich eine eigene Map erstellen, welche Programme brauch ich? kann mir wer die infos geben?
1 Replies - Counter-Strike
Tele Scroll's Erstellen
Hallo Leute weiss jemand wie Ich mir in meinem kal neue tele scroll's erstellen kann ich vermute mal das sie gehext werden müssen aber Wie ? sie...
2 Replies - Kal Online



All times are GMT +2. The time now is 12:35.


Powered by vBulletin®
Copyright ©2000 - 2018, Jelsoft Enterprises Ltd.
SEO by vBSEO ©2011, Crawlability, Inc.

Support | Contact Us | FAQ | Advertising | Privacy Policy | Abuse
Copyright ©2018 elitepvpers All Rights Reserved.