飞飞世界论坛

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

通过命令重生

[复制链接]

197

主题

203

帖子

1086

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
1086
QQ
跳转到指定楼层
楼主
发表于 2016-1-10 03:42:30 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
至于V15和源文件发布重生不再使用通过HP它不再去我会告诉你如何可以通过与它聊天源befehel
/ ^8 t7 \- P- I" p9 R  K9 m- f8 I4 P% L/ z/ |$ J
Mover.h
+ A/ r+ a, Y1 p" s9 M9 W2 N$ }代码:
9 a  y) \7 t8 G  F找到: void            InitLevel( int nJob, LONG nLevel, BOOL bGamma = TRUE );            // °′???| nLevel·? 1ù2?áü2 j! h$ {9 V* A! X  Z

( G7 _* A% C7 g1 n/ z& i/ t$ ~下面插入: void            InitLevelPumbaaa( int nJob, LONG nLevel, BOOL bGamma = TRUE ) ;  
% l3 E; L1 B6 ?  m, m! S( J
8 Z: W5 c  }2 H然后你去mover.cpp添加
  Q' y" b+ i+ j( a2 w7 Q( l
. t2 |: \# _7 q7 P代码:
! U1 z2 F! w! K( xvoid CMover::InitLevelPumbaaa( int nJob, LONG nLevel, BOOL bGamma )
0 Z  t) H6 a# @# r- L. p{! T3 s2 i' l- E4 Q) N
#ifdef __WORLDSERVER
' I& ]5 \5 T; ~9 W) B    // ???μàú ?í·éà?·? ·1o§?÷ ??′?°÷àó
6 p% k4 O' f  b5 U9 W    MoverProp* pProp = GetProp();
4 X  Q" g1 v% E0 b, Z    if( pProp )0 o8 c2 g) Z  N7 H( J$ S
    {! g; i, g6 |# F! o3 G" C2 \
        if( nJob > 0 && nJob < MAX_LEGEND_HERO )* d( C, |  C% q, e" ]1 Q
        {
" V( U' S' ~0 [/ u4 y+ U            AddChangeJob( nJob );
1 Q) W7 d. P5 A, V7 K        }else{
& G2 V. Y; @% Y            return;
5 p- R% K) T& C8 y; C2 r        }
4 g# {( q2 U0 p) J        int nPoint = 0;* s  y1 B/ I) y( v: X
        if( m_nJob == JOB_MERCENARY )
4 \4 b" L0 b7 r4 I            nPoint += 40;
: i1 Q6 h8 L8 \9 f9 ?% ~  I        else if( m_nJob == JOB_ACROBAT )- w: f3 o+ c4 O  N! A6 W0 k
            nPoint += 50;
2 e/ K/ N- c  ~9 F3 m1 y7 M        else if( m_nJob == JOB_ASSIST )
! Q1 l- G- f7 w. V( ~            nPoint += 60;
% T' W+ V7 x2 ~3 g$ \        else if( m_nJob == JOB_MAGICIAN )7 p5 H& \' D8 ]. P8 z# J- E# J
            nPoint += 90;
; f( n: x( G* H/ @: f        else if( m_nJob ==  JOB_KNIGHT || m_nJob ==  JOB_BLADE )
3 u$ ?: B1 x1 b. C+ B! P            nPoint += 120;
" P- v" x& e7 k8 W/ X. q* Z/ @6 l        else if( m_nJob ==  JOB_JESTER || m_nJob ==  JOB_RANGER )
/ n: f7 V2 F3 V1 s2 Q. [            nPoint += 150;
) I  \: t) V! k) S3 I' U; Y9 A: U9 ?        else if( m_nJob ==  JOB_RINGMASTER )1 k: Z' c) v5 v- G8 D5 C
            nPoint += 160;
) s% x8 t2 K2 q1 s2 F        else if( m_nJob ==  JOB_BILLPOSTER || m_nJob ==  JOB_PSYCHIKEEPER )) C9 v0 k/ B' f# `& ~( f
            nPoint += 180;
