飞飞世界论坛

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

通过命令重生

[复制链接]

197

主题

203

帖子

1086

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
1086
QQ
跳转到指定楼层
楼主
发表于 2016-1-10 03:42:30 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
至于V15和源文件发布重生不再使用通过HP它不再去我会告诉你如何可以通过与它聊天源befehel
2 ~" {6 E2 K1 ^2 j1 @7 u5 l% K- V# Y8 _6 s# }; ?1 ~* W8 t
Mover.h0 {+ \: E; K0 l6 F! @# N
代码:/ E( |( p$ H& s$ {
找到: void            InitLevel( int nJob, LONG nLevel, BOOL bGamma = TRUE );            // °′???| nLevel·? 1ù2?áü
, N& m8 M# _0 [4 ^( n+ \# ]# s( b* b  m1 R2 ~
下面插入: void            InitLevelPumbaaa( int nJob, LONG nLevel, BOOL bGamma = TRUE ) ;  1 b7 [1 s( |/ Z$ L" b
$ P; s! e5 u' }% b' D( o" t
然后你去mover.cpp添加
2 Z( R- [+ R) i& W/ j6 Q6 g
* w# w3 u- Y; _3 k代码:% l6 N* {" b& G; i, W
void CMover::InitLevelPumbaaa( int nJob, LONG nLevel, BOOL bGamma )" Q0 M/ x& P' m( }  n8 m* R
{9 _7 G6 z& |, `
#ifdef __WORLDSERVER
! r' Y, a2 p0 Y5 Q    // ???μàú ?í·éà?·? ·1o§?÷ ??′?°÷àó
$ q$ x  ]1 g) ^1 i    MoverProp* pProp = GetProp();+ L5 m% Y' {0 s) X: d  s, e$ ]' V( [
    if( pProp )6 M* r4 R+ w/ f5 X5 @( a
    {# i3 q6 [6 s! |/ D
        if( nJob > 0 && nJob < MAX_LEGEND_HERO ): P$ Z( ?1 l/ k- j2 n! J
        {3 h* U4 W/ `" q1 n
            AddChangeJob( nJob );, c1 D. ~) j" Q* k0 @2 j5 E, F
        }else{
) j, C* R( u( P9 c! z            return;/ s  p: u# h4 Q
        }
) }+ A) a* T3 E% S) O        int nPoint = 0;
( x1 j  G. h8 h$ |# n        if( m_nJob == JOB_MERCENARY )+ P8 E( S+ R( `) P6 J
            nPoint += 40;
+ M4 L+ f: A) R; l8 Q        else if( m_nJob == JOB_ACROBAT )+ {) q. P: x8 _/ Z2 E
            nPoint += 50;6 ^# A% x9 b  w7 w% s$ U
        else if( m_nJob == JOB_ASSIST )
% @# N0 C" T3 @  P/ N            nPoint += 60;
# G' b  P& a0 J) }+ L        else if( m_nJob == JOB_MAGICIAN )
% n0 d0 Z4 w% ]9 b            nPoint += 90;- b2 ?6 p/ Y! l! p9 Q
        else if( m_nJob ==  JOB_KNIGHT || m_nJob ==  JOB_BLADE ): i* S0 t' z8 p5 ?7 k( W0 W. Y
            nPoint += 120;
2 m# y5 ?* O% i+ b5 Z3 N4 h        else if( m_nJob ==  JOB_JESTER || m_nJob ==  JOB_RANGER )/ _! X% m2 }% \  Z. e
            nPoint += 150;
" g2 d! ?2 s) r) W& {2 A* d6 m" C        else if( m_nJob ==  JOB_RINGMASTER )
$ Q. j0 _7 [$ P% n* Z- t            nPoint += 160;5 O2 h; o; W( F8 W% y
        else if( m_nJob ==  JOB_BILLPOSTER || m_nJob ==  JOB_PSYCHIKEEPER )
  Y  d% I7 N3 i: E# [            nPoint += 180;6 Y1 ]% v+ d9 o8 U4 r: ^
        else if( m_nJob ==  JOB_ELEMENTOR )
% O% w0 _- D  c" T% }" }            nPoint += 390;
6 _: m" ^4 w. u' w( F. f* r  Z% A        else if( nJob ==  JOB_LORDTEMPLER_HERO || nJob ==  JOB_STORMBLADE_HERO )1 B/ x9 f% I& p9 W* a
            nPoint += 120;9 c4 s5 C! E1 z8 w% p/ A- @
        else if( nJob ==  JOB_WINDLURKER_HERO || nJob ==  JOB_CRACKSHOOTER_HERO )+ i8 o- {- `7 a' b
            nPoint += 150;0 f( K' p4 [6 i% p* G% \
        else if( nJob ==  JOB_FLORIST_HERO )
/ l  Z, x  X7 Z# }% @! b2 D            nPoint += 160;1 o1 l: x8 N9 @/ x1 e: g) e
        else if( nJob ==  JOB_FORCEMASTER_HERO || nJob ==  JOB_MENTALIST_HERO )
& a  u" A* c. V            nPoint += 180;6 D4 p* t- i1 q9 h0 k) O7 @* \
        else if( nJob ==  JOB_ELEMENTORLORD_HERO )
% ], ~$ S8 g, p# {; K/ V            nPoint += 390;  C! c$ F) L8 z  R- F; S. C& N6 q. W
, {8 ]$ W  p/ X& c
        AddSkillPoint( nPoint );
: Q  X/ m/ T+ S, m% g, U        m_nLevel = nLevel;
0 R0 k( ~3 n7 a$ b- q# \8 r/ L4 F6 K$ [
        SetJobLevel( nLevel, nJob );
& s8 W3 ]* q7 h! g* \        m_nDeathLevel = nLevel;: _# y$ E+ Y4 q( g: i& }9 z
#if __VER >= 10 // __LEGEND    //    10?÷ àü?????o??    Neuz, World, Trans$ `, P" e/ ]5 Q! c: o2 F
        if(IsMaster())
. t% @' x- M, Q* B7 _9 e  _        {
+ b) A, U8 p! U1 S; O, w  h            int dwTmpSkLevel = 1;//60, 72, 84, 96, 108
. \5 o% e- I7 d+ @6 y& t2 h            if( nLevel > 59 && nLevel < 72 ). ~  [& R- Z0 c! t6 ?; o- g% n
                dwTmpSkLevel = 1;
# \! C. }6 o( U  N/ A3 N( P            else if( nLevel > 71 && nLevel < 84 )0 \( D) l# P+ X* f
                dwTmpSkLevel = 2;4 W* Q. H9 T7 t  ^: d4 I; g  C& I7 Z
            else if( nLevel > 83 && nLevel < 96 )
+ t* Y( X# s( G+ N7 M& M. r4 x                dwTmpSkLevel = 3;8 H/ w& |$ O7 T; B! R
            else if( nLevel > 95 && nLevel < 108 )
5 j2 B# S" @+ ?0 |: `6 }                dwTmpSkLevel = 4;- ]& F$ B; P* N8 E3 m, F
            else if( nLevel > 107 && nLevel < 120 )+ K' J  |3 A1 a
                dwTmpSkLevel = 5;: @8 V4 |$ j- b& W1 X* Z
            for( int i = 0; i < MAX_SKILL_JOB; i++ ) " ^% e7 S) S' c0 Z8 F& R
            {                & ]; Y* s' s6 L
                LPSKILL lpSkill = &(m_aJobSkill);* N9 i+ K; k0 A- }
                if( lpSkill && lpSkill->dwSkill != NULL_ID )9 I3 w) j2 u2 K2 x3 Q
                {
- ~7 {8 {% ?2 N: d                    ItemProp* pSkillProp    = prj.GetSkillProp( lpSkill->dwSkill );            
, y) M2 d/ L0 H5 `5 f8 i* R/ K                    if( pSkillProp == NULL )
$ b. v' }( `' r; t' r. h+ s7 a                        continue;
) P) G: p9 g; R# ^) d                    if( pSkillProp->dwItemKind1 != JTYPE_MASTER)
: i" z- s% o, Q2 V6 `6 e3 \: d                        continue;/ p- Q5 t1 G3 S6 J
                    lpSkill->dwLevel = dwTmpSkLevel;
- J, w. k" K# a                }
! k) M2 P7 A; S/ F* A' ~/ v9 `            }+ l3 L. t* _) u4 H2 C
        }- J* @6 G) e. z+ l$ D; r1 m: B1 M, z2 S0 f
        else if(IsHero())
1 Y8 ?' |4 v0 |. }  K& ?0 ?        {
$ H8 j7 X- h) i) C* P' b1 G            for( int i = 0; i < MAX_SKILL_JOB; i++ )
* a2 M/ \8 W* y7 v- H' N            {               
; [3 d( m) ~6 P                LPSKILL lpSkill = &(m_aJobSkill);
( s4 }5 D, [' B) T                if( lpSkill && lpSkill->dwSkill != NULL_ID )1 j& z! Q6 K' e
                {- X. s* R9 J* Y5 x1 n4 C2 S( Z9 H
                    ItemProp* pSkillProp    = prj.GetSkillProp( lpSkill->dwSkill );            8 t+ o* t  ^9 Z9 T5 Y7 p
                    if( pSkillProp == NULL )
: Q& v1 _. j3 M2 g# p& q0 a9 h                        continue;
# r" W3 `2 v. K7 ^0 O                    if( pSkillProp->dwItemKind1 != JTYPE_MASTER)
3 Q7 K+ Z% S3 d& U# F                        continue;# `6 U* R! @; a. B. S1 o
                    lpSkill->dwLevel = 5;
9 m' h: ]  E; n! D9 c: [( D0 K: y6 e2 A                }& `6 e9 f! n% S; m: x% m! Q
            }
' l( ], }0 J3 L3 W7 [        }! J' z# D3 H# q6 z
        else if(IsLegendHero())
- T& {3 R$ N- z% C$ S" M  P        {; h/ e6 w* J  M+ Q( g" {! n
            for( int i = 0; i < MAX_SKILL_JOB; i++ )
4 E$ R# N2 x: J; I; q* {            {               
, p. v2 Q4 p! u2 g% c) a  j* S                LPSKILL lpSkill = &(m_aJobSkill);
7 }0 p) Y1 M) X  _8 X% t# s                if( lpSkill && lpSkill->dwSkill != NULL_ID )- V+ p: T3 }& _7 [' l5 r
                {) k0 h% k) ]) Y' X) D" Y# Y
                    ItemProp* pSkillProp    = prj.GetSkillProp( lpSkill->dwSkill );            
