飞飞世界论坛

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 15157|回复: 0
打印 上一主题 下一主题

通过命令重生

[复制链接]

197

主题

203

帖子

1086

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
1086
QQ
跳转到指定楼层
楼主
发表于 2016-1-10 03:42:30 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
至于V15和源文件发布重生不再使用通过HP它不再去我会告诉你如何可以通过与它聊天源befehel
' M6 n0 \3 Y# F( p5 A6 l3 A1 ^# s1 |0 n* g5 U7 P1 N+ t, ~
Mover.h
+ n% ~9 ?, n8 D$ ?) R  e6 K代码:8 `1 U- z% V, n
找到: void            InitLevel( int nJob, LONG nLevel, BOOL bGamma = TRUE );            // °′???| nLevel·? 1ù2?áü8 X  J2 v. g; M8 q5 q9 N3 y

+ M1 S4 D) i8 @9 B1 m0 X; \7 m. R- j下面插入: void            InitLevelPumbaaa( int nJob, LONG nLevel, BOOL bGamma = TRUE ) ;  7 Q  k( L0 T# r0 L) y

. s. L8 A) }; V& M5 {然后你去mover.cpp添加
( S4 ^5 I4 u, Q/ {. F5 ?! U' H1 d8 ~3 R
代码:% \) h2 j9 t2 S3 v$ T  u3 _2 R! g! Q
void CMover::InitLevelPumbaaa( int nJob, LONG nLevel, BOOL bGamma )
( ]- r3 A" W0 h$ E2 L1 b' D4 Z{
& Z9 V, I5 y$ h" j1 |8 Y#ifdef __WORLDSERVER
; e8 E8 O* |8 E) V    // ???μàú ?í·éà?·? ·1o§?÷ ??′?°÷àó9 W) w3 q: q: J1 @6 [) m
    MoverProp* pProp = GetProp();4 k# X& s, t  j4 C" _& ?+ n8 U" R
    if( pProp )
6 c/ v4 M$ ^2 a" i    {
0 U7 K, z' @8 j6 A4 \/ W7 l        if( nJob > 0 && nJob < MAX_LEGEND_HERO )
0 S3 C6 b- {# r) K0 q% y        {
! ^. K: x8 ]# D            AddChangeJob( nJob );
; Z$ B; V3 P% ]; c0 l) m        }else{
. l; s. [( w& B( [! }            return;
3 z0 e; K- S  Q+ i( Q5 L        }7 {6 I7 w0 h! n1 @" y7 ~, {
        int nPoint = 0;' B: e# k" _2 {4 c7 v6 K
        if( m_nJob == JOB_MERCENARY )
' H4 D5 L3 K3 r7 S6 J. C            nPoint += 40;
' f( I  [6 }& I  w# }2 j        else if( m_nJob == JOB_ACROBAT )' s: s+ O% `  H' s. }4 j( i
            nPoint += 50;
  q4 y( |0 g3 g' `7 u        else if( m_nJob == JOB_ASSIST )1 s# d1 O7 J; R1 }
            nPoint += 60;
4 F7 B' K* o; J! E        else if( m_nJob == JOB_MAGICIAN )
/ J* O% S1 A, A9 [8 N5 W; N5 B            nPoint += 90;$ {. f' ~1 U& f$ X
        else if( m_nJob ==  JOB_KNIGHT || m_nJob ==  JOB_BLADE ); |$ I5 ]9 N( f4 t+ _# v
            nPoint += 120;
6 c$ Y3 ?$ G! B        else if( m_nJob ==  JOB_JESTER || m_nJob ==  JOB_RANGER )
: a" ^  _1 ]. E- P            nPoint += 150;( H) H. p) j. D9 U! u% E
        else if( m_nJob ==  JOB_RINGMASTER )
6 m$ p2 V2 H) h7 Z2 S            nPoint += 160;
) v1 R1 p* p% q: A! Z9 ?1 c        else if( m_nJob ==  JOB_BILLPOSTER || m_nJob ==  JOB_PSYCHIKEEPER )' h  A) z; T9 ?: _$ z
            nPoint += 180;. E" g2 J6 W' e" v. A
        else if( m_nJob ==  JOB_ELEMENTOR )
# L5 U0 I' w0 O            nPoint += 390;: m* y) u) W, _! f. w
        else if( nJob ==  JOB_LORDTEMPLER_HERO || nJob ==  JOB_STORMBLADE_HERO )
1 s( _. d* t& K) \' I9 W& E            nPoint += 120;
7 w& t/ @" P1 p3 [! t/ m) E% X        else if( nJob ==  JOB_WINDLURKER_HERO || nJob ==  JOB_CRACKSHOOTER_HERO )% U3 G- [% N* t1 l) J. r
            nPoint += 150;
( w2 w$ n! s! n& \        else if( nJob ==  JOB_FLORIST_HERO )9 c& C# H& s/ o. y2 v) {$ y
            nPoint += 160;5 X& p+ a. i5 X$ b* S! [
        else if( nJob ==  JOB_FORCEMASTER_HERO || nJob ==  JOB_MENTALIST_HERO )
% c9 M0 f7 b) ?            nPoint += 180;
! R, u' J2 g# ~9 ^# j        else if( nJob ==  JOB_ELEMENTORLORD_HERO )
5 t2 O1 \4 e" W! m4 m            nPoint += 390;) r4 L! q7 x8 h
/ j# d8 x# t" H
        AddSkillPoint( nPoint );
5 A6 p, {! ^" c+ W        m_nLevel = nLevel;3 F7 D. \" I& X' x4 {
+ y8 _4 Y& ~, Y4 l  J" x
        SetJobLevel( nLevel, nJob );7 ?9 w7 y' R* a/ r( c
        m_nDeathLevel = nLevel;8 m! [" Q! ^7 ~
#if __VER >= 10 // __LEGEND    //    10?÷ àü?????o??    Neuz, World, Trans
, W! M" u0 n8 C9 j" {        if(IsMaster())4 k# _) x4 G, O4 [
        {* H# p4 f6 O0 ?( b& b
            int dwTmpSkLevel = 1;//60, 72, 84, 96, 108
* X& E& f, v# Z7 r+ H+ _            if( nLevel > 59 && nLevel < 72 )' y+ j" z. G8 o3 `
                dwTmpSkLevel = 1;
. q1 s) g9 \+ |( k; Q$ M6 E  R            else if( nLevel > 71 && nLevel < 84 )
' ]) Q; L3 F; P                dwTmpSkLevel = 2;2 v: v  _; |8 A2 g2 z: N! b3 n
            else if( nLevel > 83 && nLevel < 96 )
, g& T3 O( s. J) V- s& V' E) ?                dwTmpSkLevel = 3;
8 O0 s% t0 O- f* \* L/ E  I/ X            else if( nLevel > 95 && nLevel < 108 )' |6 ~7 N4 l4 Q! O- ^( R1 z3 I
                dwTmpSkLevel = 4;/ n4 m" m4 j( g6 y7 `
            else if( nLevel > 107 && nLevel < 120 ). W5 V1 Z8 v  C: |3 @& f
                dwTmpSkLevel = 5;) }( _# {7 X2 @0 I5 F
            for( int i = 0; i < MAX_SKILL_JOB; i++ ) 7 l$ ?7 d( w9 y" B0 S  z
            {               
! X! T4 Y  k  M# n                LPSKILL lpSkill = &(m_aJobSkill);
$ m$ J3 I/ r2 P! B7 g( X                if( lpSkill && lpSkill->dwSkill != NULL_ID )
* @& R& |" f9 q' g% ~( O  y                {
8 F# L9 ^/ G: B& D7 p5 B4 C) t                    ItemProp* pSkillProp    = prj.GetSkillProp( lpSkill->dwSkill );            
7 ]. P: u, }2 X" c- S                    if( pSkillProp == NULL )) ^  k, x, E0 |2 K$ r
                        continue;
/ d. k" P4 t: J8 W5 n                    if( pSkillProp->dwItemKind1 != JTYPE_MASTER)$ d9 F0 u; T+ _9 B$ B
                        continue;+ C$ J& L" T+ `; K% x4 ~5 @
                    lpSkill->dwLevel = dwTmpSkLevel;0 V4 Z5 K, W, ?9 ?6 x- t
                }
9 L5 V, H# `) t, c' `            }
4 \9 J$ w8 d  S$ k        }4 ]( N. [* M5 V1 U4 U$ [
        else if(IsHero())+ y0 k" _( N9 D7 |. X9 _7 y. g
        {# m3 r" h+ J2 b5 Z; U4 R! t2 Z4 y
            for( int i = 0; i < MAX_SKILL_JOB; i++ )
, h1 @2 D% l( I1 V+ G9 ^3 t            {                # O8 b* [& Z, z" _+ F6 p
                LPSKILL lpSkill = &(m_aJobSkill);
5 o) z1 W3 J5 d* y: |" ~                if( lpSkill && lpSkill->dwSkill != NULL_ID )
  ]- X( w3 x6 t2 _' r7 G  D                {5 w' `. S% B* R
                    ItemProp* pSkillProp    = prj.GetSkillProp( lpSkill->dwSkill );            5 E; v8 q: k9 V+ F% N: `1 \- O
                    if( pSkillProp == NULL )9 x+ t& N: s, T3 i; n
                        continue;% O. b; i$ [) \( S8 H: Q
                    if( pSkillProp->dwItemKind1 != JTYPE_MASTER)
; P1 z" a" P5 n( R: G" U                        continue;8 f. u  l' H: J" ~
                    lpSkill->dwLevel = 5;7 o+ M: }5 Z5 s9 i; W3 n" _0 K
                }5 l: q8 T; a3 t. Y5 m9 j1 T# _) a
            }. S# D* t3 i# T( s1 a$ x& x
        }" M8 l# O3 B! P* D" D
        else if(IsLegendHero())
  U- X+ ^  P( e. R4 j        {
+ J* q8 R" w* A, D* |. V0 Z4 {3 u            for( int i = 0; i < MAX_SKILL_JOB; i++ )
# h# r: ^$ L: A/ \/ s4 w            {               
# B4 }' p7 P4 x, \0 z+ I5 @                LPSKILL lpSkill = &(m_aJobSkill);
9 k3 P$ |4 R. a8 ]                if( lpSkill && lpSkill->dwSkill != NULL_ID )
1 ^$ F( _1 ~6 p& f                {
/ q* C+ Q6 o) `0 q. _9 V+ l                    ItemProp* pSkillProp    = prj.GetSkillProp( lpSkill->dwSkill );            
1 ^9 ?! t# N& E1 }, @, [                    if( pSkillProp == NULL )
1 H  }. S0 g; e$ h2 \' E                        continue;
9 M. k9 j6 Z5 r5 U9 }5 t- G& Y% K                    if( pSkillProp->dwItemKind1 != JTYPE_MASTER)
  Q% r4 n" P7 \2 G6 s. h                        continue;
, r' q  X# m. `, |                    lpSkill->dwLevel = 5;
0 i6 Q# v8 {! g2 X% u- Q' V                }
0 o! r& B! s: g! \: ~            }3 q% V4 [4 K* d9 d; @
        }  T, [/ X  [7 @! n; m) m
#endif    //     __LEGEND    //    10?÷ àü?????o??    Neuz, World, Trans
/ ], W: m1 a2 ]2 J: R1 q3 C% u+ o% J        if( bGamma ), J; ^2 s, R3 w0 r: _& k
        {
7 T" V1 j) M% c            m_nExp1 = 0;
$ s1 y! R. ]: ?, E9 O8 U+ v        }- T; X4 f" @) f) N7 a9 x* q3 z

4 {) A/ [/ H! A5 Z/ o& l        ( (CUser*)this )->AddSetChangeJob( nJob );! J" r" |4 x6 h& x# ^/ K5 @
        g_UserMng.AddNearSetChangeJob( this, nJob, &((CUser*)this)->m_aJobSkill[MAX_JOB_SKILL] );
! J" ~7 i' F4 A' _+ q" G% c6 H
' c- }  h; \# L1 g3 h! g" _) t' c
6 \' d# O' [; t- v#if __VER >= 11 // __SYS_PLAYER_DATA* k" H0 c5 N, A4 p' L
        g_dpDBClient.SendUpdatePlayerData( (CUser*)this );- z  D) X2 d' j
#else    // __SYS_PLAYER_DATA* R. @6 g( w! D! r; h7 x4 g5 [5 j
        g_DPCoreClient.SendPartyMemberJob( (CUser*)this );
; ^7 ~+ {) h& y; X+ X1 e        g_DPCoreClient.SendFriendChangeJob( (CUser*)this );6 r' O/ l6 p& s" g4 c  N
        if( m_idGuild != 0 )
, Z9 n5 x9 U  S# F+ c3 S5 y, V4 S& }            g_DPCoreClient.SendGuildChangeJobLevel( (CUser*)this );* Q" a2 f5 \+ s* c( ]5 u! I3 N
#endif    // __SYS_PLAYER_DATA
- I7 ~$ R# {4 j7 ]. M7 T        SetHitPoint( GetMaxHitPoint() );! O) z3 s; I& V! Z' W: a  b
        SetManaPoint( GetMaxManaPoint() );! h5 `! p! Q+ Y
        SetFatiguePoint( GetMaxFatiguePoint() );0 x# R# m) n1 M* x) @% H3 E- Z& b
        if( nJob >= 1 && nJob <= 4 ); p* i6 D2 H& U2 l5 l2 f4 |
        {
, F/ O5 h/ N9 `8 J5 s            m_nStr = m_nSta = m_nDex = m_nInt = 15;# H9 R# j- _$ _+ u) E, P
            m_nRemainGP = 28;
7 ~2 R3 |; ?* b$ w; F        }, g. ~: y: \! X: K. d7 L
        if( nJob >= MAX_PROFESSIONAL && nJob < MAX_MASTER )
' J$ _! F# @& J, _' |- y        {
8 _8 d: N- B( L8 @, R! F- |            m_nRemainGP = 118;
$ G$ K2 e5 a- m; k            //m_nRemainGP = ( m_nSta - 15 ) + ( m_nStr - 15 ) + ( m_nDex - 15 ) + ( m_nInt - 15 ) + m_nRemainGP;
& C4 S, [+ f4 ]( |& N+ Y' C1 m            m_nStr = m_nSta = m_nDex = m_nInt = 15;
' d8 W5 t- A- G( M* ^# G- E        }
0 I0 S5 M/ O2 {        if( nJob == JOB_MENTALIST_HERO || nJob == JOB_FORCEMASTER_HERO )  A8 R9 V0 ^2 U" }& b! B
        {
, k1 V( |* F! ^7 W+ \            CItemElem itemelem;3 W9 f" k" D& ?% O3 b
            itemelem.m_nItemNum = 1;+ P1 u$ N9 x! g( B  N7 O7 g3 h
            itemelem.m_bCharged = TRUE;! b" D/ _1 v% n; H* K
            BYTE nID;. a& I) n- ]1 q" X
+ x# l! U7 d" \" A  t
            if( nJob == JOB_MENTALIST_HERO )
7 J1 O" f0 D$ D. |' \3 }                itemelem.m_dwItemId = II_WEA_BOOK_BOKROMAIN;: m: {3 F8 w# x- |8 C6 M' ~! N
            if( nJob == JOB_FORCEMASTER_HERO )
5 {* x: o$ [* p8 {9 \/ T8 @                itemelem.m_dwItemId = II_ARM_ARM_SHI_ZEMBATO;
( j0 a* V  o1 A) K4 y3 g1 I
6 N+ `8 V6 o# M  s: c            ( ( CUser*)this)->CreateItem( &itemelem, &nID );
9 W3 }. }% O0 a( u        }6 ^; C7 w; \$ ?; d8 a; f' v- O# H
        g_UserMng.AddSetLevel( this, (WORD)m_nLevel );
7 C& a( l  |4 M. [1 K0 C& ~. t        ( (CUser*)this )->AddSetGrowthLearningPoint( m_nRemainGP );; }- o9 K$ ^9 W: N
        ( (CUser*)this )->AddSetExperience( GetExp1(), (WORD)m_nLevel, m_nSkillPoint, m_nSkillLevel );& F# a, Y, T# G8 t- u9 P5 H
        /*( (CUser*)this )->m_playTaskBar.InitTaskBarShorcutKind( SHORTCUT_SKILL );
4 W& F3 [& I, }6 R        ( (CUser*)this )->AddTaskBar();*/, X2 |, A1 u# y* b
        ( (CUser*)this )->AddSetState( m_nStr, m_nSta, m_nDex, m_nInt, m_nRemainGP );
) m- \, h/ `4 k% O% p#if __VER >= 13 // __HONORABLE_TITLE            // ′Tà?
: U% t. ~! t, s        ((CUser*)this)->CheckHonorStat();* n& b. F% e3 [6 u/ K- Q
        ((CUser*)this)->AddHonorListAck();
0 [! y5 c1 D1 N. t) G# c( ~+ h        g_UserMng.AddHonorTitleChange( this, m_nHonor);  T7 J9 r, {+ V) Z6 X
#endif    // __HONORABLE_TITLE            // ′Tà?
0 H6 |& p3 ~7 _8 i# h/ l* @    }
+ u0 j3 [" t" G( {#endif // __WORLDSERVER
1 @) |8 {9 e6 V6 C}  ( S( s* i+ r6 b$ E- E$ i  F

  J5 n& L! T) {. i' J) J5 R然后你进入functextcmd.cpp并添加以下4 K1 _* B# V4 A2 h  D
& a- Z9 O- W4 P" l- _
代码:
" [1 Q" G0 R6 V# p7 F7 _2 ?5 g/ OON_TEXTCMDFUNC( TextCmd_say,                   "say",               "say",            "??",             "??",      TCM_SERVER, AUTH_GENERAL      , "?ó?èàó [/?í·é ??àìμe 3???]" )
. y0 v) R0 s; q! K: P& `下面插入
$ N- I; N; l" q1 ^2 p# P! ~ON_TEXTCMDFUNC( TextCmd_rebirth,              "rebirth",          "rebirth",             "?ú·1?÷??",       "?ú·1",    TCM_SERVER, AUTH_GENERAL   , "?ú·1?÷??" )  3 r. k) V* ^* n$ S

; {! [7 s" U& k+ ~2 x然后你去. A+ H1 \) Y; O4 h* C) \' B+ I

5 P7 b. j$ j: {$ D2 N- ?代码:% m+ n  L) S, j) f* {& [
代码
' y' w9 g- I( ~. {! P( [BOOL TextCmd_ClearPropose( CScanner & s )1 a' f/ U( j9 S5 u4 O, V
{' e* B$ u3 X, S7 O. p
#ifdef __WORLDSERVER5 Z7 M' o2 _2 I( u+ Z: s
    CUser* pUser    = (CUser*)s.dwValue;( t4 Y" F+ t( @2 s# @! {
    g_dpDBClient.SendClearPropose();
' n0 y' h# F$ i0 ~# m#endif    // __WORLDSERVER
* j% f( M5 y4 \, W; w    return TRUE;* E! [1 h* k, g. n1 W+ L) k3 f
}
) s9 C) r; B. _9 W  }下面插入) i" [* G$ x! R! ?0 \- v% o/ q
BOOL TextCmd_rebirth( CScanner& scanner )- `- C5 e1 J& o% P) Q7 w! P2 v
{& ~4 Q. e- I" u7 @/ J: e4 Z
#ifdef __WORLDSERVER4 b# U1 N+ ]. m) ^2 @/ c
CUser *pUser;
& n1 d! b& i4 a" dpUser = (CUser*)scanner.dwValue;
7 h! \: A  d' w& e, B1 dif(pUser->m_nLevel >= 150 && pUser->IsLegendHero())5 j" x* a+ u  E6 A1 Z
pUser->InitLevelPumbaaa( pUser->m_nJob-16,60);
- N# |2 k8 u/ ]' W' |else) B( ?- a* Z4 o9 w/ ?
pUser->AddText("你还未达到重生条件!");
+ Q$ G: R: x, V' b8 ^#endif+ ?5 T& l" Y, N( t
return TRUE;" `2 o9 x- d) S" H9 f/ p) D
}  2 {7 U1 G* N9 w0 k, P, r: E

+ ]3 ^" G+ R& G2 \9 W3 s1 Y! |: s* H: C$ P2 K  d" Z" F

4 G* |6 G8 v$ X
2 i" x4 L5 j8 C5 H! H
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|飞飞世界技术论坛  

GMT+8, 2026-1-15 17:09 , Processed in 0.063859 second(s), 22 queries , Gzip On.

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表