' E& P) H. j1 Z        else if( m_nJob ==  JOB_ELEMENTOR )
0 y) O7 a" ?$ |* u' L" r4 A            nPoint += 390;5 E" {; ^! v" `/ n' V+ K
        else if( nJob ==  JOB_LORDTEMPLER_HERO || nJob ==  JOB_STORMBLADE_HERO )# y% r/ u; X5 O6 \$ d7 F$ t
            nPoint += 120;
2 f, u7 Y& ^  ^- r  `  |2 H' U8 T        else if( nJob ==  JOB_WINDLURKER_HERO || nJob ==  JOB_CRACKSHOOTER_HERO )
) m0 h0 O9 D5 w4 h) I! |            nPoint += 150;4 a0 C; a0 q; c5 p' |+ k/ Y
        else if( nJob ==  JOB_FLORIST_HERO )
0 ^+ c8 x7 I8 s' a9 Y            nPoint += 160;) i  N8 M  ]% a' b* X) p% R; F- r
        else if( nJob ==  JOB_FORCEMASTER_HERO || nJob ==  JOB_MENTALIST_HERO ), O5 m$ A7 c% R& ^3 m7 L) I) O' `
            nPoint += 180;
: n, X4 v% P) q) k* e        else if( nJob ==  JOB_ELEMENTORLORD_HERO ). H+ d6 h& x! q: S) N8 J
            nPoint += 390;
+ T. ^$ C5 v' r& m6 j! K6 ~/ C$ _
2 s- [* l" t% {& ?$ F, a9 R        AddSkillPoint( nPoint );
$ R: L$ S4 }& P0 \        m_nLevel = nLevel;
) z, Q4 M  ^% [" e( T( ?! W2 [0 b
        SetJobLevel( nLevel, nJob );
* F( w  M$ j; m' v% ?        m_nDeathLevel = nLevel;# B5 L! }; x4 [- Y
#if __VER >= 10 // __LEGEND    //    10?÷ àü?????o??    Neuz, World, Trans3 B4 O4 f( N. a+ b& j. e* L, l- H
        if(IsMaster())
! s. z7 `/ S' V. g; t, B0 ?) p$ n. |        {
; Q# P$ z/ h6 ^6 z; f3 f. I            int dwTmpSkLevel = 1;//60, 72, 84, 96, 108
# b1 X2 X" @+ L( b; W/ _7 c( l& S            if( nLevel > 59 && nLevel < 72 )
+ l& B# s, Y% i9 b2 Q                dwTmpSkLevel = 1;
3 Q* Z, [# S1 s' s% B+ Y- U& C. u            else if( nLevel > 71 && nLevel < 84 )
+ I, d9 C9 a' W) d  [) \                dwTmpSkLevel = 2;
3 y& q, N6 N2 L( F7 f; {5 i5 b            else if( nLevel > 83 && nLevel < 96 )
2 `7 G+ {  H+ b! B                dwTmpSkLevel = 3;
# ~$ e$ l# x  J  ?" m" Y            else if( nLevel > 95 && nLevel < 108 )  i6 C' r) L/ o9 H. T- L* J
                dwTmpSkLevel = 4;
2 v3 p' x% a, |" |: o            else if( nLevel > 107 && nLevel < 120 )3 {( e% M( g0 x* }' s0 F4 O
                dwTmpSkLevel = 5;
; \( @6 L/ s1 H  n% P            for( int i = 0; i < MAX_SKILL_JOB; i++ ) / n3 w6 S. J3 z8 [9 }; `, R, Z( }9 O
            {               
  u, _# l9 O6 c  X                LPSKILL lpSkill = &(m_aJobSkill);
" B! p0 k. M- l8 J. O4 L; `& u6 R                if( lpSkill && lpSkill->dwSkill != NULL_ID )
, L  x, d$ f0 E/ S4 l                {4 E- M% S$ e8 M/ ]4 S4 A" B
                    ItemProp* pSkillProp    = prj.GetSkillProp( lpSkill->dwSkill );            9 A' J6 s6 S- e3 c6 F6 Z
                    if( pSkillProp == NULL ). I8 `! W* Q4 }- b$ Y' M- K
                        continue;' l: ]* r& A+ Q& h( D
                    if( pSkillProp->dwItemKind1 != JTYPE_MASTER)' K4 [$ V! d3 _/ Z$ `+ N# n9 }
                        continue;
2 J/ X. l5 U* i3 r* Y                    lpSkill->dwLevel = dwTmpSkLevel;* k' @' ^2 r! k5 k& H6 O
                }
8 C6 k6 Y5 M" n' O4 `0 E! y; W            }
/ A7 s( H9 E3 ~1 A- [$ K6 V        }2 R2 I' H/ z0 Q6 `- C
        else if(IsHero()): ]: z. b' _6 o
        {
6 G: Y2 n8 O( ^, _0 n$ N            for( int i = 0; i < MAX_SKILL_JOB; i++ )
6 m& |2 w) W3 V# O/ l            {                6 J; m9 L/ Z; Z% M( \
                LPSKILL lpSkill = &(m_aJobSkill);
% _2 j6 ?& ~- A* y                if( lpSkill && lpSkill->dwSkill != NULL_ID )  {( s! K. z. P% d7 @- K6 _
                {! ]4 K0 ^+ |) T- ?5 l! G
                    ItemProp* pSkillProp    = prj.GetSkillProp( lpSkill->dwSkill );            
; N4 q1 n: \, v3 \# M- T+ N                    if( pSkillProp == NULL )
6 P, R1 R1 E* Y) b8 j1 O6 n                        continue;$ m# p1 I5 E# Z% E- g, A
                    if( pSkillProp->dwItemKind1 != JTYPE_MASTER)
1 |: X2 ?+ N3 {7 H                        continue;
9 O6 Z2 K9 f: x0 a1 Q- Z                    lpSkill->dwLevel = 5;
3 K% K( G) d7 C  Q2 R. {* m                }  Z! V  V  R! b7 A  r
            }
; Q2 @2 D* c0 g& u/ R2 j        }8 `; _: R) u' i0 y
        else if(IsLegendHero())
! X: o' b( X- H! C        {
/ d- y! ^$ T$ Q( w  A/ z2 y8 {            for( int i = 0; i < MAX_SKILL_JOB; i++ )
/ M  E$ S$ r" C: D            {                1 M: h2 A" X+ R6 H" a7 l. U
                LPSKILL lpSkill = &(m_aJobSkill);4 C7 S' J& d2 Y0 V
                if( lpSkill && lpSkill->dwSkill != NULL_ID )
' I- a0 {& [5 u2 u" E* ^                {; \- u1 S' k0 l8 o4 J) X/ a
                    ItemProp* pSkillProp    = prj.GetSkillProp( lpSkill->dwSkill );            
, k' f- ?( x" V/ V% Q                    if( pSkillProp == NULL )1 B/ D% {; o, N7 L, Z! k+ a) a' n
                        continue;8 Z# ]% u: c2 S  J& _9 \; u, g
                    if( pSkillProp->dwItemKind1 != JTYPE_MASTER)
, }2 z( p7 |4 N6 c/ \. Y* v                        continue;
. T$ i, y% D" J+ l/ l! p3 R% ~                    lpSkill->dwLevel = 5;
1 E6 `8 K9 P! W+ j4 e4 w# y0 L                }
& O- Y2 d2 J! I4 T* A$ g! T; q            }2 D7 }' N$ }4 ~; O
        }