4 r0 r6 \1 r  w" E: v: Y                    if( pSkillProp == NULL )
) o7 I- f& r) b                        continue;! u+ q  S8 X# J7 C' W
                    if( pSkillProp->dwItemKind1 != JTYPE_MASTER)
. \+ G" b0 Z* }6 i6 g                        continue;
9 M" ?. D( O" P0 `/ V9 @6 f                    lpSkill->dwLevel = 5;
9 r' B2 q3 Y+ K' X( Z5 S                }
+ G+ K# l! H1 Q5 E- Y* `) Q* q" z            }$ t  o3 O" x9 C
        }& `3 g# e$ l" {+ M+ m) u
#endif    //     __LEGEND    //    10?÷ àü?????o??    Neuz, World, Trans
! o  |8 S* i& V& X! U        if( bGamma )
' |* L& P. R$ d% K, t        {
3 K$ l6 B- k# W$ {( M* A8 O            m_nExp1 = 0;2 _: b, e/ M  ?- i( O% i( l2 j
        }) j9 b8 Y  Z4 T8 F

6 Y3 B/ W. z" ^+ ]7 j' n7 F        ( (CUser*)this )->AddSetChangeJob( nJob );
0 q8 C5 l" I0 S, ~& f        g_UserMng.AddNearSetChangeJob( this, nJob, &((CUser*)this)->m_aJobSkill[MAX_JOB_SKILL] );0 x# j4 s3 s& @" Y+ g
2 A  Q6 j2 e1 p8 k: ~# n
+ q/ t/ Q' |% r) F+ s7 J
#if __VER >= 11 // __SYS_PLAYER_DATA
9 r$ O+ w7 Q, T/ W* ]% Z0 x, E        g_dpDBClient.SendUpdatePlayerData( (CUser*)this );' [4 G9 c# X# G" B4 b+ r
#else    // __SYS_PLAYER_DATA% q) g+ r# [& q3 r9 W
        g_DPCoreClient.SendPartyMemberJob( (CUser*)this );
$ _& M: B8 Y1 F  B6 [  Y1 A! `% n        g_DPCoreClient.SendFriendChangeJob( (CUser*)this );, _* c' f1 [0 B+ x- S. p& i/ B3 p
        if( m_idGuild != 0 )
