飞飞世界论坛

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

通过命令重生

[复制链接]

197

主题

203

帖子

1086

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
1086
QQ
跳转到指定楼层
楼主
发表于 2016-1-10 03:42:30 | 只看该作者 回帖奖励 |正序浏览 |阅读模式
至于V15和源文件发布重生不再使用通过HP它不再去我会告诉你如何可以通过与它聊天源befehel
; B- W$ E. [! P% W% z! l9 r1 Q" o# `5 Q  w) H9 z
Mover.h' E9 l1 O- r8 Z
代码:) w6 G+ q, \8 b; o- [
找到: void            InitLevel( int nJob, LONG nLevel, BOOL bGamma = TRUE );            // °′???| nLevel·? 1ù2?áü
# R/ {$ z; P4 Z" ^* C' ^# b4 c) ]' E3 d- p) O8 \* d  v1 V
下面插入: void            InitLevelPumbaaa( int nJob, LONG nLevel, BOOL bGamma = TRUE ) ;  2 X& ~8 d+ z, E# T! P
, X- N4 `# O/ q  g
然后你去mover.cpp添加" W2 ^# N0 r. F+ O

! J1 E# ^: y) @2 T* R+ r代码:
! m& p6 G$ G# P% Z9 O4 q8 dvoid CMover::InitLevelPumbaaa( int nJob, LONG nLevel, BOOL bGamma )# @- x( R4 r5 H. Z
{% T# f: p3 C& V: c* @8 X
#ifdef __WORLDSERVER
; h1 T% O0 r% ~    // ???μàú ?í·éà?·? ·1o§?÷ ??′?°÷àó
$ y: w2 K/ J7 U. a    MoverProp* pProp = GetProp();  p2 c# q3 v% S
    if( pProp )
' K) x) ?2 Z0 s. ~% |" o9 s    {, o1 z; `/ x$ h1 n
        if( nJob > 0 && nJob < MAX_LEGEND_HERO )
: ?7 H1 Y" k6 p% K' x        {/ J1 X  U; Z1 I( F
            AddChangeJob( nJob );! F' H/ k* ?  i' \, [
        }else{
4 C+ [4 T& k) G" ]( F            return;
+ Q4 e: |/ w, s8 R  u- a. g; }        }
* O' n9 d3 l- I0 P2 {        int nPoint = 0;
3 J3 Y6 n3 M9 Y6 k        if( m_nJob == JOB_MERCENARY )# o7 @! F9 _' b/ Y
            nPoint += 40;3 P, M9 F7 |3 H* J; c
        else if( m_nJob == JOB_ACROBAT )
! g, C  [7 H: Q' E8 Z& y6 x            nPoint += 50;
( ?/ K% Y1 r0 q& P        else if( m_nJob == JOB_ASSIST )
2 y0 b" S- i+ o9 j3 ^            nPoint += 60;- B& \% i7 Z# ?; ^7 N" o" G: R
        else if( m_nJob == JOB_MAGICIAN )
% K/ x: Y& W4 h1 x) x5 U6 W8 x            nPoint += 90;
- C4 d+ B' o, X7 K0 b& {        else if( m_nJob ==  JOB_KNIGHT || m_nJob ==  JOB_BLADE )* |6 W7 L+ k2 d( N: V
            nPoint += 120;
5 F$ P3 k' {8 y6 D& n5 ]        else if( m_nJob ==  JOB_JESTER || m_nJob ==  JOB_RANGER )
5 L5 |( A) a3 e            nPoint += 150;
/ q; z. C8 f$ H) |        else if( m_nJob ==  JOB_RINGMASTER )1 b# d. i- z, |, u3 {
            nPoint += 160;/ z* c4 |  L- u; v9 T  k
        else if( m_nJob ==  JOB_BILLPOSTER || m_nJob ==  JOB_PSYCHIKEEPER )
8 p2 r. |2 H2 j7 ~1 b6 A5 X            nPoint += 180;" b" [! _; \  u; e+ W8 q0 ~8 _1 i
        else if( m_nJob ==  JOB_ELEMENTOR )6 K  r% j- H  r) S# K' F  |
            nPoint += 390;+ t+ I0 T$ r8 F
        else if( nJob ==  JOB_LORDTEMPLER_HERO || nJob ==  JOB_STORMBLADE_HERO )
