飞飞世界论坛

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

通过命令重生

[复制链接]

197

主题

203

帖子

1086

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
1086
QQ
跳转到指定楼层
楼主
发表于 2016-1-10 03:42:30 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
至于V15和源文件发布重生不再使用通过HP它不再去我会告诉你如何可以通过与它聊天源befehel
1 M% o/ {5 h5 {' C/ ]1 g1 D/ c% W" o8 a( J+ @+ G" d$ e
Mover.h
) J3 z9 a/ A3 S! L% n; C代码:
7 f# t' U* r- h% x找到: void            InitLevel( int nJob, LONG nLevel, BOOL bGamma = TRUE );            // °′???| nLevel·? 1ù2?áü
$ }& e. j- v' I( Q7 f
( J' _; J( V. {! S& W3 ~下面插入: void            InitLevelPumbaaa( int nJob, LONG nLevel, BOOL bGamma = TRUE ) ;  
' Q9 L/ Z3 X7 S! ]( L2 o3 ~5 y2 l4 d; Z
然后你去mover.cpp添加
1 n- D2 N  {, }; u- i1 Q. v7 K2 i+ {3 V- g
代码:
' g7 t* j$ B) O" ^( B: v% ^, Bvoid CMover::InitLevelPumbaaa( int nJob, LONG nLevel, BOOL bGamma )
. P5 Z; I* b5 P+ {# I9 k+ n{! N( D- N; K' v9 G
#ifdef __WORLDSERVER$ f: B3 D" R; ?9 y' `5 ~* a
    // ???μàú ?í·éà?·? ·1o§?÷ ??′?°÷àó2 b: V. m/ k% i* X# D
    MoverProp* pProp = GetProp();
6 o) ]% l5 ^5 c) F; b5 p    if( pProp )
5 f$ g5 @2 R. ?0 X+ ]    {7 W' K+ v1 q1 r4 E! j
        if( nJob > 0 && nJob < MAX_LEGEND_HERO ); d) ]) t7 g# d; F% M6 G2 v
        {% M* Q& E7 m- n, U; V: A2 r" j
            AddChangeJob( nJob );  S% |$ G& C$ B) w2 k4 A. S$ F
        }else{$ y- v2 l" S: O: O
            return;) R7 Y' e: c  O: L, D  w1 [- z
        }
8 b7 H; Z  u% m& p* Y" }! U6 R1 e        int nPoint = 0;
  Z6 i# g8 E, g* r9 ^        if( m_nJob == JOB_MERCENARY ), @& e! d0 V, K6 M
            nPoint += 40;
0 s! o, A& S4 [9 P6 |7 n5 R& j        else if( m_nJob == JOB_ACROBAT )
& a2 g7 W$ w. [2 n; q1 A            nPoint += 50;% x% N1 {2 j- h# Z" w( h
        else if( m_nJob == JOB_ASSIST )& h6 p: f/ Q2 \' F% _9 {
            nPoint += 60;
2 v4 y7 q% ^$ R, F( v8 t( d7 o% s& r- C        else if( m_nJob == JOB_MAGICIAN )
3 Z& W% K2 M  V4 Z            nPoint += 90;
8 _" x) S1 E& L  v" d' S# {        else if( m_nJob ==  JOB_KNIGHT || m_nJob ==  JOB_BLADE )
' {' g1 C5 J, L            nPoint += 120;
3 G0 R' ?9 R# X4 C( T9 P        else if( m_nJob ==  JOB_JESTER || m_nJob ==  JOB_RANGER )
. w* @6 z" T0 D0 [- |            nPoint += 150;. L0 F' z% h! p) b6 t
        else if( m_nJob ==  JOB_RINGMASTER )
- _8 c9 K! {9 {! v- K            nPoint += 160;
8 C  N  }% Y; g' {0 W# _+ P0 f# \+ g* U        else if( m_nJob ==  JOB_BILLPOSTER || m_nJob ==  JOB_PSYCHIKEEPER )
" f, F# x4 Q6 B            nPoint += 180;
/ h4 W+ a, e" g2 g4 ?+ ]$ P        else if( m_nJob ==  JOB_ELEMENTOR )
3 u) K6 T+ W1 z& Z. n% }. _: }7 M            nPoint += 390;
5 J% k" ]! k2 S% ]5 G& Z        else if( nJob ==  JOB_LORDTEMPLER_HERO || nJob ==  JOB_STORMBLADE_HERO )  b7 f4 Z* ~$ {! R6 i
            nPoint += 120;! p% N) D+ C% P' o# U# W3 {' l
        else if( nJob ==  JOB_WINDLURKER_HERO || nJob ==  JOB_CRACKSHOOTER_HERO )
0 p/ p/ ?. E; y. V3 K+ e  g7 g            nPoint += 150;
8 o$ _: X3 X4 |+ ~& ~% a; ~) \        else if( nJob ==  JOB_FLORIST_HERO ). a0 n* Y3 |0 V" I
            nPoint += 160;
% l) d, F6 _5 Y8 Z$ w        else if( nJob ==  JOB_FORCEMASTER_HERO || nJob ==  JOB_MENTALIST_HERO )0 D5 w6 b5 `% v/ u- d8 R6 Q
            nPoint += 180;
7 W; R/ x* ]' \: g9 d        else if( nJob ==  JOB_ELEMENTORLORD_HERO )
8 R# ~6 i  k& f4 b  {7 ^) B# C            nPoint += 390;
  e( ?6 f" k$ x3 O2 i  m1 @$ m5 C! n! I7 O; X
        AddSkillPoint( nPoint );8 e- x. X) R0 V% b; f
        m_nLevel = nLevel;8 G$ p& e8 |- E# p% l
5 l4 J4 P: o; W8 e$ X9 q$ V3 R' `* u
        SetJobLevel( nLevel, nJob );