- O! W' W' B+ N6 ^            g_DPCoreClient.SendGuildChangeJobLevel( (CUser*)this );
( p& y4 J, e1 N! a9 B6 n" h4 l#endif    // __SYS_PLAYER_DATA
6 p4 P" V( `, x" q4 Z! }$ x        SetHitPoint( GetMaxHitPoint() );5 {9 }. I, G& S. I, \3 C
        SetManaPoint( GetMaxManaPoint() );
7 o0 m! p% T7 z- e' M        SetFatiguePoint( GetMaxFatiguePoint() );3 ^* D$ a$ R. |" Y0 v+ C1 z
        if( nJob >= 1 && nJob <= 4 )1 W- k& F% m* S+ J$ Q
        {
; q+ g4 q. Y5 o0 y            m_nStr = m_nSta = m_nDex = m_nInt = 15;, k  y4 c0 |- W) a9 v, z4 G$ ^
            m_nRemainGP = 28;( d+ s; ~. P4 `; I7 P- u  r$ s
        }
* S% I+ N2 f+ ]# f5 A        if( nJob >= MAX_PROFESSIONAL && nJob < MAX_MASTER )+ c' e0 h* U% g
        {+ d8 i" x. x  Q2 F' G% Q) H& b0 n
            m_nRemainGP = 118;3 Y3 e7 t: X9 s# R1 W/ n1 x
            //m_nRemainGP = ( m_nSta - 15 ) + ( m_nStr - 15 ) + ( m_nDex - 15 ) + ( m_nInt - 15 ) + m_nRemainGP;
% t4 o  L. e% z2 z: R. `8 A            m_nStr = m_nSta = m_nDex = m_nInt = 15;
% D9 ]; q5 y3 q9 b/ l        }
+ E7 H- D4 a. U2 y' o) t        if( nJob == JOB_MENTALIST_HERO || nJob == JOB_FORCEMASTER_HERO )$ N" Q% k( @% T" d- l2 W8 X
        {. g& a% o; ~( d" D4 x5 P' T# d3 i
            CItemElem itemelem;
) x% K4 g" l/ e9 U9 }) P            itemelem.m_nItemNum = 1;5 e- U0 N( {% p0 Y/ p. N2 L" L% f
            itemelem.m_bCharged = TRUE;
4 H& t. L; z% B  V2 v, a' m            BYTE nID;5 f& A0 h4 r4 y: R
: k/ o3 j* g/ k' a  {. Z# W
            if( nJob == JOB_MENTALIST_HERO )
8 v) e2 }1 Q( b9 h# N9 [                itemelem.m_dwItemId = II_WEA_BOOK_BOKROMAIN;6 D. y8 h5 E+ O$ M/ l
            if( nJob == JOB_FORCEMASTER_HERO )
2 A8 ~0 B: ~- R& r. G! T                itemelem.m_dwItemId = II_ARM_ARM_SHI_ZEMBATO;
/ l% v2 P& v9 M" s( ~& K7 f; a1 l9 v7 ?
            ( ( CUser*)this)->CreateItem( &itemelem, &nID );' [( I0 \6 W5 v* B4 ^7 F
        }
