飞飞世界论坛

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

通过命令重生

[复制链接]

197

主题

203

帖子

1088

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
1088
QQ
跳转到指定楼层
楼主
发表于 2016-1-10 03:42:30 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
至于V15和源文件发布重生不再使用通过HP它不再去我会告诉你如何可以通过与它聊天源befehel
+ F9 J9 A9 ~0 O: l4 ]5 |2 @8 s+ |' Q# ^) O! \0 n7 \
Mover.h; e( p, _8 u% U( x  I. |
代码:2 H3 c- H$ g9 V- y
找到: void            InitLevel( int nJob, LONG nLevel, BOOL bGamma = TRUE );            // °′???| nLevel·? 1ù2?áü
: L  b" f' ?, M3 O) ~; e) y1 y2 B& A  t2 d; }4 |
下面插入: void            InitLevelPumbaaa( int nJob, LONG nLevel, BOOL bGamma = TRUE ) ;  + I  R0 {/ v5 Y5 f
( ^$ G4 h( s5 a
然后你去mover.cpp添加: w) W7 k" M( ^: q% P

; Y( O, O' S# J$ V5 J代码:
; J! G$ e8 ?1 Z- Q6 E8 Kvoid CMover::InitLevelPumbaaa( int nJob, LONG nLevel, BOOL bGamma )
& f# b. @, h4 x$ Y7 b$ X0 q$ i{
  _2 k9 ~; y" s8 A# i6 r#ifdef __WORLDSERVER, t8 f8 ?/ m0 m" b8 p& B: B% J, m5 J
    // ???μàú ?í·éà?·? ·1o§?÷ ??′?°÷àó6 [# O) S  A+ p1 z
    MoverProp* pProp = GetProp();6 D2 K! s6 j+ B8 r, O+ e
    if( pProp ), q" N4 [( |" e
    {; h3 ?' z0 {. ^4 {8 k# I& n- U) ~% w
        if( nJob > 0 && nJob < MAX_LEGEND_HERO )
: x' i- O% ?' O# u        {
; K5 y& D- A/ w            AddChangeJob( nJob );! @% h+ [1 l; q  h
        }else{
4 g" I3 j# a3 L- d8 U2 y            return;5 j4 D' [, z, i* n* x
        }4 t: y9 s7 I! r# i
        int nPoint = 0;
( P* O; Y+ B& |2 e6 T3 C  E        if( m_nJob == JOB_MERCENARY )  j- I. S1 y7 ~1 {) w( b3 |. B
            nPoint += 40;* n4 G/ H6 r0 I! f' ]
        else if( m_nJob == JOB_ACROBAT )
1 z# a# k, A- l% Z            nPoint += 50;
9 L2 I+ g( e: n$ d% J& {+ A        else if( m_nJob == JOB_ASSIST )) r; y0 e* m/ a, b3 v% D, D5 \, R
            nPoint += 60;9 ^, U  A+ S0 |9 M( C: M
        else if( m_nJob == JOB_MAGICIAN )/ V8 ]0 F" [  ]8 B; Q2 ]' p
            nPoint += 90;
9 K( W" `' j9 c+ o8 V        else if( m_nJob ==  JOB_KNIGHT || m_nJob ==  JOB_BLADE )
6 s, T+ Q: l( ~' L            nPoint += 120;
/ H* a+ `9 J; y- i# P        else if( m_nJob ==  JOB_JESTER || m_nJob ==  JOB_RANGER )
6 Y, j3 q+ }, z; m+ ^/ \1 B            nPoint += 150;! {" @( y' c) Z$ w; _
        else if( m_nJob ==  JOB_RINGMASTER )
1 }8 J- Y! F5 V9 Y: N+ ]$ R! e9 B            nPoint += 160;$ \7 `7 H0 X$ J5 ]; p  b& S
        else if( m_nJob ==  JOB_BILLPOSTER || m_nJob ==  JOB_PSYCHIKEEPER )
. Y0 M! `# k2 m( t! J* ?& y            nPoint += 180;/ ]7 S1 z" z2 c7 [4 j
        else if( m_nJob ==  JOB_ELEMENTOR )
2 \& n, M2 I) z6 e( w            nPoint += 390;5 x9 x1 p" U6 {* Y& x, X: E5 _$ |
        else if( nJob ==  JOB_LORDTEMPLER_HERO || nJob ==  JOB_STORMBLADE_HERO )  A9 h3 J" J- V' y- U2 }3 H+ k, U
            nPoint += 120;
! _$ h. b; @& v        else if( nJob ==  JOB_WINDLURKER_HERO || nJob ==  JOB_CRACKSHOOTER_HERO )3 ?" G4 M# Y: t0 D
            nPoint += 150;2 G0 D; q3 x  \- v# ?$ V3 D# R
        else if( nJob ==  JOB_FLORIST_HERO )
( z; V8 V" G7 t9 f# {            nPoint += 160;
# b+ ~$ c+ h( p) T: v2 I        else if( nJob ==  JOB_FORCEMASTER_HERO || nJob ==  JOB_MENTALIST_HERO )4 K. T3 z7 X+ I. ?- O
            nPoint += 180;& r/ X. L, Q: n" Y! o
        else if( nJob ==  JOB_ELEMENTORLORD_HERO )$ i! |8 v& u- ?+ Y# P& v/ n6 _
            nPoint += 390;! ]4 N4 w$ L7 x- ~( D# b/ }; ]
' e6 s0 I! E6 r
        AddSkillPoint( nPoint );5 J4 }/ O$ @/ u. u8 F8 p6 j& m5 y
        m_nLevel = nLevel;
1 D; c& a$ R& V
/ G. s) R$ b! [- y/ V( V8 t  C0 E0 _' t        SetJobLevel( nLevel, nJob );/ l  E& G! m& r" Q  t; }; q( |* s
        m_nDeathLevel = nLevel;
: D) r: _& `" V4 p0 p8 L#if __VER >= 10 // __LEGEND    //    10?÷ àü?????o??    Neuz, World, Trans
; u8 B3 L8 V2 B3 R$ U6 j6 q) I        if(IsMaster())
: v0 e" N6 @: Z. U* B$ x1 s) z        {
1 X0 T/ F& f/ C7 B            int dwTmpSkLevel = 1;//60, 72, 84, 96, 108( g( |& I9 O) ^  g" z
            if( nLevel > 59 && nLevel < 72 )
- ~6 @  c4 f) r8 G! u9 B2 p! N                dwTmpSkLevel = 1;' c1 b* x9 H7 r
            else if( nLevel > 71 && nLevel < 84 )
3 E. Y/ k& J8 t6 n$ B                dwTmpSkLevel = 2;
; F$ X; B" l$ K6 \- z            else if( nLevel > 83 && nLevel < 96 )9 z$ ?! T  N- u# o' J6 c
                dwTmpSkLevel = 3;
: _* L; z- |/ G            else if( nLevel > 95 && nLevel < 108 )
  `8 h6 M) B( l. ^) w. V                dwTmpSkLevel = 4;
. g) l5 V: C) Y; W1 y+ m            else if( nLevel > 107 && nLevel < 120 )
) f4 B7 a  k3 A7 `                dwTmpSkLevel = 5;
* ?0 L0 [% B8 a" x1 x8 }  b$ d            for( int i = 0; i < MAX_SKILL_JOB; i++ )
) v8 u! \  X+ V, s            {                / c. p* ]6 C" A8 X
                LPSKILL lpSkill = &(m_aJobSkill);" y4 B5 `6 L- E. H/ i0 K
                if( lpSkill && lpSkill->dwSkill != NULL_ID )
0 c$ i& g+ L4 g  p! N                {7 K  e4 J' \  G4 Y4 l
                    ItemProp* pSkillProp    = prj.GetSkillProp( lpSkill->dwSkill );            4 s! z. p# X3 S7 `. E" Y4 ^; y
                    if( pSkillProp == NULL )$ ]9 u* h# P5 b3 v) g
                        continue;) [* ?* G0 R3 x: q, u/ p
                    if( pSkillProp->dwItemKind1 != JTYPE_MASTER)% n9 I0 P5 ]8 H- d7 Y& ^) G
                        continue;6 n% f1 {+ {: W3 R, K" B' N
                    lpSkill->dwLevel = dwTmpSkLevel;3 O  U' L6 W9 O" ~2 g; O3 y. Z( i
                }
/ {; a4 P; m/ B, l) f; C$ c            }
$ d/ Z: w! ?8 C6 O5 L, Q$ _        }: m, W& k8 _' y" _9 V' e2 T
        else if(IsHero())
  s3 f: }; _0 ~; h        {
' I3 r* K0 m- T9 o& ^            for( int i = 0; i < MAX_SKILL_JOB; i++ )
7 k" N" H/ |4 G2 s' F            {               
  J1 f: h* f8 e0 D' Y6 q+ l8 q$ z                LPSKILL lpSkill = &(m_aJobSkill);
" Z7 [5 o" t( s# v" J                if( lpSkill && lpSkill->dwSkill != NULL_ID )
+ \6 K# I% C. Q4 _  O                {
2 |/ p6 `2 L; ~                    ItemProp* pSkillProp    = prj.GetSkillProp( lpSkill->dwSkill );            3 R0 f1 B8 |9 g) e! R5 |
                    if( pSkillProp == NULL )
+ L) r& m/ m/ r, {, v" |                        continue;# L% o* g* `& Q2 S/ y
                    if( pSkillProp->dwItemKind1 != JTYPE_MASTER)& X, e/ K5 f/ x' K. \" {% A# @
                        continue;
* ?8 u- Q0 [& x4 P1 w9 ]/ D" ]                    lpSkill->dwLevel = 5;
& _% l$ x' i. E8 Q8 V                }  M5 D4 x7 W5 R$ o& u) [: ]$ d  z
            }' A" K. n) D' e5 N) Q1 t$ e( d
        }8 @- I7 q: N9 A# u) j9 o3 b
        else if(IsLegendHero())$ ]* c; d% o5 @: }
        {- z) f9 ?9 z: |6 J4 d# g- `
            for( int i = 0; i < MAX_SKILL_JOB; i++ ) 3 |3 e+ o" D& u6 L" C) ^4 F9 O
            {               
% C+ {) s! }' G7 A1 ~$ e6 E                LPSKILL lpSkill = &(m_aJobSkill);
0 u/ h$ D4 {) v0 K                if( lpSkill && lpSkill->dwSkill != NULL_ID )9 j2 R- c2 r8 x9 g
                {% S& {' R5 D+ h, s
                    ItemProp* pSkillProp    = prj.GetSkillProp( lpSkill->dwSkill );            
) J3 [: A9 D. O. O) l                    if( pSkillProp == NULL )
) l/ r7 h: d. D7 j                        continue;
( a$ d% V  x" r# k                    if( pSkillProp->dwItemKind1 != JTYPE_MASTER)
, V; @  G+ ^3 M9 a% P: T                        continue;
- F! A, E$ w. d' Y- Q                    lpSkill->dwLevel = 5;/ i0 H/ R' C0 q# E
                }