, m: S" H; O% J6 H8 F. M  L        m_nDeathLevel = nLevel;
, E& W2 z" c/ r4 w2 |#if __VER >= 10 // __LEGEND    //    10?÷ àü?????o??    Neuz, World, Trans: @3 z8 C" ]/ ?" Y
        if(IsMaster())* g& d  G; a$ Q) f7 r) y
        {
4 [6 m. h5 e+ [7 ?" g            int dwTmpSkLevel = 1;//60, 72, 84, 96, 108
( Y0 z; H9 c& Q. A            if( nLevel > 59 && nLevel < 72 )
# E: ?: ?( d# ^( A4 v. D. y                dwTmpSkLevel = 1;( P0 e. F8 `6 z8 u" V1 n# o
            else if( nLevel > 71 && nLevel < 84 )
7 r' M0 [8 h  d" ]" b                dwTmpSkLevel = 2;
$ o7 s) Y9 p$ e8 V7 ^% w0 k+ y            else if( nLevel > 83 && nLevel < 96 ): ?7 N. s6 p5 L) w. Y; W
                dwTmpSkLevel = 3;
3 [7 W4 t7 l- O8 Q2 [1 ]' c            else if( nLevel > 95 && nLevel < 108 )) A/ w0 a  k9 O( k, j: Q. r- l& C
                dwTmpSkLevel = 4;
2 i! t( K) c  i9 L  E            else if( nLevel > 107 && nLevel < 120 )8 O4 Y2 E+ W$ A& }
                dwTmpSkLevel = 5;
  ?( u6 w+ Q& ^# E            for( int i = 0; i < MAX_SKILL_JOB; i++ ) 4 l/ Q2 v1 z+ f
            {                ; g& i! V/ J6 f5 `+ x1 Z
                LPSKILL lpSkill = &(m_aJobSkill);- F' j, I( Z8 h: C# ?
                if( lpSkill && lpSkill->dwSkill != NULL_ID )) D2 [4 C) n, W! V, T( N9 A, ]
                {
) |9 l' F; ~) S1 b; ^# Y# ]                    ItemProp* pSkillProp    = prj.GetSkillProp( lpSkill->dwSkill );            
' `9 ?* }% a4 V                    if( pSkillProp == NULL )
: z1 f. b- O: Q" s) l1 P+ v9 \( i                        continue;
% P. x! B7 o. o8 s, K) W                    if( pSkillProp->dwItemKind1 != JTYPE_MASTER)4 o- R  }& j1 O* H
                        continue;3 r: _  G. j6 Z  C' Z4 Q/ T2 ~
                    lpSkill->dwLevel = dwTmpSkLevel;
$ @/ K( w9 E. {. A7 }1 w5 v                }) t0 h9 b* @& d; `# n5 ]7 a% ~
            }
, D+ B6 c* {: g. h: O        }
1 z6 Y$ U. N9 t7 y        else if(IsHero())5 p4 [6 Q$ v" a8 a9 a
        {
2 J8 f6 j+ x6 ^4 W: w0 m            for( int i = 0; i < MAX_SKILL_JOB; i++ ) 5 Q3 X; \! g+ D% d+ x/ W7 N
            {                ' M9 U! d" I; w; q4 J' r
                LPSKILL lpSkill = &(m_aJobSkill);8 _7 Q9 F& E" n4 a! p% I5 n. \4 V
                if( lpSkill && lpSkill->dwSkill != NULL_ID )
  N: k- y/ d1 _7 ], d2 Q2 O. A1 A5 e                {2 k+ {+ a/ E" l5 h& j/ a4 Q" U
                    ItemProp* pSkillProp    = prj.GetSkillProp( lpSkill->dwSkill );            % l8 r" v8 ?" s- |
                    if( pSkillProp == NULL )0 `5 z! w* I2 L8 q6 n& L# S# n
                        continue;, O6 ~9 m, W! }' q0 B: J1 y5 w9 r2 i
                    if( pSkillProp->dwItemKind1 != JTYPE_MASTER)