% B) R( v2 r8 {4 T& n3 L#endif    //     __LEGEND    //    10?÷ àü?????o??    Neuz, World, Trans
& E0 @* F, t6 U; _& N0 `* ]1 V# Z        if( bGamma )
2 n/ @( g' ?( d5 Z3 O8 v4 z" p3 u        {
( }' t& [8 H/ [$ g  R& u$ i: {            m_nExp1 = 0;7 {" p0 C" Z! B; K- A+ Z1 Y
        }$ f$ ?- D( _% V+ @9 `, j

2 w7 y& Y. \6 M0 F        ( (CUser*)this )->AddSetChangeJob( nJob );
8 Q0 ?" Z) O/ y1 ]1 d' y        g_UserMng.AddNearSetChangeJob( this, nJob, &((CUser*)this)->m_aJobSkill[MAX_JOB_SKILL] );( g9 o$ J; d% L& Q" `1 q
; n& M9 l( O  b, x
2 D, v2 }3 w" G3 A& u
#if __VER >= 11 // __SYS_PLAYER_DATA
9 h% P- ~/ k- K  ~& ^9 v( _        g_dpDBClient.SendUpdatePlayerData( (CUser*)this );
$ a7 U8 [' `- P7 E#else    // __SYS_PLAYER_DATA  |  V+ A7 ]0 v# e) Q- o; L
        g_DPCoreClient.SendPartyMemberJob( (CUser*)this );
9 O" A( E6 c2 U        g_DPCoreClient.SendFriendChangeJob( (CUser*)this );
& R3 b- X' T% N& \        if( m_idGuild != 0 )
$ D4 z7 e  ]4 t* ^3 e8 ?            g_DPCoreClient.SendGuildChangeJobLevel( (CUser*)this );4 W  U3 o7 r0 p
#endif    // __SYS_PLAYER_DATA
; k2 h* V' e1 P; B9 R1 U        SetHitPoint( GetMaxHitPoint() );
. N- b2 e. {( _. t3 q% T) g, j* G* B        SetManaPoint( GetMaxManaPoint() );1 B" a: u+ d$ T, J
        SetFatiguePoint( GetMaxFatiguePoint() );
% i/ U, `+ y. {, c: _2 s  g) a# ^+ e: O        if( nJob >= 1 && nJob <= 4 )5 _/ T0 L$ s0 d3 S) `
        {
0 S* I: m+ |+ @            m_nStr = m_nSta = m_nDex = m_nInt = 15;' X8 E/ v) _( ~+ \
            m_nRemainGP = 28;6 F* c* [5 A: l0 M& a
        }
4 D% a/ w' }+ i6 N# t+ a        if( nJob >= MAX_PROFESSIONAL && nJob < MAX_MASTER )
6 g" O5 q: Y$ n; C        {# g$ z7 _7 y2 O8 W) T
            m_nRemainGP = 118;
6 o: A( d* ]% |( P, q            //m_nRemainGP = ( m_nSta - 15 ) + ( m_nStr - 15 ) + ( m_nDex - 15 ) + ( m_nInt - 15 ) + m_nRemainGP;$ q" n7 _5 ^$ C9 D* p5 c
            m_nStr = m_nSta = m_nDex = m_nInt = 15;$ u% \4 g! e( X0 o( E
        }
) g6 L6 R2 y7 R9 ^3 [# b0 ~# U5 a        if( nJob == JOB_MENTALIST_HERO || nJob == JOB_FORCEMASTER_HERO )8 a: R; D6 h% Y3 n3 D5 v( _
        {
" d/ d' K* W2 q  S5 i# s- [            CItemElem itemelem;1 i2 W% R' o- S6 {' F4 t" R5 ]
            itemelem.m_nItemNum = 1;8 k, t! n$ R/ Z7 e# W8 c7 G% d
            itemelem.m_bCharged = TRUE;0 Z: x* Z( W8 a6 n1 G
            BYTE nID;
% V( t% V( a% Z; m8 G
) j0 e% @4 q) }% \4 h2 n            if( nJob == JOB_MENTALIST_HERO )
1 Z8 x4 K" }  f9 k+ H' o. T! V# ~                itemelem.m_dwItemId = II_WEA_BOOK_BOKROMAIN;
' k7 F2 I8 Q  s& [5 s9 A) l; ]            if( nJob == JOB_FORCEMASTER_HERO ): q* f) z2 S/ V
                itemelem.m_dwItemId = II_ARM_ARM_SHI_ZEMBATO;
% l& e" G% f! s7 `: O1 m& N3 d0 n9 W/ S7 R
            ( ( CUser*)this)->CreateItem( &itemelem, &nID );
4 T  i) C3 F* p7 ]) U        }* r9 L" G4 C1 }3 S6 ]8 N# A
        g_UserMng.AddSetLevel( this, (WORD)m_nLevel );