+ T; b- G  i/ l$ l        g_UserMng.AddSetLevel( this, (WORD)m_nLevel );
4 J" X* Q/ Y: k& X2 Z        ( (CUser*)this )->AddSetGrowthLearningPoint( m_nRemainGP );
7 w$ ~! ~. G$ f8 W% H: \- v3 G        ( (CUser*)this )->AddSetExperience( GetExp1(), (WORD)m_nLevel, m_nSkillPoint, m_nSkillLevel );
4 ~) B& B" @6 i. W  ~; H        /*( (CUser*)this )->m_playTaskBar.InitTaskBarShorcutKind( SHORTCUT_SKILL );0 U7 F8 p: [$ M
        ( (CUser*)this )->AddTaskBar();*/, h! L5 N2 |8 ~  j
        ( (CUser*)this )->AddSetState( m_nStr, m_nSta, m_nDex, m_nInt, m_nRemainGP );! e" y+ m2 r  G: R
#if __VER >= 13 // __HONORABLE_TITLE            // ′Tà?
$ z  k' b3 N2 Z: K9 b        ((CUser*)this)->CheckHonorStat();
' p9 g4 E3 |, v9 u0 `2 I        ((CUser*)this)->AddHonorListAck();
  Z+ x: |! Z. r        g_UserMng.AddHonorTitleChange( this, m_nHonor);