0 q9 Z) y# u5 C0 S3 o; n            nPoint += 120;# d$ R. y- a0 j6 R3 N' A
        else if( nJob ==  JOB_WINDLURKER_HERO || nJob ==  JOB_CRACKSHOOTER_HERO )* {" m, {) @% q5 P" Y" [% B
            nPoint += 150;
- f4 \. ~# h# X. n        else if( nJob ==  JOB_FLORIST_HERO )3 T6 }3 K; E! `; c
            nPoint += 160;
0 V4 d! \! h/ Y% D! n        else if( nJob ==  JOB_FORCEMASTER_HERO || nJob ==  JOB_MENTALIST_HERO )- T" s" s3 H4 S: G, g4 a
            nPoint += 180;
7 A  Y+ O6 i' ]* _% ?0 }4 D! Z3 A9 o        else if( nJob ==  JOB_ELEMENTORLORD_HERO )) `6 w& {  m* @2 _# X: T
            nPoint += 390;
4 F% I' l2 E% |& K, ?8 l2 R9 z1 Y) E( y/ ^. y) z
        AddSkillPoint( nPoint );
6 Y$ S8 A' T' S* K        m_nLevel = nLevel;! e% M2 @$ M0 S, k8 J) u% y# l  J

! ~: S7 i& F2 @3 ]: z" W( U        SetJobLevel( nLevel, nJob );
' M, L0 G" x% d: S, r. u        m_nDeathLevel = nLevel;' [9 c2 g/ P  d
#if __VER >= 10 // __LEGEND    //    10?÷ àü?????o??    Neuz, World, Trans4 `  }" D. T7 n3 a5 w  P& v
        if(IsMaster())
2 F7 g4 K6 o( O  W5 R$ V; M        {
+ o) c7 k% R9 n" z( k' ^  F            int dwTmpSkLevel = 1;//60, 72, 84, 96, 108  \" f) |. y) c
            if( nLevel > 59 && nLevel < 72 )
' q) t& r* s7 m                dwTmpSkLevel = 1;' S8 M4 z2 i8 K* J' B
            else if( nLevel > 71 && nLevel < 84 )
! q( E+ I9 w$ x, _# i* l4 x                dwTmpSkLevel = 2;
" J1 A: d5 O" l  n5 v$ F            else if( nLevel > 83 && nLevel < 96 )
* l" a! Y9 c) c0 I6 q+ o2 S4 c( M5 d                dwTmpSkLevel = 3;
3 h6 Y: W3 B6 P5 m            else if( nLevel > 95 && nLevel < 108 )
1 c* H; i" R! D                dwTmpSkLevel = 4;
9 M3 {& A. e; V! m& k% W8 `$ B9 ]            else if( nLevel > 107 && nLevel < 120 )
* ?  _  U& O5 f+ f                dwTmpSkLevel = 5;4 w( \4 w6 B  }9 O  F! h! H
            for( int i = 0; i < MAX_SKILL_JOB; i++ ) 6 O$ v& f; s6 ]  y) z+ g; q
            {                2 o8 O' m& {, j, N
                LPSKILL lpSkill = &(m_aJobSkill);3 ^+ N6 G/ p0 d3 y5 F, W, o% R5 ?$ b
                if( lpSkill && lpSkill->dwSkill != NULL_ID ); `, T4 s; @- t" t8 j* U
                {
. m# S! j( ^  W/ |( V9 |                    ItemProp* pSkillProp    = prj.GetSkillProp( lpSkill->dwSkill );            
, S+ U1 }2 V# j8 |/ ?                    if( pSkillProp == NULL )6 V- p' |4 ?; H- q/ U
                        continue;
3 I8 [- ^9 \: [1 F3 A, @) K                    if( pSkillProp->dwItemKind1 != JTYPE_MASTER)
5 K+ x9 D# m3 s                        continue;0 k( q- K2 U) V' }. @0 v
                    lpSkill->dwLevel = dwTmpSkLevel;
- H6 c8 ?3 L/ v: \7 p2 k                }
0 p' N) `4 q4 `5 Q            }" ^4 s/ @$ t& p  w, ~3 R* e
        }4 a3 y: s6 P) x1 C7 H% I& B
        else if(IsHero()), X1 N5 z- b! W! R( G' G8 t6 ?) R8 [
        {
) x3 j# ^5 q- L* U6 q            for( int i = 0; i < MAX_SKILL_JOB; i++ )
, P+ X: v  j2 Z9 n1 l/ ~; ]            {               
2 A- o$ ^- t. C7 {3 B                LPSKILL lpSkill = &(m_aJobSkill);+ r4 V# y$ V* O: }
                if( lpSkill && lpSkill->dwSkill != NULL_ID )
, [4 B5 u- K. r/ L3 P                {9 M$ ^8 u& l9 s; l4 Y( O
                    ItemProp* pSkillProp    = prj.GetSkillProp( lpSkill->dwSkill );            & `. n3 q3 e2 Z% S5 I2 i. I6 O! |
                    if( pSkillProp == NULL )
. l. Q- Y( V4 i& o$ m                        continue;
! r; S& F" f" f                    if( pSkillProp->dwItemKind1 != JTYPE_MASTER)
) M! ~: d2 w1 y% T2 `                        continue;
" l- a; E& q; V" `+ m+ _2 v$ ?                    lpSkill->dwLevel = 5;; q/ J: M' m% }; y& L: R: D
                }" w+ ^+ |5 A/ J, H% s
            }- H: t5 h6 q( `* I" T6 f; e
        }
% ?+ z9 u, p5 d1 }        else if(IsLegendHero())
( `) b  [. _: @; W5 ^. P2 C% {        {
' w! ?, y! F! w% w            for( int i = 0; i < MAX_SKILL_JOB; i++ )
1 P8 o, A7 x9 L6 \0 K            {               
; _3 L4 a' S/ r/ m& w/ d                LPSKILL lpSkill = &(m_aJobSkill);4 @7 _3 o( V4 Q& [6 n# h
                if( lpSkill && lpSkill->dwSkill != NULL_ID )4 G7 t) {5 [5 F6 V- a+ U% E5 f; }
                {1 B7 Y) k  o' X3 ?6 g3 W  q) v
                    ItemProp* pSkillProp    = prj.GetSkillProp( lpSkill->dwSkill );            3 U0 ?3 A  u9 h! e6 f3 Z' ^
                    if( pSkillProp == NULL )2 _3 X! Q$ l4 {/ h9 n
                        continue;
) b" O& ~9 \' x- x                    if( pSkillProp->dwItemKind1 != JTYPE_MASTER)
% j; \, V: r% r$ a, o                        continue;, ^: v6 v( F# G+ |( W* ?0 [$ n! o
                    lpSkill->dwLevel = 5;
8 e. l. ^- K1 E: W7 L! p                }
, t' p$ p! w1 j% a5 `7 \& u/ W- X+ p+ J            }% {0 j1 ]& Y1 r8 \' Q9 `
        }* t. @) C4 {$ {
#endif    //     __LEGEND    //    10?÷ àü?????o??    Neuz, World, Trans
1 g2 v& y2 E4 Y! m: c* {  z        if( bGamma )4 P' I- G, x0 w* l
        {
* ]: V. r, }9 l7 x) A+ T            m_nExp1 = 0;! ^) E  q$ @. c
        }$ P; E* V4 E( e  h
6 _, z4 P( e( J6 [- ?- w
        ( (CUser*)this )->AddSetChangeJob( nJob );
  y4 `, U# ]8 v% P2 H+ P        g_UserMng.AddNearSetChangeJob( this, nJob, &((CUser*)this)->m_aJobSkill[MAX_JOB_SKILL] );* G7 c) ^$ q0 [3 J4 o
% \4 v+ S6 a0 Y% C( B6 ?8 o' Y
, D- U7 J3 y, `* O3 o9 E
#if __VER >= 11 // __SYS_PLAYER_DATA
/ C  _1 U1 i$ `( s        g_dpDBClient.SendUpdatePlayerData( (CUser*)this );
2 R$ a5 b7 [" P8 a#else    // __SYS_PLAYER_DATA
1 C& ]! B9 ]- p; S+ P5 P7 h2 s! y        g_DPCoreClient.SendPartyMemberJob( (CUser*)this );5 x* H5 b# a; S2 _( j) u
        g_DPCoreClient.SendFriendChangeJob( (CUser*)this );
5 H1 d' h2 P9 j1 z        if( m_idGuild != 0 )' ~4 r3 B9 Y1 [8 r0 }
            g_DPCoreClient.SendGuildChangeJobLevel( (CUser*)this );
% g& n  Q9 ]& E9 o# C1 h+ p" b#endif    // __SYS_PLAYER_DATA5 Q' F8 R6 j4 K' X8 O. ]
        SetHitPoint( GetMaxHitPoint() );
: ?0 Z$ B# v. `+ ]        SetManaPoint( GetMaxManaPoint() );
4 r6 z; H$ p* P! [" v$ \        SetFatiguePoint( GetMaxFatiguePoint() );& w2 F/ Z" \& y* T, A
        if( nJob >= 1 && nJob <= 4 )) @, d% }1 P  W9 B+ `$ ~# A) |' u* Z
        {
# r: O, F7 i: A( k            m_nStr = m_nSta = m_nDex = m_nInt = 15;
7 z& `9 y; e$ d9 I- |4 R  I            m_nRemainGP = 28;2 |( u2 |3 L0 [" ?% w4 s4 A
        }. Q& r% d4 N* n' l) }! ~
        if( nJob >= MAX_PROFESSIONAL && nJob < MAX_MASTER )
8 M! ^0 p% q+ d" C: n' \* q( @9 x        {
+ T9 d- c& S- g9 f0 X+ q            m_nRemainGP = 118;
( d( C/ t" g5 x0 A1 X: n4 s            //m_nRemainGP = ( m_nSta - 15 ) + ( m_nStr - 15 ) + ( m_nDex - 15 ) + ( m_nInt - 15 ) + m_nRemainGP;: {4 ~6 N' z, _7 K7 U
            m_nStr = m_nSta = m_nDex = m_nInt = 15;
( k; }- o( V* I/ N2 p; l- h        }
3 ^) @  R5 N7 N* c2 i# \        if( nJob == JOB_MENTALIST_HERO || nJob == JOB_FORCEMASTER_HERO )- b! s- ^: k8 y8 ?& Y9 r! W& Y
        {- p( d( [. R; S4 b5 x
            CItemElem itemelem;
2 C+ b! u) l! d& D. f3 Q            itemelem.m_nItemNum = 1;
* ^7 w. J% J, w; s- X& D            itemelem.m_bCharged = TRUE;
% i; M! C& ?% `            BYTE nID;
$ B! t. q( @8 G$ X6 a+ t# k6 s) c! e3 h& N/ h" k8 ~# W( C
            if( nJob == JOB_MENTALIST_HERO )
  l8 m4 z/ B" D- V3 W& @8 |7 u( c                itemelem.m_dwItemId = II_WEA_BOOK_BOKROMAIN;
9 H3 H8 y5 K: [. s) u2 y            if( nJob == JOB_FORCEMASTER_HERO )
( }' V; W- }* z- }& A                itemelem.m_dwItemId = II_ARM_ARM_SHI_ZEMBATO;  V: Q  Z  ^) v' w% y$ U4 c+ h% F
9 _- }2 @  e+ w2 J+ b
            ( ( CUser*)this)->CreateItem( &itemelem, &nID );6 k1 k3 W2 T0 O" f% c' X; X
        }
! E" J+ t) y" ?$ e        g_UserMng.AddSetLevel( this, (WORD)m_nLevel );
0 x' k* Y! J& n# b6 G+ z/ s8 I        ( (CUser*)this )->AddSetGrowthLearningPoint( m_nRemainGP );
! }7 N! Q5 [2 J- U9 p2 W; `        ( (CUser*)this )->AddSetExperience( GetExp1(), (WORD)m_nLevel, m_nSkillPoint, m_nSkillLevel );
1 e* H. F* @; M2 l9 D. i        /*( (CUser*)this )->m_playTaskBar.InitTaskBarShorcutKind( SHORTCUT_SKILL );& p: V+ l8 [( w: J! f0 j0 E3 ]& O
        ( (CUser*)this )->AddTaskBar();*/
. O/ H% ~. N2 m" G% i+ _        ( (CUser*)this )->AddSetState( m_nStr, m_nSta, m_nDex, m_nInt, m_nRemainGP );- p1 v/ f: B: T9 o- y! f- N5 P: }
#if __VER >= 13 // __HONORABLE_TITLE            // ′Tà?9 u5 t4 l8 u0 Z' e" i$ T. S
        ((CUser*)this)->CheckHonorStat();% V, Z* f2 N( |5 d0 [1 j3 i
        ((CUser*)this)->AddHonorListAck();/ y0 ?% N% z- g& g
        g_UserMng.AddHonorTitleChange( this, m_nHonor);
& W1 z+ F' F4 L* f7 O#endif    // __HONORABLE_TITLE            // ′Tà?
! X+ [' Y& o: Z. p    }; |! A# ^$ e  x" K# M3 {. ^3 T1 n
#endif // __WORLDSERVER/ \# h; E  q3 ]9 k2 {
}  
, A; F2 W% j0 P+ M0 z3 ?6 ~7 |) m8 @- Q; D# q
然后你进入functextcmd.cpp并添加以下
- j5 |% j3 q5 w  @( H! t1 t/ ]- R! k4 D5 K
代码:: O8 Y5 _! j! ?. L1 r6 P; n
ON_TEXTCMDFUNC( TextCmd_say,                   "say",               "say",            "??",             "??",      TCM_SERVER, AUTH_GENERAL      , "?ó?èàó [/?í·é ??àìμe 3???]" )$ W0 q, C5 Z: q9 o
下面插入, d+ {1 g" \* F9 N! a; A. M# X5 O
ON_TEXTCMDFUNC( TextCmd_rebirth,              "rebirth",          "rebirth",             "?ú·1?÷??",       "?ú·1",    TCM_SERVER, AUTH_GENERAL   , "?ú·1?÷??" )  2 X/ X+ I5 _1 w

& |' I2 W* _/ c+ m# N然后你去/ F( l1 r9 a# n5 S5 P0 Q- U

7 h9 ~7 I& W; h" t# r% A代码:
& V) r- b- x( F# H/ F% c代码
1 r. F* {# v, ]/ j) J% aBOOL TextCmd_ClearPropose( CScanner & s )
6 M. P" h1 p. U2 m7 l( e{* S  v1 m8 s5 J5 |. Q3 J: \) k7 t: n( P
#ifdef __WORLDSERVER
9 o$ n. L6 f6 g2 o    CUser* pUser    = (CUser*)s.dwValue;8 N6 C$ K: c$ C& [  N
    g_dpDBClient.SendClearPropose();
2 `( `# T. t3 G/ z# J, A" I#endif    // __WORLDSERVER
" ?& l) }- t* K& {4 v" J    return TRUE;
  Q! f& O4 N: I8 q( q- i}5 Q. s& X* V7 i) R8 r9 q7 V6 Y
下面插入
/ j; q4 c. a' u3 r3 s6 m: pBOOL TextCmd_rebirth( CScanner& scanner )
: I- @* h4 T6 _% `{/ z& |& x, a" R6 {/ @0 Z$ ^
#ifdef __WORLDSERVER+ }# c9 \; o" C3 d! J
CUser *pUser;
% l( d% n' f( v/ ^& t7 O8 j7 zpUser = (CUser*)scanner.dwValue;
: _  j: c# y1 A6 O4 L! @& ]if(pUser->m_nLevel >= 150 && pUser->IsLegendHero())
; s3 d' b7 h/ F2 L7 d) z8 a. U3 h- c& M1 hpUser->InitLevelPumbaaa( pUser->m_nJob-16,60);; X' E. t2 `  Q" E( C" @
else" M/ J% a: l' b, [6 l' o$ h
pUser->AddText("你还未达到重生条件!");
; z, Q, M- W% L9 ]- q) J9 r) q#endif
+ i$ E$ E/ C4 \return TRUE;9 F- ]& s4 j/ e' }  F, z4 O: q/ {
}  
6 j- b  d# U1 j- [' t) R7 j* ?, d. E8 x+ [
. Y7 z. a6 Q5 g; p! a4 M

  l# T0 b/ c- k. c
/ [) d; Y2 `# @$ q% `% i, `
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-11-23 15:02 , Processed in 0.066673 second(s), 23 queries , Gzip On.

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

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