飞飞世界论坛

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

通过命令重生

[复制链接]

197

主题

203

帖子

1090

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
1090
QQ
跳转到指定楼层
楼主
发表于 2016-1-10 03:42:30 | 只看该作者 回帖奖励 |正序浏览 |阅读模式
至于V15和源文件发布重生不再使用通过HP它不再去我会告诉你如何可以通过与它聊天源befehel0 p5 D1 }" f4 J5 `' I
/ Y- }+ C( V' r! l( s4 }
Mover.h
% G9 M( c" h- q; S: |3 t+ p代码:8 m+ p( T2 ~9 `  F
找到: void            InitLevel( int nJob, LONG nLevel, BOOL bGamma = TRUE );            // °′???| nLevel·? 1ù2?áü  \+ \- W0 F% a2 z7 j

3 V- V% Q( ~# f& `& V+ p& e, o6 H下面插入: void            InitLevelPumbaaa( int nJob, LONG nLevel, BOOL bGamma = TRUE ) ;  
# m0 T& ?7 J) _7 P$ H8 x
/ `1 }7 y1 I1 |7 C( f& L然后你去mover.cpp添加. R- q5 h7 S4 v7 M6 A( P+ B7 g4 H! {
% L4 q+ j  e: C% G' E
代码:
$ D) g' K, a" y" Q, x% E8 I" pvoid CMover::InitLevelPumbaaa( int nJob, LONG nLevel, BOOL bGamma )
! l6 F# I6 d5 \  H( l$ U, ?6 ]{+ ^/ n8 c6 C4 y! h. r
#ifdef __WORLDSERVER
4 c$ ]- k$ q7 g    // ???μàú ?í·éà?·? ·1o§?÷ ??′?°÷àó
; L( S% Z3 x4 S" C( ~  c    MoverProp* pProp = GetProp();
" H9 T1 d9 k+ ~) O) ]3 w1 a    if( pProp )
/ b0 w. Z( s7 W/ \$ U, l9 r    {
8 n) |) S. {6 O- ^        if( nJob > 0 && nJob < MAX_LEGEND_HERO )
" b; ^& F" v" n- d' P        {
! E( C( }: X% K) d. F  _            AddChangeJob( nJob );0 c' H/ G# y( Z# F* P" O
        }else{% Q- T2 W1 h& j. L4 ~
            return;
0 U; ^7 p1 |) y5 }! A        }: o: o" }) O% q) t7 B" R
        int nPoint = 0;
0 R/ ~2 Q+ v# d. J# O* t* h        if( m_nJob == JOB_MERCENARY )
7 H* u& W+ }' ?  q5 i6 z            nPoint += 40;
  b' Z* Q# W$ w& I7 X7 g        else if( m_nJob == JOB_ACROBAT )7 h; |" ^- \6 j% x" V: R
            nPoint += 50;9 G( Q% W" \2 \. p5 ~
        else if( m_nJob == JOB_ASSIST )
1 u( [5 g  H& Q$ E  u            nPoint += 60;
. m3 ?. j7 l7 D$ a$ @9 I! B        else if( m_nJob == JOB_MAGICIAN )
7 R# L1 ?- A& \' s/ {: j4 S2 `* y            nPoint += 90;
; W2 R8 K* Y" U& O/ `        else if( m_nJob ==  JOB_KNIGHT || m_nJob ==  JOB_BLADE )
7 R, X0 |7 y. u4 z( l! L& f3 A; c            nPoint += 120;0 _% y2 P9 y' j4 }2 A
        else if( m_nJob ==  JOB_JESTER || m_nJob ==  JOB_RANGER )
1 W4 k- [/ R0 W# p) D" h6 t/ V! g0 R5 W            nPoint += 150;
' O4 a* c6 |8 M: P; g        else if( m_nJob ==  JOB_RINGMASTER )5 m0 B* Z9 \, ~* ?% q; R9 [2 j
            nPoint += 160;
5 W0 a- Z5 b) S/ w+ o* e        else if( m_nJob ==  JOB_BILLPOSTER || m_nJob ==  JOB_PSYCHIKEEPER )
5 Q/ a" Q+ R1 i) w! H4 W            nPoint += 180;
* S: D* U! @# m9 S# d        else if( m_nJob ==  JOB_ELEMENTOR )6 {6 x3 G/ ?0 J1 S0 Z9 L
            nPoint += 390;% C- G8 s/ i  Z+ v3 L; ]
        else if( nJob ==  JOB_LORDTEMPLER_HERO || nJob ==  JOB_STORMBLADE_HERO ); R4 N: ~5 z. m: M9 i' P7 }
            nPoint += 120;
  n5 G8 F" M/ E+ I( }        else if( nJob ==  JOB_WINDLURKER_HERO || nJob ==  JOB_CRACKSHOOTER_HERO )
0 B  O9 J# ]$ L8 |            nPoint += 150;* b0 X6 O0 X# o' C  l: b. q
        else if( nJob ==  JOB_FLORIST_HERO )6 T' Z9 Z- M7 P& |/ e* q
            nPoint += 160;( I" a. b& `5 {* w2 A
        else if( nJob ==  JOB_FORCEMASTER_HERO || nJob ==  JOB_MENTALIST_HERO )  J  z. I! g) h- T/ j9 p. j! }
            nPoint += 180;
" ~6 \8 }5 `: Z        else if( nJob ==  JOB_ELEMENTORLORD_HERO )
5 N7 L( L* \) L" c            nPoint += 390;
9 \% l7 A( }5 P) ~/ [" n
. k- G' P& m; j0 B! x3 A+ d; o        AddSkillPoint( nPoint );
2 y; r$ D' l' d  x+ W4 b' D        m_nLevel = nLevel;
* ~9 s- }- V& H$ S( ~& B; |  @! {1 k7 N# T3 v, @8 i
        SetJobLevel( nLevel, nJob );
" `8 K' }: ~4 K% Q8 S/ q        m_nDeathLevel = nLevel;! C3 l6 D& @: V3 X# X  ]
#if __VER >= 10 // __LEGEND    //    10?÷ àü?????o??    Neuz, World, Trans
5 s# q' K4 m3 b        if(IsMaster())
- Q1 {# E% w. O; s& Z6 E7 t. p7 N        {
+ V0 |/ ?, q# W            int dwTmpSkLevel = 1;//60, 72, 84, 96, 108
6 r# Y: N2 u1 Y$ V+ N& }7 T            if( nLevel > 59 && nLevel < 72 )
+ a1 P1 k7 z& Y6 ^4 X; e3 ~% v                dwTmpSkLevel = 1;
$ ^. @/ D0 p! N& y            else if( nLevel > 71 && nLevel < 84 ); B3 w: Q% W) \9 z+ m
                dwTmpSkLevel = 2;, |/ `% V! M5 j
            else if( nLevel > 83 && nLevel < 96 )
+ _7 D( f7 |3 V. j+ I- {5 P: e                dwTmpSkLevel = 3;3 |. ~6 U) `7 e2 k  k: }! u
            else if( nLevel > 95 && nLevel < 108 ). `# d  s% [' u' @" e
                dwTmpSkLevel = 4;
. d3 z1 U( w7 g+ b/ I            else if( nLevel > 107 && nLevel < 120 )
8 d0 i2 O( C0 o5 a                dwTmpSkLevel = 5;
6 s" e! ?0 t* A1 n6 e" E" y% L            for( int i = 0; i < MAX_SKILL_JOB; i++ )
9 F# W) J* H7 C  P' W( @            {               
& @" b# t3 z. \                LPSKILL lpSkill = &(m_aJobSkill);1 t. i/ ]/ z5 d: ?! v8 _# X# i
                if( lpSkill && lpSkill->dwSkill != NULL_ID )& A$ e/ I0 Y8 j$ Z
                {
6 [+ s+ G; m, r9 Z                    ItemProp* pSkillProp    = prj.GetSkillProp( lpSkill->dwSkill );            / B0 y# i8 b) [  o* m
                    if( pSkillProp == NULL ); U! q6 R+ e& p2 l! ?  A* h
                        continue;! X1 J+ K- c1 {1 k% b- r
                    if( pSkillProp->dwItemKind1 != JTYPE_MASTER)
% Z* Y+ ]" [! q: H, c/ P                        continue;( K' n7 d7 h- M5 A' ^0 c6 t
                    lpSkill->dwLevel = dwTmpSkLevel;
: ?4 u5 p/ L! E  }. Z" j) D                }0 R2 }8 m( _8 R; L7 o4 H1 e1 O/ A
            }
( i" W, d- b6 u7 y+ a" Y1 d        }
, ~, {- a  [& A9 J4 N: H7 H1 x        else if(IsHero())# w2 H$ a, a; t9 _: O  z8 G
        {* K5 U; ^% o! a. H3 Y5 n9 S" b" Y
            for( int i = 0; i < MAX_SKILL_JOB; i++ )   G. a+ P/ S! O% j* C7 k6 b1 Z; P
            {               
  v0 j) ^, N7 V8 w1 b                LPSKILL lpSkill = &(m_aJobSkill);6 E% k2 e! x+ Y2 M3 V/ G; ?, m9 k
                if( lpSkill && lpSkill->dwSkill != NULL_ID )
6 B9 Y: V4 M* Q( r: |* N                {6 J9 W) K* \" U! y1 V8 g9 A4 |
                    ItemProp* pSkillProp    = prj.GetSkillProp( lpSkill->dwSkill );            
5 ^6 [' M. Z) f2 m$ y                    if( pSkillProp == NULL )- z. d" {1 U# X4 Z. {9 j( t; `& q2 z
                        continue;$ _* Q& m4 h0 U$ l* F8 H6 V# T
                    if( pSkillProp->dwItemKind1 != JTYPE_MASTER)- K( x* R' k# u( K
                        continue;* M- b8 u, ?) t4 z. M
                    lpSkill->dwLevel = 5;
5 \, F# d! P, g2 Z! b, N: p1 W4 o; X                }
7 W. u1 u8 |4 j            }8 M9 _2 T$ |7 V& n; A* N
        }