1 c1 @; t" q, ^) f#endif    // __HONORABLE_TITLE            // ′Tà?+ X( ^  H3 S! ?/ L
    }+ t- B* z  o5 g- f
#endif // __WORLDSERVER
: b7 x; q& l+ a* d}  3 w2 i6 R; U& S. D# o
* c  ^) }4 m" p) H
然后你进入functextcmd.cpp并添加以下
6 k1 B- V6 _. d: N9 f' i# I. C' V3 z0 I' p5 `4 ?* }1 S
代码:
# r" e8 Z- U; @3 [( \ON_TEXTCMDFUNC( TextCmd_say,                   "say",               "say",            "??",             "??",      TCM_SERVER, AUTH_GENERAL      , "?ó?èàó [/?í·é ??àìμe 3???]" )3 K5 W) g% g/ K7 }8 w
下面插入
5 M) Q; ^% y1 C; [# BON_TEXTCMDFUNC( TextCmd_rebirth,              "rebirth",          "rebirth",             "?ú·1?÷??",       "?ú·1",    TCM_SERVER, AUTH_GENERAL   , "?ú·1?÷??" )  7 ^) j0 N& o( a+ H8 f9 a+ r* x

3 @2 E7 Q$ T; y, j7 ?然后你去
* g- i' c+ J, k0 S8 n8 o$ S3 J" }- s+ R9 S5 w) W  P% T+ l
代码:
- V3 J4 |+ _3 h! F2 }0 @( z代码1 S0 _" _2 b- K. l( d
BOOL TextCmd_ClearPropose( CScanner & s )
& ?/ u1 u+ f( L0 [7 Q& @5 P{% f/ K, E7 c9 H( C# ]1 f( v
#ifdef __WORLDSERVER
" b! b8 }0 T0 i/ `- T+ r    CUser* pUser    = (CUser*)s.dwValue;
- w5 t, c' G# s0 [9 D0 A    g_dpDBClient.SendClearPropose();+ F- h" m8 `8 q+ l( v& a
#endif    // __WORLDSERVER  d  I, f" X. S, n: S1 Z1 M7 y$ E
    return TRUE;
: b. u  N/ g( Z- A: G+ w}
9 I8 I+ U& C4 q  u下面插入7 ~0 \* T8 r# B: G* m) N, h; _/ r5 P
BOOL TextCmd_rebirth( CScanner& scanner )* o% i! k: E; [, A
{
% F7 `# P8 F/ y/ y6 l- t" `#ifdef __WORLDSERVER1 l" T& z3 P2 l
CUser *pUser;
& G% \! s. u" o( kpUser = (CUser*)scanner.dwValue;
8 i# j; I$ d. Q0 [* V: I8 Gif(pUser->m_nLevel >= 150 && pUser->IsLegendHero())& z5 Y( J: E2 u! T
pUser->InitLevelPumbaaa( pUser->m_nJob-16,60);9 o* ~4 i+ y( {, f# d
else2 M; J. x0 I9 a2 R
pUser->AddText("你还未达到重生条件!");1 j9 \  j6 n7 d' z
#endif" U5 N" K. L0 c% c: P8 _
return TRUE;
) t) N7 W5 V/ t& Q}  ! k/ ]3 F; j8 Z' l9 b

1 j. i) T0 x6 _& K: F" r  s$ h% z- o/ q/ q: N. l: C2 G/ @: n* s

1 D" ?& m0 r2 i: `2 V( x4 L
( F" s+ Y# `! B% Y1 [$ e
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-12-9 03:49 , Processed in 0.061201 second(s), 23 queries , Gzip On.

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

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