+ D" @  G! g0 z  ]* h        ( (CUser*)this )->AddSetGrowthLearningPoint( m_nRemainGP );
( i: ^4 s1 r  }3 ]' z& y0 n        ( (CUser*)this )->AddSetExperience( GetExp1(), (WORD)m_nLevel, m_nSkillPoint, m_nSkillLevel );6 F* V3 s7 n- i
        /*( (CUser*)this )->m_playTaskBar.InitTaskBarShorcutKind( SHORTCUT_SKILL );
0 e( G) A# Q! h. h        ( (CUser*)this )->AddTaskBar();*/- t, Q  X  H! m
        ( (CUser*)this )->AddSetState( m_nStr, m_nSta, m_nDex, m_nInt, m_nRemainGP );
; x, k. v% H% x1 x& V, @/ l/ f#if __VER >= 13 // __HONORABLE_TITLE            // ′Tà?
: c8 F0 L. y+ P: C- k! f6 X        ((CUser*)this)->CheckHonorStat();
  v- z6 [: l  f& Q8 ^# d        ((CUser*)this)->AddHonorListAck();
9 _  ^1 B- H& f; ~        g_UserMng.AddHonorTitleChange( this, m_nHonor);0 Z( I) j/ S- O5 I% g  v$ b8 e+ f
#endif    // __HONORABLE_TITLE            // ′Tà?  f8 _4 l# A4 P( L" {4 R
    }
