飞飞世界论坛

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

通过命令重生

[复制链接]

197

主题

203

帖子

1086

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
1086
QQ
跳转到指定楼层
楼主
发表于 2016-1-10 03:42:30 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
至于V15和源文件发布重生不再使用通过HP它不再去我会告诉你如何可以通过与它聊天源befehel9 l  l% }3 G. K2 J; t% \1 H

+ q" V# O3 [. H" w( AMover.h/ ]) q# |, q0 J6 `& n
代码:5 u/ ~8 o  X2 _3 H6 |0 \  u  u/ o' D
找到: void            InitLevel( int nJob, LONG nLevel, BOOL bGamma = TRUE );            // °′???| nLevel·? 1ù2?áü
: z( N: Y& g$ N: G  [7 L. h
0 T" ~% V6 _  z5 k: ]9 H下面插入: void            InitLevelPumbaaa( int nJob, LONG nLevel, BOOL bGamma = TRUE ) ;  - R' G' @4 D9 U- o( m' w4 ~; q
' e% x% k3 @/ b' a4 O, z2 {! m
然后你去mover.cpp添加
: P3 y  q9 x0 }6 a
5 ]- C" A4 P7 c: u& V代码:
$ b" K' z0 ?! ?9 ?) i0 ^void CMover::InitLevelPumbaaa( int nJob, LONG nLevel, BOOL bGamma )
9 ~" M2 Z9 H% b1 U& m% K{* D8 F  Y& ^- C2 |
#ifdef __WORLDSERVER0 o6 ?+ i- w0 H8 P/ G6 N; E* C6 |
    // ???μàú ?í·éà?·? ·1o§?÷ ??′?°÷àó
" b/ |4 R+ \5 j    MoverProp* pProp = GetProp();3 Q4 K6 ?2 `3 z6 v) ^2 G
    if( pProp )
* K8 v7 M/ t) S3 a; J1 b5 x    {# J$ j1 e, I4 y9 E+ ^0 W' v- B" V
        if( nJob > 0 && nJob < MAX_LEGEND_HERO )
7 P. e, h; e# q! C        {- g: u3 b' z9 f" K
            AddChangeJob( nJob );1 ^, A$ _. {( ?3 K2 j
        }else{
$ q# X8 N, h9 d( z4 I            return;
& @: J4 [$ E( O* o$ N        }1 [4 p) E& w% Z& l8 ^9 Q
        int nPoint = 0;
  m, s: w; v! f        if( m_nJob == JOB_MERCENARY ), D; r7 K5 D/ B- b' x  @3 U2 m" W# B$ W! p
            nPoint += 40;
4 C5 _! O# t, D8 U        else if( m_nJob == JOB_ACROBAT )
8 f# c9 y# P& w1 Q3 h' y. W            nPoint += 50;2 p0 D3 n2 i8 T  W
        else if( m_nJob == JOB_ASSIST )* c. v1 O6 Y; A! H, R1 P- u
            nPoint += 60;
: W: h4 @" N" R        else if( m_nJob == JOB_MAGICIAN )$ J- b3 d3 j, e9 Q* u
            nPoint += 90;
; \6 o' A4 N4 l3 A+ i; e+ P        else if( m_nJob ==  JOB_KNIGHT || m_nJob ==  JOB_BLADE )
* B- c0 f" z. d% T  J+ G            nPoint += 120;2 I. }( U( {: Y' c/ [
        else if( m_nJob ==  JOB_JESTER || m_nJob ==  JOB_RANGER )
9 o. ]- R1 y# X& z! V            nPoint += 150;* a9 R6 o% h- x- j7 Y
        else if( m_nJob ==  JOB_RINGMASTER )
' w+ s$ t: l0 f4 E5 |% p            nPoint += 160;
4 B6 C* B9 t6 x% ^        else if( m_nJob ==  JOB_BILLPOSTER || m_nJob ==  JOB_PSYCHIKEEPER )) y8 U* Q/ Z5 R2 v9 p/ E/ {0 ]! a
            nPoint += 180;
, b7 B4 S* e7 }& b( l4 `; {; [: l        else if( m_nJob ==  JOB_ELEMENTOR )$ z" H1 z3 T) b3 D+ m/ W6 G
            nPoint += 390;
' Z1 z( g" Y: ?+ V        else if( nJob ==  JOB_LORDTEMPLER_HERO || nJob ==  JOB_STORMBLADE_HERO )
: M+ D3 U+ }8 k# h6 j            nPoint += 120;# A) X$ q$ l- S2 c
        else if( nJob ==  JOB_WINDLURKER_HERO || nJob ==  JOB_CRACKSHOOTER_HERO )
& X- _3 ]5 q' X            nPoint += 150;
5 H# K- m/ r8 m+ x, I4 G- Y9 C+ M        else if( nJob ==  JOB_FLORIST_HERO )- L& ]/ T- q& I0 ~
            nPoint += 160;
1 o( ?7 P- v. V4 }# m. A% `        else if( nJob ==  JOB_FORCEMASTER_HERO || nJob ==  JOB_MENTALIST_HERO )
7 Q+ o: [0 f; M  |* M* T! Z1 ^$ N            nPoint += 180;
# I5 [4 b! p* M8 F/ r2 j; m8 `        else if( nJob ==  JOB_ELEMENTORLORD_HERO )4 c& U. s/ p7 F2 C/ h7 ^
            nPoint += 390;
. l: c$ h$ f  J; T/ ^4 ]
# C/ V: E6 S3 S# {" H1 Z6 {        AddSkillPoint( nPoint );: x* {1 A* O1 b2 f! q& [
        m_nLevel = nLevel;
4 x! G2 F2 [' @6 y2 `4 d4 ^) i- C  W' c5 c; P+ Q- y% A7 X5 D
        SetJobLevel( nLevel, nJob );
( _  s+ V4 E0 i. z  H2 C( Q2 X        m_nDeathLevel = nLevel;
4 X$ v, ~( v; S. J7 [' m: Z' i+ G#if __VER >= 10 // __LEGEND    //    10?÷ àü?????o??    Neuz, World, Trans  f0 t6 A" a' R) Q4 \/ X
        if(IsMaster())
, `  \: b8 g. u: z3 d1 K: M4 Y        {
+ s. }5 Y8 F* Y            int dwTmpSkLevel = 1;//60, 72, 84, 96, 108
) @1 v; ^7 f% L- R            if( nLevel > 59 && nLevel < 72 )# ^) `2 V8 t5 r4 ?
                dwTmpSkLevel = 1;
' q( F2 \9 N/ b- t( ^( |( A, i            else if( nLevel > 71 && nLevel < 84 )5 j8 J' B, @, Z( X! _9 v
                dwTmpSkLevel = 2;4 \7 L% E; H! M( z, B  }( I
            else if( nLevel > 83 && nLevel < 96 ). @; b0 Q5 V1 L2 h4 V
                dwTmpSkLevel = 3;# z: q0 g$ R; z7 o3 M9 C1 o* W
            else if( nLevel > 95 && nLevel < 108 )! [9 B7 o. L5 v% [& I
                dwTmpSkLevel = 4;* S0 Z$ q6 {) J% f  I7 U
            else if( nLevel > 107 && nLevel < 120 )
# g, G2 {* t+ y' {6 j2 d                dwTmpSkLevel = 5;
5 Y: g$ l- U5 b+ Q. ?            for( int i = 0; i < MAX_SKILL_JOB; i++ )
' e' @6 P, S  s7 z" K* b            {               
( ~" W0 u/ ~6 C7 b4 s! b# Q  n                LPSKILL lpSkill = &(m_aJobSkill);
3 q# N2 R% i7 s" e& L                if( lpSkill && lpSkill->dwSkill != NULL_ID )
3 P4 T7 z7 Z& g! J; d# x                {
7 l$ a( a5 f9 f3 S/ D1 `) i                    ItemProp* pSkillProp    = prj.GetSkillProp( lpSkill->dwSkill );            
4 Q! e& \7 o% K                    if( pSkillProp == NULL )2 s, k* A. d& K& Y' W; a
                        continue;
/ ]! u+ w7 |, h; c: i. r5 [                    if( pSkillProp->dwItemKind1 != JTYPE_MASTER)
  B5 E" K2 P- F* j5 ^: n2 A                        continue;
) V, k3 A7 I+ o1 T) s                    lpSkill->dwLevel = dwTmpSkLevel;
" \7 T* h6 s0 s, G4 x* T7 z  U                }) N. u9 b# l/ q' W, U
            }& {( p) U$ o, m8 e$ X8 x+ m' X' i
        }
# P+ r3 e+ V. i  j4 a        else if(IsHero())7 k% l, X8 k" O' u8 `( R. x  o4 j" V. K
        {
8 H# v) h. R: E7 F2 u/ O            for( int i = 0; i < MAX_SKILL_JOB; i++ ) % W. {) q% o5 [' C; z
            {               
: V6 M# X! w2 `4 C8 v) ]" x6 u                LPSKILL lpSkill = &(m_aJobSkill);7 D9 m, b- P6 U! f* Q3 P9 x) W1 M
                if( lpSkill && lpSkill->dwSkill != NULL_ID )
! I: a2 O$ n- }( _* d                {* o1 {2 ^! A- B2 f' _1 B
                    ItemProp* pSkillProp    = prj.GetSkillProp( lpSkill->dwSkill );            8 J! q3 r; u4 A6 K& ^7 L
                    if( pSkillProp == NULL )
1 U: e1 L- m4 E( {% Y: I3 d. A                        continue;
8 i  o2 S: i% e# d' [& R  s                    if( pSkillProp->dwItemKind1 != JTYPE_MASTER)
" L2 t1 r6 q8 v& b                        continue;) u9 ~3 B: p# f3 U4 \. d
                    lpSkill->dwLevel = 5;
! I% I8 O2 \6 ~2 }' ~                }1 s8 r5 `) ^! q* ~0 ~, p
            }3 F- Q7 }5 }/ Q" V( q& v
        }0 H* ~7 C% z& H2 q
        else if(IsLegendHero())$ S5 U5 Y$ [) J) T  Z7 N2 Q
        {
* W3 S. o- s$ Z& j6 }# ~% H% y  V            for( int i = 0; i < MAX_SKILL_JOB; i++ ) - ^. i) K2 S% N4 R
            {                  Y* E% C& F- q7 J4 y7 J  u
                LPSKILL lpSkill = &(m_aJobSkill);
! V2 u( q. v8 _& Q2 Y; r                if( lpSkill && lpSkill->dwSkill != NULL_ID )0 h% ^" l* p5 P8 j( L
                {) c( c- {5 a1 H! }
                    ItemProp* pSkillProp    = prj.GetSkillProp( lpSkill->dwSkill );            6 B6 f1 m# N4 e: j, j
                    if( pSkillProp == NULL )
* |& f6 q% u' L- Q- m                        continue;# ^/ ?5 M' N# N/ n
                    if( pSkillProp->dwItemKind1 != JTYPE_MASTER)
* z. m0 B: {- B! I$ I                        continue;
( {  c) y0 o, S- x! ?                    lpSkill->dwLevel = 5;6 v6 j% z4 M1 g! E  g" o
                }
/ C2 V5 `! W+ D) I            }
1 P, ^/ `, U, W4 @" ~! l$ u        }- i0 ^; b* M; C+ e# U4 C
#endif    //     __LEGEND    //    10?÷ àü?????o??    Neuz, World, Trans* f& I7 N( S0 u4 B
        if( bGamma )1 q0 B8 ~. X2 k; @3 R4 P' q8 M0 V
        {8 M7 J) v/ d* c! p
            m_nExp1 = 0;$ _# _, V" O+ ^! X
        }* M' x% B' X" I$ }6 J7 ]% R5 X7 v
( `  T* {2 ?$ n& L) o* H! U, L) m
        ( (CUser*)this )->AddSetChangeJob( nJob );
. `) {- ~: S# }9 F1 R; Q        g_UserMng.AddNearSetChangeJob( this, nJob, &((CUser*)this)->m_aJobSkill[MAX_JOB_SKILL] );
0 C" c" N% B7 a* Y/ y" X+ X9 {4 n+ B! Z( V' Q9 m( _# }

1 s' r; i5 x9 I8 T$ `3 Y#if __VER >= 11 // __SYS_PLAYER_DATA0 I* O; r/ x: N1 N
        g_dpDBClient.SendUpdatePlayerData( (CUser*)this );
' B& ^$ V4 c8 Y: ]* k  ^% k, T#else    // __SYS_PLAYER_DATA5 ]3 f: P: x( W  q3 u
        g_DPCoreClient.SendPartyMemberJob( (CUser*)this );, s/ g* V7 ^( E8 _
        g_DPCoreClient.SendFriendChangeJob( (CUser*)this );, P% S( v3 }8 ?- B1 x
        if( m_idGuild != 0 )9 j8 i5 {  D- m1 @3 Q$ I! s
            g_DPCoreClient.SendGuildChangeJobLevel( (CUser*)this );5 J1 J* n% }8 d- T9 L; R( c7 W2 z  b
#endif    // __SYS_PLAYER_DATA+ q9 O$ |+ s+ h! k5 X- ~+ U8 h- J
        SetHitPoint( GetMaxHitPoint() );
0 @) N: D# z5 x. Q+ Q, e. v: T  k        SetManaPoint( GetMaxManaPoint() );
8 k# w7 Z, A( f" @/ b8 P% B6 F3 o; N        SetFatiguePoint( GetMaxFatiguePoint() );
9 H2 v: @3 B; F. |, m6 n        if( nJob >= 1 && nJob <= 4 )
# A6 a, b  u- g# }+ ]. o% ]' q% Y        {
7 t( P) a2 P- i+ `4 d* N( f: w+ Z            m_nStr = m_nSta = m_nDex = m_nInt = 15;1 |3 A9 O: L* H
            m_nRemainGP = 28;
+ T6 l8 m" C/ l        }/ W( G4 `' T7 \: p
        if( nJob >= MAX_PROFESSIONAL && nJob < MAX_MASTER )9 C6 W( B8 j2 g) u/ ^
        {8 b, g6 R) e1 J% x: k
            m_nRemainGP = 118;
5 s# Y0 D& l6 T# f            //m_nRemainGP = ( m_nSta - 15 ) + ( m_nStr - 15 ) + ( m_nDex - 15 ) + ( m_nInt - 15 ) + m_nRemainGP;
" v, j. q- e1 _, r$ w6 }* M1 g4 [            m_nStr = m_nSta = m_nDex = m_nInt = 15;
9 y2 }9 [4 R: N3 R% J' p3 P8 x        }
0 i' e0 q( j" ~; d: j        if( nJob == JOB_MENTALIST_HERO || nJob == JOB_FORCEMASTER_HERO )
9 [+ \+ x$ D! }9 h        {
6 J# m2 e9 z4 e7 a' g( o+ g2 ~4 \            CItemElem itemelem;1 I( a9 _/ l8 O) @" l8 q* }) O
            itemelem.m_nItemNum = 1;' J! r& ]" I6 A
            itemelem.m_bCharged = TRUE;
7 T9 F1 d7 ?4 }0 ^' D3 I            BYTE nID;) J4 O2 l* w9 T/ f

! \2 a+ W, }% n5 O, ~            if( nJob == JOB_MENTALIST_HERO ), J$ w3 i$ Y/ C
                itemelem.m_dwItemId = II_WEA_BOOK_BOKROMAIN;+ I0 F9 k+ {4 f3 a( P2 ?
            if( nJob == JOB_FORCEMASTER_HERO )
; k2 E6 S" J& q- w  |* v                itemelem.m_dwItemId = II_ARM_ARM_SHI_ZEMBATO;
' R8 G2 d6 `, \& L" w% }7 m/ u; z8 f4 b# h
            ( ( CUser*)this)->CreateItem( &itemelem, &nID );
& U- c+ b5 Q9 U7 F* ~        }# Z+ s! j- Z/ R4 _1 Z2 X
        g_UserMng.AddSetLevel( this, (WORD)m_nLevel );4 e# t8 E2 E1 }
        ( (CUser*)this )->AddSetGrowthLearningPoint( m_nRemainGP );
& N: Q: n! v* w7 `/ o7 X8 W        ( (CUser*)this )->AddSetExperience( GetExp1(), (WORD)m_nLevel, m_nSkillPoint, m_nSkillLevel );4 w6 ^0 B8 e0 e3 |6 f$ [
        /*( (CUser*)this )->m_playTaskBar.InitTaskBarShorcutKind( SHORTCUT_SKILL );
* S; @& |2 ^- v# `+ @2 g" G        ( (CUser*)this )->AddTaskBar();*/( A  J  v' u6 x/ _# j! B
        ( (CUser*)this )->AddSetState( m_nStr, m_nSta, m_nDex, m_nInt, m_nRemainGP );* k/ ~6 {, M. D6 N1 r& L2 v
#if __VER >= 13 // __HONORABLE_TITLE            // ′Tà?
& P9 |+ r& p0 y2 Q+ H. b        ((CUser*)this)->CheckHonorStat();9 w( f/ f( p& E
        ((CUser*)this)->AddHonorListAck();
  b  T0 [9 R: W7 W! Y        g_UserMng.AddHonorTitleChange( this, m_nHonor);- e! v9 B" E6 i6 T
#endif    // __HONORABLE_TITLE            // ′Tà?3 {5 K* T  O7 S+ l
    }
/ ^/ y/ ]# R/ g8 M  \#endif // __WORLDSERVER: V1 N3 D6 b2 ^! a! B* o
}  
! `9 i9 U' ]1 a  t7 E
6 d; h  ^; Z% K0 j- R: p% v然后你进入functextcmd.cpp并添加以下  I. a% C" d* C7 Y

& W* O. X( M3 I2 f8 _7 w代码:6 o$ i" ^* I$ ^' K6 [4 X& T3 `+ r
ON_TEXTCMDFUNC( TextCmd_say,                   "say",               "say",            "??",             "??",      TCM_SERVER, AUTH_GENERAL      , "?ó?èàó [/?í·é ??àìμe 3???]" ): L  R) F. r$ G& q
下面插入
7 G3 a2 `0 j. H" F  I4 @ON_TEXTCMDFUNC( TextCmd_rebirth,              "rebirth",          "rebirth",             "?ú·1?÷??",       "?ú·1",    TCM_SERVER, AUTH_GENERAL   , "?ú·1?÷??" )  , l- ^8 A& ~1 r. _7 q9 J* _# @

& Z8 M2 |' M5 k; e6 k1 J- h+ U% d; U然后你去
2 l& Z  m& L! [6 u, w, V" }& H, b$ Z8 r6 a9 G
代码:
" p( o. N* B% e7 l3 A+ o1 J* M代码9 ^7 Q" C) c$ F9 N: ?
BOOL TextCmd_ClearPropose( CScanner & s )
! H* l; Q5 b3 l- E{
# H6 `- V; e! h3 T( |( M- O#ifdef __WORLDSERVER! t( B4 a2 Z# z& t* _
    CUser* pUser    = (CUser*)s.dwValue;
5 _0 ]8 m! o# J% b; w: T    g_dpDBClient.SendClearPropose();
- F. @% S& d8 d: J0 x9 ~0 T#endif    // __WORLDSERVER* p6 `: b. G4 @' c" a2 y6 N, _
    return TRUE;. ^4 l. w; ?, D; t# _
}! Q* l8 w! Z! d
下面插入; O0 `: l! V) h$ M4 y
BOOL TextCmd_rebirth( CScanner& scanner )
0 H0 U: P/ R$ a{7 ~0 g: h- S* `5 I6 w
#ifdef __WORLDSERVER8 p; b" }6 |/ Z
CUser *pUser;
' Z/ b7 I2 V+ \& q4 GpUser = (CUser*)scanner.dwValue;
8 D0 h$ m0 U8 |if(pUser->m_nLevel >= 150 && pUser->IsLegendHero())( E# v5 G+ O. J7 ~" Z
pUser->InitLevelPumbaaa( pUser->m_nJob-16,60);
+ D( l2 K' R0 Y3 s" t8 t) Z% y1 r/ Zelse- v" a& P# l  ]
pUser->AddText("你还未达到重生条件!");
( r/ p7 z0 [4 t0 l# q#endif
/ ]; X  ~; E2 z& _return TRUE;8 {9 H( |4 X; G. ^2 e
}  
& r1 z: i. H4 M* d6 A) N  S  X
  R" E1 Y! ~; ?4 P# L* U
6 Z  m2 {/ D; S* O7 p3 B- L/ e; F0 f
. [' i. u! v9 m& r
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-12-29 17:25 , Processed in 0.065041 second(s), 22 queries , Gzip On.

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

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