: }; B/ X5 P" O$ H/ _* G        else if(IsLegendHero())
# q$ e3 C* D' _; s        {1 T. l- _7 a% n8 T/ [/ X) |" b
            for( int i = 0; i < MAX_SKILL_JOB; i++ ) ) U7 N! B- t; y2 H: W1 _0 k& x* w
            {               
7 w  G, _2 A  V9 Z/ A6 J                LPSKILL lpSkill = &(m_aJobSkill);+ u, }7 b4 t( p$ S( t
                if( lpSkill && lpSkill->dwSkill != NULL_ID )
& c& m% D" q% R' Q                {# p: m8 g( q' q# F+ Y$ K0 A+ _
                    ItemProp* pSkillProp    = prj.GetSkillProp( lpSkill->dwSkill );            
1 M  z' u! O1 e0 X! E                    if( pSkillProp == NULL )+ b0 {' }* v4 i: @, t
                        continue;- {' Q+ t/ q: X$ M4 u5 T: Z. C: ~
                    if( pSkillProp->dwItemKind1 != JTYPE_MASTER)
- o- v  k2 {# [$ Q4 Q                        continue;# A- r# L# T8 G$ I5 s- X
                    lpSkill->dwLevel = 5;' g. w# I/ U) W$ j* ~) k& [: a
                }* G6 Z" X) _1 D+ n. e
            }
9 l* b, v; ^0 u, r& |0 x- _        }+ e" M8 \; I: r2 ]6 _7 ^
#endif    //     __LEGEND    //    10?÷ àü?????o??    Neuz, World, Trans
, {3 W8 U$ X( o7 `! c+ ]1 _# Q6 J        if( bGamma )
2 B/ y( Q, M5 f# Y  ~) @3 h        {
: I" D8 i/ x1 P* \0 d            m_nExp1 = 0;
6 m$ H* @" }! K  W$ p( T. c        }- C3 |# b+ g2 K/ y

" s( Y" M  I1 T' I0 n6 ?$ {3 S' t$ i& F        ( (CUser*)this )->AddSetChangeJob( nJob );
; Y3 O# G& S2 U2 D" w& i$ e) _- ]        g_UserMng.AddNearSetChangeJob( this, nJob, &((CUser*)this)->m_aJobSkill[MAX_JOB_SKILL] );" E. L- f" q) h/ T! y( m7 w

: W5 ?. U7 a( w& g7 ?4 h# ^9 |6 S, e  k1 t9 O
#if __VER >= 11 // __SYS_PLAYER_DATA/ T9 ]1 K3 X/ |% P  o* S2 S
        g_dpDBClient.SendUpdatePlayerData( (CUser*)this );$ l  |# u4 t" f
#else    // __SYS_PLAYER_DATA
9 w. X) g' E* F- z3 j        g_DPCoreClient.SendPartyMemberJob( (CUser*)this );( l' h1 D  g0 G* j! O) {3 E
        g_DPCoreClient.SendFriendChangeJob( (CUser*)this );% D2 U, m' q, Q. U9 n* x( ~" r
        if( m_idGuild != 0 )$ M3 {/ ?: t0 U8 N
            g_DPCoreClient.SendGuildChangeJobLevel( (CUser*)this );  J: S8 P/ T# f# ]$ q, v& J; F  i; y& P9 n: X
#endif    // __SYS_PLAYER_DATA) \. t  R5 o6 M; ]
        SetHitPoint( GetMaxHitPoint() );! |3 p: \' J2 J: p
        SetManaPoint( GetMaxManaPoint() );
3 }9 q$ Y. v  m, `: @+ x        SetFatiguePoint( GetMaxFatiguePoint() );
4 ?& s: z! F& M8 _' A) D3 q        if( nJob >= 1 && nJob <= 4 )6 L9 q) R- V1 T5 @) m
        {' }$ b- f. F% n# e/ P* P
            m_nStr = m_nSta = m_nDex = m_nInt = 15;
+ m8 D$ ]% L) w6 H0 z6 }: N  T$ V" u            m_nRemainGP = 28;
1 @8 S8 P; \! @7 |        }' A& R! ^2 z+ i6 Q/ N. e. R
        if( nJob >= MAX_PROFESSIONAL && nJob < MAX_MASTER )