- z; ^( L, D% D8 E# f+ z7 L            }5 @, p7 `9 W- Y  B# [
        }$ n8 H7 M; V! [5 v, _  N
#endif    //     __LEGEND    //    10?÷ àü?????o??    Neuz, World, Trans
$ ^) `; k- I( {        if( bGamma )
2 N* j/ R6 ?3 E, ?6 Q6 }( r/ R3 Q# l+ Z        {4 d/ J& r* q6 p8 r" |5 x; t1 m) M- d5 t
            m_nExp1 = 0;
: F# w9 ]( k' ?# X' B5 Y# c        }1 t1 \( z" L* I' G
8 O# {; ~1 n/ Q- j* i, }6 B
        ( (CUser*)this )->AddSetChangeJob( nJob );
" o& ]8 X& R9 U7 N6 Y8 x  I        g_UserMng.AddNearSetChangeJob( this, nJob, &((CUser*)this)->m_aJobSkill[MAX_JOB_SKILL] );
* b; e" P: v% c
8 N$ G4 Q$ C1 z! U) m2 [8 H# j
5 [0 S- u' E+ U9 E#if __VER >= 11 // __SYS_PLAYER_DATA
8 N: N1 b1 x0 Q% M* m        g_dpDBClient.SendUpdatePlayerData( (CUser*)this );
8 |3 d2 K6 o: j" O' m#else    // __SYS_PLAYER_DATA
1 x7 _0 W6 U% a7 K5 L! E        g_DPCoreClient.SendPartyMemberJob( (CUser*)this );1 T# k0 v( U% a5 [2 n! G1 H( o
        g_DPCoreClient.SendFriendChangeJob( (CUser*)this );
# l+ H0 ~3 Q5 t* u; ]9 a        if( m_idGuild != 0 )  t9 U6 K" o+ t. J: {5 `7 k
            g_DPCoreClient.SendGuildChangeJobLevel( (CUser*)this );
) o0 z' u7 }* S7 B1 y#endif    // __SYS_PLAYER_DATA) [3 W: d3 L' m' y: z- \% f
        SetHitPoint( GetMaxHitPoint() );! \8 P: t1 m* |) X1 w4 n
        SetManaPoint( GetMaxManaPoint() );7 c8 A2 q5 ]% h  |& f4 U2 i& I
        SetFatiguePoint( GetMaxFatiguePoint() );; p" }8 l# v( q. z  Z# y
        if( nJob >= 1 && nJob <= 4 )