$ U% [% a5 M' ^8 Z% R) u4 ?$ D/ e                        continue;  p- i+ z* g% ^
                    lpSkill->dwLevel = 5;
. ~' {/ G/ v/ v+ M$ w5 ~                }
8 T+ }2 K! p0 @& H            }
" ~7 {! P" Q" M4 O        }5 v/ q; o0 ~0 e' `' w# d3 ~
        else if(IsLegendHero())# U2 Q1 @, [, M8 o$ F
        {+ H( t+ v! A( h* C
            for( int i = 0; i < MAX_SKILL_JOB; i++ )
( h3 J6 k- v" s- K            {               
. T* x& t/ ~* j/ }  }* _                LPSKILL lpSkill = &(m_aJobSkill);3 S9 [3 w* E8 s- e
                if( lpSkill && lpSkill->dwSkill != NULL_ID )
( f$ _% ~8 p. Z" a, i( n5 I1 Z                {/ U6 n0 v9 Y" G9 V1 _4 a
                    ItemProp* pSkillProp    = prj.GetSkillProp( lpSkill->dwSkill );            
4 U& _4 ]4 q- t                    if( pSkillProp == NULL )" V  ~: b7 n1 ~& @# G8 \6 [
                        continue;* i5 {: ]; }$ ^) k- U
                    if( pSkillProp->dwItemKind1 != JTYPE_MASTER)
) R4 I( f; [3 o. \. s) F2 Z                        continue;
8 B! R, c7 {7 Z( x- `                    lpSkill->dwLevel = 5;0 b9 T2 J; F. T$ X; b5 O
                }, p8 F: z1 E9 \4 q7 |0 k& a6 P
            }5 l9 E/ o9 {; k/ H' x
        }
4 |5 V. p. Y; y  ]' L2 L( J$ J#endif    //     __LEGEND    //    10?÷ àü?????o??    Neuz, World, Trans7 b. `8 }* H7 B3 a
        if( bGamma )" O; @; r) t+ y; E( H/ S( g' z+ Y/ T
        {
2 R+ g) n' F; Y4 t% D7 G            m_nExp1 = 0;
% B+ j8 I) A" U. V$ T        }% r0 ?2 D5 t) Z$ B2 V. C* H( `

! T) R) W7 k0 R" `+ D* ?/ z        ( (CUser*)this )->AddSetChangeJob( nJob );
, M% I0 `  e+ Z# v  c2 F1 V. C        g_UserMng.AddNearSetChangeJob( this, nJob, &((CUser*)this)->m_aJobSkill[MAX_JOB_SKILL] );9 O; k3 h. D  W1 ?, t1 D
  P% \2 p- I0 X# q. t

/ S& I4 g! S% s8 G8 h#if __VER >= 11 // __SYS_PLAYER_DATA
4 X  ]  ], f' t3 a, n3 @7 {9 Y% E8 r+ \        g_dpDBClient.SendUpdatePlayerData( (CUser*)this );' r. Q$ N4 o% F: i7 G/ k9 S
#else    // __SYS_PLAYER_DATA
0 Q7 `/ M  j7 L# L        g_DPCoreClient.SendPartyMemberJob( (CUser*)this );
% [/ y1 o6 N8 S( ]$ o/ L8 \3 M        g_DPCoreClient.SendFriendChangeJob( (CUser*)this );
8 f+ E" f- N5 b6 `% t6 X# ]2 `& \        if( m_idGuild != 0 )# H$ D. |/ a8 p! Q0 Z* Q% \
            g_DPCoreClient.SendGuildChangeJobLevel( (CUser*)this );
3 H; F6 z* b; K. [8 X* _0 c" R+ D#endif    // __SYS_PLAYER_DATA) \0 V0 d& i6 r( L2 x8 h( [! z/ V4 C
        SetHitPoint( GetMaxHitPoint() );' M1 U: _3 a8 p# A4 l' d
        SetManaPoint( GetMaxManaPoint() );
% l( `; m& Y1 T# P1 E8 G2 Y7 Q* H5 A        SetFatiguePoint( GetMaxFatiguePoint() );) b9 s8 P5 L$ K7 e' I
        if( nJob >= 1 && nJob <= 4 )9 C6 E; {( e$ }  Z' Q) H
        {
% k: T0 a' J7 W" R! Z' O/ w            m_nStr = m_nSta = m_nDex = m_nInt = 15;  b) g0 D7 B  |! S8 Q5 ?0 j
            m_nRemainGP = 28;
5 C. j% X& G$ s: s        }
2 B" Z& {1 p! Z* S        if( nJob >= MAX_PROFESSIONAL && nJob < MAX_MASTER )/ j4 s$ q4 K, c% H  B; H# H
        {
" I" j6 @* G' J  O  V            m_nRemainGP = 118;' [$ u9 x/ D( X6 D0 g: a$ R
            //m_nRemainGP = ( m_nSta - 15 ) + ( m_nStr - 15 ) + ( m_nDex - 15 ) + ( m_nInt - 15 ) + m_nRemainGP;( q" V# l4 b; U/ D  l7 m
            m_nStr = m_nSta = m_nDex = m_nInt = 15;* s8 E) L% e2 q! o
        }
! t8 w# Y6 }% N1 {  z        if( nJob == JOB_MENTALIST_HERO || nJob == JOB_FORCEMASTER_HERO )
2 k8 r. Q2 A/ M9 ]7 ^' M" D        {5 E1 V. c% l4 ^% j
            CItemElem itemelem;
3 ]& j2 m4 [5 [/ [: F' Z            itemelem.m_nItemNum = 1;5 V( d) h8 J" l. q( u
            itemelem.m_bCharged = TRUE;) f7 s  O$ n2 E5 H1 O/ f- u# w
            BYTE nID;  v' ~4 ?: w0 I6 t8 d5 |
, i4 L  B6 i! e$ @
            if( nJob == JOB_MENTALIST_HERO )
/ j; g% a0 O' t                itemelem.m_dwItemId = II_WEA_BOOK_BOKROMAIN;
+ {$ x( q1 Q7 f0 `3 Q6 f4 g            if( nJob == JOB_FORCEMASTER_HERO )9 ]( a' V( I7 ]5 n( E
                itemelem.m_dwItemId = II_ARM_ARM_SHI_ZEMBATO;
9 Q3 G# F8 A( V) E- p/ ]* B8 b
1 n' s9 l6 J2 ~4 ?% L2 I+ z            ( ( CUser*)this)->CreateItem( &itemelem, &nID );
0 ^% R& w4 e& @) o        }
( L" e0 B1 v: t5 w7 J  t        g_UserMng.AddSetLevel( this, (WORD)m_nLevel );$ q% d, K  x$ q' n- i6 o% G" ~) ?
        ( (CUser*)this )->AddSetGrowthLearningPoint( m_nRemainGP );' M3 Z" \8 a4 R9 v, d; f
        ( (CUser*)this )->AddSetExperience( GetExp1(), (WORD)m_nLevel, m_nSkillPoint, m_nSkillLevel );& @/ f9 d, W) L( \) e: w
        /*( (CUser*)this )->m_playTaskBar.InitTaskBarShorcutKind( SHORTCUT_SKILL );
6 J* \; |& f0 O; t        ( (CUser*)this )->AddTaskBar();*/
. ]1 G+ }% T8 P. @0 S5 v        ( (CUser*)this )->AddSetState( m_nStr, m_nSta, m_nDex, m_nInt, m_nRemainGP );
0 @  F4 O/ `) S, D7 l: p#if __VER >= 13 // __HONORABLE_TITLE            // ′Tà?
+ C$ {, r2 v: G' V5 L$ [+ f        ((CUser*)this)->CheckHonorStat();
8 D) ~  d: V8 @# l; M; i. c        ((CUser*)this)->AddHonorListAck();" Q5 X- a; m$ q6 x# s2 Z# p
        g_UserMng.AddHonorTitleChange( this, m_nHonor);0 t3 M9 S- S9 Y1 ^# @; ~
#endif    // __HONORABLE_TITLE            // ′Tà?
% V) T* o" R* L- a* a" ^$ `    }
9 i% j- T" Z7 k, Z#endif // __WORLDSERVER- Q' x, `, l3 L( o0 x
}  
/ F0 K  R0 E& @% Q/ @
* |" J% q: W8 e+ I然后你进入functextcmd.cpp并添加以下: T3 S. W- Y% E7 `6 [- E* _1 Q