* D  p2 O; ~9 `        {
1 E% T& H* D! a1 @) R. s. q6 u            m_nRemainGP = 118;
% |  R' a3 [4 C* W            //m_nRemainGP = ( m_nSta - 15 ) + ( m_nStr - 15 ) + ( m_nDex - 15 ) + ( m_nInt - 15 ) + m_nRemainGP;
! P4 h% t- e4 E2 u            m_nStr = m_nSta = m_nDex = m_nInt = 15;  }/ n  |% w1 m! G. k* I; m9 n. l6 {
        }
" j1 F  L9 ~0 X: ?% B        if( nJob == JOB_MENTALIST_HERO || nJob == JOB_FORCEMASTER_HERO )
1 z: O! y3 w" j) A2 n        {1 @3 X  K: b  b9 R
            CItemElem itemelem;
, q5 u) U0 Y7 W4 B            itemelem.m_nItemNum = 1;
' ]2 M: y) d( h% X            itemelem.m_bCharged = TRUE;: ]) L, |  t. L6 r# h. S7 I
            BYTE nID;! q9 x8 t" z+ ]! ~; ]; M/ k/ Y) W

2 x# g% U+ T" m0 y            if( nJob == JOB_MENTALIST_HERO )
1 |: B* g" ~' |) u                itemelem.m_dwItemId = II_WEA_BOOK_BOKROMAIN;5 H$ W' R+ S- o5 u$ c
            if( nJob == JOB_FORCEMASTER_HERO )* l- k1 a& i% _
                itemelem.m_dwItemId = II_ARM_ARM_SHI_ZEMBATO;
' ]5 y3 y7 Q& U! `$ J. O: X& O, R; K
            ( ( CUser*)this)->CreateItem( &itemelem, &nID );0 _& |; {3 d: s& p5 |8 k# |
        }, |: T. I, h" q3 T( P+ M
        g_UserMng.AddSetLevel( this, (WORD)m_nLevel );$ C3 q7 t; ?9 Q5 s
        ( (CUser*)this )->AddSetGrowthLearningPoint( m_nRemainGP );