9 I) K4 Q$ f  F( Z# l+ N        {
: y4 \8 g2 v  J) W+ L            m_nStr = m_nSta = m_nDex = m_nInt = 15;3 H2 ~- {4 w* T) F6 x/ u
            m_nRemainGP = 28;
3 Z' c, q$ {+ V. \        }+ n" h- O6 I+ x( H
        if( nJob >= MAX_PROFESSIONAL && nJob < MAX_MASTER )0 K+ W( n5 b6 }6 n# j  u
        {3 H  d. w1 A# k# @0 c
            m_nRemainGP = 118;
# x. N# J; R2 x+ S$ \- {            //m_nRemainGP = ( m_nSta - 15 ) + ( m_nStr - 15 ) + ( m_nDex - 15 ) + ( m_nInt - 15 ) + m_nRemainGP;) w2 f5 U: n2 p' t2 }/ Z4 c
            m_nStr = m_nSta = m_nDex = m_nInt = 15;# M8 L7 W6 S! E' I4 H4 @
        }
$ n% Y; G5 V3 i/ n9 E        if( nJob == JOB_MENTALIST_HERO || nJob == JOB_FORCEMASTER_HERO )
. u' x0 e+ o" n4 P        {' H+ J# Y! w  Q: S7 H* `
            CItemElem itemelem;