& v5 M8 l3 P6 J; |+ W7 C9 e* [代码:
4 m/ K2 m- S7 OON_TEXTCMDFUNC( TextCmd_say,                   "say",               "say",            "??",             "??",      TCM_SERVER, AUTH_GENERAL      , "?ó?èàó [/?í·é ??àìμe 3???]" )4 P" I3 T! V: Y' {+ G- V
下面插入3 k* A$ @) \6 m3 X
ON_TEXTCMDFUNC( TextCmd_rebirth,              "rebirth",          "rebirth",             "?ú·1?÷??",       "?ú·1",    TCM_SERVER, AUTH_GENERAL   , "?ú·1?÷??" )  0 I* Q" ]' c7 ]

& x) o: k+ F3 K$ V1 o然后你去9 {; M; _, y- H- i5 }
. w6 }$ {: @6 J0 V# T# U
代码:
; l$ P6 L" [, Z; q: {" d6 r) z0 I代码' q! [! T% f/ F
BOOL TextCmd_ClearPropose( CScanner & s )
" D! `; ]0 c- L{
$ d' f! U0 P% g#ifdef __WORLDSERVER4 ~( t7 s  L% A6 o. |' f& c
    CUser* pUser    = (CUser*)s.dwValue;: o+ @' s/ ?- x" P& V
    g_dpDBClient.SendClearPropose();