$ c& a5 q* S6 Q/ _  H#endif // __WORLDSERVER/ ?9 _0 @/ T# g, h. T
}  , L& c+ R  m5 x. I, Z8 I
! O8 C" m6 o& J- e
然后你进入functextcmd.cpp并添加以下
) H0 f& K, e9 E0 O& G8 x! S# l  N6 s1 ]0 p
代码:
+ \: A& c4 W* Q( S/ FON_TEXTCMDFUNC( TextCmd_say,                   "say",               "say",            "??",             "??",      TCM_SERVER, AUTH_GENERAL      , "?ó?èàó [/?í·é ??àìμe 3???]" )
; F6 K( {0 W9 w# D1 U下面插入
# l; @& O7 @! s, G0 a, E$ \ON_TEXTCMDFUNC( TextCmd_rebirth,              "rebirth",          "rebirth",             "?ú·1?÷??",       "?ú·1",    TCM_SERVER, AUTH_GENERAL   , "?ú·1?÷??" )  , g' O9 K0 ]: Y2 h5 F
! G9 y( L8 T8 }9 M6 {. |0 _
然后你去
1 I8 Q9 w* f" o1 t8 @+ t
( r  g) F1 z  d7 F代码:
- _* j9 A, r: V$ a2 W/ `" n代码
% `9 \" p8 N& ^# {: d, c, t% `, KBOOL TextCmd_ClearPropose( CScanner & s )
- J1 \4 B' m( n7 h{" m3 J, c. {9 y1 F5 Y+ f
#ifdef __WORLDSERVER3 T0 ]. V. V$ }$ d
    CUser* pUser    = (CUser*)s.dwValue;( u9 f3 o3 E6 `+ ]/ N/ r
    g_dpDBClient.SendClearPropose();
. M6 g4 h1 j: h, x9 k#endif    // __WORLDSERVER
) B8 ?2 m1 d! x+ k5 }    return TRUE;
2 A. Y+ h' |6 ?; z1 [7 P}, F" S- o& r- \+ X0 J% O, m( f, b
下面插入" W; R/ V  c) c( u
BOOL TextCmd_rebirth( CScanner& scanner )
( a8 q  S3 ^( a; ?7 u4 i- W{* v% q) ~# ?$ p1 Y; A( z. d
#ifdef __WORLDSERVER
- b" ]3 k5 ~  B- r( Z5 s; }$ iCUser *pUser;
- k& v4 R. s4 IpUser = (CUser*)scanner.dwValue;
+ Q  Z- \; O0 u% fif(pUser->m_nLevel >= 150 && pUser->IsLegendHero())# o" m7 I- ]3 F' ^* j
pUser->InitLevelPumbaaa( pUser->m_nJob-16,60);& }& p7 R4 V: u
else
8 {3 z9 H' F( wpUser->AddText("你还未达到重生条件!");
9 J# O* x% U0 l, ^# J#endif
' `4 z8 r! r% _return TRUE;( u% M+ |) w+ h/ |- f5 Y
}  
1 U9 T& R1 |! {8 V: c  a1 t* B3 ~- h+ W7 o. R# _0 H

4 P3 _4 {# V& ~4 L9 n4 m; u6 Q
) B" i) o- y& Q- w9 R1 s; _2 S# V2 E% ^/ T0 r
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2026-1-12 17:41 , Processed in 0.077209 second(s), 23 queries , Gzip On.

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

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