0 f7 K, F; c0 E  T; \" z6 P            itemelem.m_nItemNum = 1;
& A6 R7 U( B3 m: y: t            itemelem.m_bCharged = TRUE;
8 P6 [2 \# C: F0 z+ E% Y5 ~            BYTE nID;5 E0 m7 g4 I; \$ A1 Q- h

- y: ^0 V% p9 g            if( nJob == JOB_MENTALIST_HERO )8 Q7 S! l- K/ @$ n% I4 f" x, [" r+ B
                itemelem.m_dwItemId = II_WEA_BOOK_BOKROMAIN;
4 o3 h, _3 a2 B  L            if( nJob == JOB_FORCEMASTER_HERO )0 [5 K, N! y1 A6 u$ ]
                itemelem.m_dwItemId = II_ARM_ARM_SHI_ZEMBATO;2 E+ b9 M; M' m* J1 A

7 W: g/ ?' C# f/ J1 w* C5 a& B            ( ( CUser*)this)->CreateItem( &itemelem, &nID );
# C4 B( `/ E6 x. W) l8 b( P( o: F        }4 `# O" L" t  V
        g_UserMng.AddSetLevel( this, (WORD)m_nLevel );* M( g/ R3 {' E' o' a- c
        ( (CUser*)this )->AddSetGrowthLearningPoint( m_nRemainGP );8 F7 q0 k3 o* F- h6 \3 w5 v
        ( (CUser*)this )->AddSetExperience( GetExp1(), (WORD)m_nLevel, m_nSkillPoint, m_nSkillLevel );$ d$ O. o" L% N3 @9 v! w) _$ m
        /*( (CUser*)this )->m_playTaskBar.InitTaskBarShorcutKind( SHORTCUT_SKILL );
; D/ b' d7 [) J  O        ( (CUser*)this )->AddTaskBar();*/
* z+ L8 A. E  g! f2 T9 D* x        ( (CUser*)this )->AddSetState( m_nStr, m_nSta, m_nDex, m_nInt, m_nRemainGP );1 B9 `( v; b/ c1 q4 @
#if __VER >= 13 // __HONORABLE_TITLE            // ′Tà?$ n2 q) C2 J" Z8 W) d
        ((CUser*)this)->CheckHonorStat();
2 S- _! P0 X& C$ Y        ((CUser*)this)->AddHonorListAck();
0 v  z; [, W  r  v1 H        g_UserMng.AddHonorTitleChange( this, m_nHonor);
3 n, n: Q% Z; _" b" w7 s; P% }#endif    // __HONORABLE_TITLE            // ′Tà?
; d3 S# |0 d$ ]3 U2 l( }% i4 y    }
, W3 O3 U/ U$ [) Q2 @#endif // __WORLDSERVER- v6 p9 E& L( f7 T- U  s, f; M
}  ; f, N: Y. k  ~5 e+ G8 r; q
: ~  X; h) d* Q2 D! M6 I6 g
然后你进入functextcmd.cpp并添加以下0 F* B; N! R1 U. d2 f. ~( Q& F

/ L. s9 d% u8 _. i. n' P; O代码:/ ^8 D* m  e: ~
ON_TEXTCMDFUNC( TextCmd_say,                   "say",               "say",            "??",             "??",      TCM_SERVER, AUTH_GENERAL      , "?ó?èàó [/?í·é ??àìμe 3???]" )
: _0 {9 X0 g+ A5 {下面插入+ u6 Q! r7 z0 y  R; k0 F
ON_TEXTCMDFUNC( TextCmd_rebirth,              "rebirth",          "rebirth",             "?ú·1?÷??",       "?ú·1",    TCM_SERVER, AUTH_GENERAL   , "?ú·1?÷??" )  
5 l/ ^6 e: ]- F3 S4 T' w
* x% l4 b" c8 O* K然后你去
/ ?0 C# f0 R4 o  P) d) R7 B3 {) n' J, I! W- A; ?/ Q
代码:/ Y1 T3 A3 Z" ?8 Q4 [( R
代码! G; E! G5 u3 J' e
BOOL TextCmd_ClearPropose( CScanner & s )
) y: x7 K# j; g) u{& z/ w+ N/ `- y4 u
#ifdef __WORLDSERVER
& h/ [: P8 ]9 |    CUser* pUser    = (CUser*)s.dwValue;& H& M' g' V- P5 h  B" T, ^  d
    g_dpDBClient.SendClearPropose();
( b* W% W/ x! Z' x. [0 H#endif    // __WORLDSERVER: V$ L: Q6 X  U# X$ \) u
    return TRUE;
) Y: W9 d5 X  I: [7 w. M/ [}
8 K/ r- _! Q, ]# M8 d/ d8 u下面插入3 p5 F* Y& i, q2 b2 l9 b+ u% I
BOOL TextCmd_rebirth( CScanner& scanner )0 [2 u; X' N" v/ L
{
2 i( b. x- Z" M& j. ^3 s% C  ~#ifdef __WORLDSERVER
/ ?$ F( Y& E  }CUser *pUser;
- x% h( \6 W2 l" spUser = (CUser*)scanner.dwValue;. Q$ I1 r. O$ ]6 V$ ]6 {5 q" J8 |% M/ a
if(pUser->m_nLevel >= 150 && pUser->IsLegendHero())
/ b  A; w: E( S' T* U! o* TpUser->InitLevelPumbaaa( pUser->m_nJob-16,60);
% D$ q7 z0 e) h1 f* A, P2 selse# n9 C7 @6 f* O" g, C  V
pUser->AddText("你还未达到重生条件!");
. f, T7 L- K0 Z5 ]/ L#endif
5 S! U+ e/ B+ J1 B( ~return TRUE;
" ]- d% u/ s4 T* P}  2 H/ q/ v" P) y; H8 }$ u4 ]
& a7 Q1 {4 u# g# [8 j2 v& q
5 ^+ Z/ ?. v. g1 H

, Q2 `  t( {7 Y) P& s7 P# H
, i7 Q, X. O7 J
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2026-1-23 22:34 , Processed in 0.064965 second(s), 23 queries , Gzip On.

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

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