+ U5 e' u- j: d' G( w#endif    // __WORLDSERVER
* `) p4 Z- J2 O/ s/ M6 H9 M6 P4 a    return TRUE;
6 ^8 {, q4 N, i" ?  ?1 U* D* {}# t8 n! o, D) W1 t
下面插入( q6 ?3 k' }9 Q) |2 ]" g7 f& z
BOOL TextCmd_rebirth( CScanner& scanner )5 x% X3 H- S4 B8 G% H; X0 Z4 I. v
{
& F% o+ V" U- I#ifdef __WORLDSERVER: ?* n; y4 y+ Q/ \, c+ ]; B2 c
CUser *pUser;
9 J, R0 I4 {4 b+ ~pUser = (CUser*)scanner.dwValue;2 s7 ~( Z# H1 |5 q  n+ C( x# D% P
if(pUser->m_nLevel >= 150 && pUser->IsLegendHero())
  U$ n4 X6 k! I; A4 S( upUser->InitLevelPumbaaa( pUser->m_nJob-16,60);( J# z2 \- Y- ^0 n0 i. l/ b: j
else
, W" h* G+ O( K* I6 D. h1 KpUser->AddText("你还未达到重生条件!");6 W( ]5 m) d4 T9 D% P2 j
#endif; I1 @! _7 d  }6 d" Q
return TRUE;
. i0 d& q9 G- Z/ c# n5 A$ E" q}  
* q) r6 e- }! Q8 H
. T) S0 a) E4 Q" n6 Q& p' ~
, H, X6 ]( Z3 t7 {" E3 J
7 d, [' A# Z6 o% w, w9 b' o
) _& T3 r/ z" S1 W
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-12-5 09:03 , Processed in 0.061985 second(s), 22 queries , Gzip On.

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

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