9 A) t# i+ a+ L        ( (CUser*)this )->AddSetExperience( GetExp1(), (WORD)m_nLevel, m_nSkillPoint, m_nSkillLevel );- e4 _2 U  c4 E( a
        /*( (CUser*)this )->m_playTaskBar.InitTaskBarShorcutKind( SHORTCUT_SKILL );
. ~. j6 @( B0 _        ( (CUser*)this )->AddTaskBar();*/
) o5 w  N. d2 N+ Y) X% D- n        ( (CUser*)this )->AddSetState( m_nStr, m_nSta, m_nDex, m_nInt, m_nRemainGP );4 T. D! }: u# \! L+ Z! z- k  _7 ]& I6 u
#if __VER >= 13 // __HONORABLE_TITLE            // ′Tà?4 f9 E0 R# f1 [9 E9 k( _. M
        ((CUser*)this)->CheckHonorStat();
( B* J$ f1 _* t3 }+ ]2 i        ((CUser*)this)->AddHonorListAck();
! ?8 @, M0 |$ T5 J4 K        g_UserMng.AddHonorTitleChange( this, m_nHonor);5 m9 `( P5 r. ~8 F
#endif    // __HONORABLE_TITLE            // ′Tà?$ _+ f9 C4 |' \' j3 d5 U& g
    }
3 h7 _; h1 v9 h3 G# {#endif // __WORLDSERVER! }1 }) _2 k$ c9 ^2 B
}  9 e, w7 U6 `$ B4 a' J
3 J1 D* j  h. R  E8 X
然后你进入functextcmd.cpp并添加以下
' T4 V3 C9 y8 h* z! `8 g
2 X0 U* }7 y* h) g代码:
) A8 Q4 L0 K. a! {0 ~ON_TEXTCMDFUNC( TextCmd_say,                   "say",               "say",            "??",             "??",      TCM_SERVER, AUTH_GENERAL      , "?ó?èàó [/?í·é ??àìμe 3???]" ); |$ J4 k8 l2 `8 n
下面插入
% X$ L5 y8 c2 \" I: O# [' c! r- VON_TEXTCMDFUNC( TextCmd_rebirth,              "rebirth",          "rebirth",             "?ú·1?÷??",       "?ú·1",    TCM_SERVER, AUTH_GENERAL   , "?ú·1?÷??" )  
7 B! m: Y$ M3 {0 Q& M: M4 Y0 x$ r! _" w) g" w3 C0 Y
然后你去4 S& ?! X9 k/ Y* f; y7 Y- P

5 V3 H2 r0 u; G代码:5 ^9 P& w! V3 v% x
代码' i: F2 s% I# [5 w. j
BOOL TextCmd_ClearPropose( CScanner & s ). r7 C' ^/ u% E6 b! Y
{
2 M- O0 K4 O: ^: o; ~1 f#ifdef __WORLDSERVER
$ E: B9 h5 x6 q    CUser* pUser    = (CUser*)s.dwValue;
3 z4 S; ~) z$ b3 n+ X    g_dpDBClient.SendClearPropose();- b7 Y5 h: O9 ?1 B# ?  u
#endif    // __WORLDSERVER! F" w7 |" [. d5 x
    return TRUE;
# a/ K8 \1 `# @8 O; O}5 p6 p- ]4 j5 K6 A" d3 ]
下面插入* u7 T, i" ?: F4 _9 M7 n# k, w
BOOL TextCmd_rebirth( CScanner& scanner ); U* T% _! r8 A2 A$ e
{
7 ^) }+ k0 Y0 f& ~1 F  l' o; \9 w/ {#ifdef __WORLDSERVER0 p  t5 S/ v- \- S8 w" ^6 O4 h
CUser *pUser;
1 D' o$ Q0 ?# ?5 D: opUser = (CUser*)scanner.dwValue;
9 P" q& |3 m" }" o' J: Yif(pUser->m_nLevel >= 150 && pUser->IsLegendHero())5 {7 J% S! L& x* b0 E8 w7 X  b
pUser->InitLevelPumbaaa( pUser->m_nJob-16,60);
2 T7 q0 }7 u9 R* [5 D0 H9 melse- z) f5 n1 L4 [3 z0 c% x% J4 [3 X+ d
pUser->AddText("你还未达到重生条件!");
0 F' e4 u9 x- P5 U#endif5 Y& |  F; E9 `
return TRUE;
' A8 [7 T0 J* H}  $ Z# V& j1 O1 s8 C7 l$ p
) `. w) f7 K/ t9 c& a+ P: j
) i+ h0 o( }; @) y; X
/ y3 I& ~; U" S' H9 R% j5 ]

+ g. x% k( m  \5 a# D
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2026-1-26 14:19 , Processed in 0.079886 second(s), 23 queries , Gzip On.

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

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