飞飞世界论坛

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

通过命令重生

[复制链接]

197

主题

203

帖子

1086

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
1086
QQ
跳转到指定楼层
楼主
发表于 2016-1-10 03:42:30 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
至于V15和源文件发布重生不再使用通过HP它不再去我会告诉你如何可以通过与它聊天源befehel
( @5 ?& l/ i. l$ K# [+ P# y- c' _: j6 b3 D
Mover.h
( \& s6 X; B4 X; b6 }2 N/ \' E0 r+ N5 z代码:2 W9 \8 y" u7 S6 Q
找到: void            InitLevel( int nJob, LONG nLevel, BOOL bGamma = TRUE );            // °′???| nLevel·? 1ù2?áü+ k4 ^3 h  N& C& g
6 h7 ^8 M0 C0 q- v# Q2 B, N
下面插入: void            InitLevelPumbaaa( int nJob, LONG nLevel, BOOL bGamma = TRUE ) ;  
5 J9 n# Z" j% C; T) {6 p5 ]  {; @: [9 J& s. x3 v
然后你去mover.cpp添加2 N) ~, O8 d: v: P

2 X0 Q+ R" p' z3 g& n代码:
& l6 O, U. v! H/ K; o$ nvoid CMover::InitLevelPumbaaa( int nJob, LONG nLevel, BOOL bGamma )
; ^- T7 z7 |. m( x4 E& C{
  N4 u5 k$ [9 T7 G$ @#ifdef __WORLDSERVER
2 g# J$ x3 \$ v% E* m4 a    // ???μàú ?í·éà?·? ·1o§?÷ ??′?°÷àó
  ]' d; h6 C0 @6 c* p    MoverProp* pProp = GetProp();- C  w1 h3 X9 A6 s/ Y( `
    if( pProp )
  ]! h( g1 v; z    {
7 N7 e& m- G3 [, T% j        if( nJob > 0 && nJob < MAX_LEGEND_HERO ). Z' W+ U9 y1 @& A/ e# N
        {
) o3 z- ^* m1 ?6 d" ^1 y            AddChangeJob( nJob );4 W$ g% r6 y6 v
        }else{
! g$ i9 j3 t6 c* O. o& e            return;
5 ]5 V" _& ]9 c( E7 j% R$ S7 S6 d        }, b$ d% m0 U5 T- g' J: _
        int nPoint = 0;
0 J3 H$ H4 i; X; Y& U& {        if( m_nJob == JOB_MERCENARY )
) k# x# Z+ g, b; [( z8 c7 J            nPoint += 40;
* i+ n; d  o0 p" o        else if( m_nJob == JOB_ACROBAT )
: i$ j4 B! N+ P8 p8 v  Z5 C2 L            nPoint += 50;: z+ I* W: W) H5 W8 t: r/ Y3 F; g
        else if( m_nJob == JOB_ASSIST ); q  H4 J1 B3 G
            nPoint += 60;
8 L7 E8 O5 V% m6 p/ ]1 U        else if( m_nJob == JOB_MAGICIAN )/ ~5 p/ E  l6 y) w' Z+ I
            nPoint += 90;( U- M  A* {' r) Q0 s; F
        else if( m_nJob ==  JOB_KNIGHT || m_nJob ==  JOB_BLADE )0 x. ?% w: o# Q3 ]8 S8 p) j4 R2 x
            nPoint += 120;
  y: ?5 r; _: d3 f) R$ B        else if( m_nJob ==  JOB_JESTER || m_nJob ==  JOB_RANGER )$ z% x3 I0 H4 @0 [5 J
            nPoint += 150;
2 N# o( b  E8 g; H, r7 W) F, ]        else if( m_nJob ==  JOB_RINGMASTER )
5 p' V) v% L3 W            nPoint += 160;
: }: n8 T1 j: ?# ?4 m, j        else if( m_nJob ==  JOB_BILLPOSTER || m_nJob ==  JOB_PSYCHIKEEPER )
9 p# E4 a( _8 z& F            nPoint += 180;
+ e# A; d  C/ M: Z( u- P        else if( m_nJob ==  JOB_ELEMENTOR )
$ ~9 Z+ B% s; C$ N4 H            nPoint += 390;
, G6 N  N7 h7 K4 g+ I1 F: o6 n        else if( nJob ==  JOB_LORDTEMPLER_HERO || nJob ==  JOB_STORMBLADE_HERO )
& p- z5 _6 a/ {9 v/ R/ G# f            nPoint += 120;+ o+ D8 A7 d* ?1 t5 p$ ^
        else if( nJob ==  JOB_WINDLURKER_HERO || nJob ==  JOB_CRACKSHOOTER_HERO )+ X+ a8 G5 I" s
            nPoint += 150;. E: C1 F1 I( U
        else if( nJob ==  JOB_FLORIST_HERO )
4 c1 N2 J8 m3 ]            nPoint += 160;* p8 h" \' `5 U# f
        else if( nJob ==  JOB_FORCEMASTER_HERO || nJob ==  JOB_MENTALIST_HERO )* d9 V9 E' g' {
            nPoint += 180;% j& M2 Y3 D+ K) E$ r# q: t9 q8 y+ Z
        else if( nJob ==  JOB_ELEMENTORLORD_HERO )
# `% x% t2 s3 |' M8 X            nPoint += 390;
3 d- ]8 q+ |) Y* L' H0 X2 F! {* v# b
) o" {% e* i! X$ C, `9 q* p        AddSkillPoint( nPoint );
" A& }4 P, M1 }+ n/ o1 C. e" G0 g% q        m_nLevel = nLevel;& M8 ]& I3 p$ i8 `
1 s1 a+ Q5 k# E# v6 |
        SetJobLevel( nLevel, nJob );
/ `  e% ~1 G2 N        m_nDeathLevel = nLevel;
9 b8 b# H/ X7 K2 u: D# |( P1 M( K. v' ~% o#if __VER >= 10 // __LEGEND    //    10?÷ àü?????o??    Neuz, World, Trans
/ c0 Q' R' w7 ?# M6 B2 I        if(IsMaster())
( b: n/ K5 Q0 U7 o! C* e        {
' f! `7 ^  R' t6 w3 O% Y, M/ m            int dwTmpSkLevel = 1;//60, 72, 84, 96, 1084 Y. A. r" a+ |8 ^: O
            if( nLevel > 59 && nLevel < 72 )# [5 N. g6 U  U2 M
                dwTmpSkLevel = 1;
1 v* @: }* C' w, @3 h( M            else if( nLevel > 71 && nLevel < 84 )" z, U+ m1 y9 V$ y  H2 B
                dwTmpSkLevel = 2;
! ], L) a- q0 i/ I            else if( nLevel > 83 && nLevel < 96 )
8 a  |! `' d. |# A$ m) Y# \                dwTmpSkLevel = 3;
7 h3 s+ N. P* }. A& F7 t            else if( nLevel > 95 && nLevel < 108 )$ g0 w1 X% |2 Y& C
                dwTmpSkLevel = 4;
" H2 o& u" K5 h( g- p$ X, c2 ]            else if( nLevel > 107 && nLevel < 120 ). w8 D4 Y- W4 E1 K- N) |
                dwTmpSkLevel = 5;% ~6 ^! w# E# A- E) r8 \7 e0 B
            for( int i = 0; i < MAX_SKILL_JOB; i++ )
; ^! E" Q: B# n            {                : _' o  J/ s( K6 C1 R$ s1 A! o
                LPSKILL lpSkill = &(m_aJobSkill);, D3 n7 y* B* n* X+ V
                if( lpSkill && lpSkill->dwSkill != NULL_ID ); ^3 T9 l, ?; }: X8 M9 C0 y: n+ g
                {" |' |* n, e0 K9 K: ]: S1 @
                    ItemProp* pSkillProp    = prj.GetSkillProp( lpSkill->dwSkill );            
. @1 Q" f3 f/ |8 ?8 N                    if( pSkillProp == NULL )
1 W& ]. M; ?6 l' x5 g; `3 Z8 S& n                        continue;2 D1 w% X$ o& w, @* ]
                    if( pSkillProp->dwItemKind1 != JTYPE_MASTER)
( E* m8 o, P, {4 j8 d- h! s# V$ O                        continue;7 a0 z+ V1 v/ U/ [# `
                    lpSkill->dwLevel = dwTmpSkLevel;- b4 L# ?2 Z6 K
                }
* i% |. @8 [6 s3 m            }1 {: I: q; V+ X! P$ K7 M; h
        }! T0 @5 [" j1 V$ |0 K# d: l9 [
        else if(IsHero())
& \% o' i3 L1 z* j3 f& x        {3 H# U$ K2 n! V1 b9 w- m6 O! _/ O
            for( int i = 0; i < MAX_SKILL_JOB; i++ ) ! O+ K& y; |- u# Y; A4 ?" K' L
            {               
3 k3 f) B; m0 C- f9 u" J* C                LPSKILL lpSkill = &(m_aJobSkill);) E- T. Z  r5 Z" V8 H
                if( lpSkill && lpSkill->dwSkill != NULL_ID )
2 S) c4 ^: a6 @5 C2 `2 d/ m2 c                {
# X  ~1 ?  Z' `  a" `; O                    ItemProp* pSkillProp    = prj.GetSkillProp( lpSkill->dwSkill );            
& X& _, o/ j( w- B& ?                    if( pSkillProp == NULL )
! j* E- {# v8 K. x5 H4 C. B4 O                        continue;
9 D; \8 Q+ Z( E4 g7 q9 j1 A$ x                    if( pSkillProp->dwItemKind1 != JTYPE_MASTER)
5 }3 k0 }1 Q/ b5 b                        continue;- @8 Q" i4 F( J6 m& I6 m
                    lpSkill->dwLevel = 5;8 V3 q4 d- K6 F. \
                }8 g- [$ U7 l- T) B! C' B6 _9 j
            }
* V6 f* e( P3 Y4 P5 y- n        }
; h% a+ F2 V# V' B) o0 I        else if(IsLegendHero())6 m1 N% _( C* y2 c
        {6 \/ g8 o; S% G, a
            for( int i = 0; i < MAX_SKILL_JOB; i++ )
- ^- {5 f+ y' D* E5 ]5 t! t            {                * M. o8 Y, T7 t
                LPSKILL lpSkill = &(m_aJobSkill);: P: w# E' L% \( y: D- ~
                if( lpSkill && lpSkill->dwSkill != NULL_ID ). b1 _( X7 U" G4 W# [# P
                {
4 M' |+ f8 N& i+ d                    ItemProp* pSkillProp    = prj.GetSkillProp( lpSkill->dwSkill );            0 V/ {' P1 J4 v5 p
                    if( pSkillProp == NULL ): R% K) L; h" W; |( m' K4 F
                        continue;0 k6 t1 x% M: y0 O; Y* `
                    if( pSkillProp->dwItemKind1 != JTYPE_MASTER)
' _9 C* o4 |( |8 n                        continue;/ x) E3 j( \/ J5 p( S- C9 ]
                    lpSkill->dwLevel = 5;) I3 S0 N- W, c* K; @8 k4 C
                }7 H) M9 x0 G- `2 `
            }
* q4 I; l6 D+ X% q: {$ F        }
; Q$ q9 m$ C4 ~& F# M  a#endif    //     __LEGEND    //    10?÷ àü?????o??    Neuz, World, Trans
9 s* g4 F# J: S3 ^! C2 i" q6 z        if( bGamma )
5 }5 M7 j, u6 L* _* o1 d* F        {
% z* ^; }+ z$ C! W, d" m) a/ x            m_nExp1 = 0;1 l' c+ m; o" b
        }
1 Z: S  H. S7 ~( n
) a* F, r% Y4 s6 U/ Z# y$ d; i        ( (CUser*)this )->AddSetChangeJob( nJob );
0 g) w- j8 x: z9 W: S' P/ y        g_UserMng.AddNearSetChangeJob( this, nJob, &((CUser*)this)->m_aJobSkill[MAX_JOB_SKILL] );
5 D6 w1 v  f: `
: D, A# N3 y. t) b' t5 V) y' @# e' I  x! c. \) \/ Q' S
#if __VER >= 11 // __SYS_PLAYER_DATA
% u" D7 M1 C! d/ f& \4 s        g_dpDBClient.SendUpdatePlayerData( (CUser*)this );
0 Y: d8 j0 f# P- N#else    // __SYS_PLAYER_DATA
5 r; v$ j* a+ R. n9 }        g_DPCoreClient.SendPartyMemberJob( (CUser*)this );. T3 H6 q# h, E
        g_DPCoreClient.SendFriendChangeJob( (CUser*)this );
( M4 y6 T$ z8 {4 f        if( m_idGuild != 0 )
  o) i* n0 E) q            g_DPCoreClient.SendGuildChangeJobLevel( (CUser*)this );" ~/ K, h: G7 Z
#endif    // __SYS_PLAYER_DATA  ]5 o( K$ s* t" W
        SetHitPoint( GetMaxHitPoint() );( ~+ o) ]) I+ |* g8 |- I! k
        SetManaPoint( GetMaxManaPoint() );' R7 J9 X) H0 a0 m2 C
        SetFatiguePoint( GetMaxFatiguePoint() );
8 O* ?6 w" t/ o# E        if( nJob >= 1 && nJob <= 4 )
$ j" M/ O3 i7 E" G" I$ K        {
9 w+ }6 c3 m7 r7 N% c/ K, s+ F# J            m_nStr = m_nSta = m_nDex = m_nInt = 15;- c3 C5 x, x' n$ e2 Z& c
            m_nRemainGP = 28;. `6 ^5 K& F8 F( H
        }7 M# Z! o8 B: U
        if( nJob >= MAX_PROFESSIONAL && nJob < MAX_MASTER )
3 ]( F* G, `5 k& i- a9 b9 _& w        {+ E- W# H+ Z, z, G1 c" v% @; b
            m_nRemainGP = 118;/ Y. ^1 |% n/ @% F/ n8 s% W! h# v: e
            //m_nRemainGP = ( m_nSta - 15 ) + ( m_nStr - 15 ) + ( m_nDex - 15 ) + ( m_nInt - 15 ) + m_nRemainGP;0 Z6 O; o% J( Y4 Q
            m_nStr = m_nSta = m_nDex = m_nInt = 15;
! c( E2 W+ t) e9 G4 T' W- F1 D        }3 ?+ E8 x# N. E) H+ }1 Y
        if( nJob == JOB_MENTALIST_HERO || nJob == JOB_FORCEMASTER_HERO )* G& _) f/ R2 t1 Z# }2 r& Y' S
        {
. Q; V9 O; @& Y' ^            CItemElem itemelem;
1 a0 ?$ v, ], @3 Q* j            itemelem.m_nItemNum = 1;9 H$ d0 i& Y  I2 P! P% j. k; ~
            itemelem.m_bCharged = TRUE;( w% B$ _# r6 ?& z+ C
            BYTE nID;
" b7 `; o+ s9 R' O, h
( ~1 i) O1 {) n: R* C4 |            if( nJob == JOB_MENTALIST_HERO )  b- A$ `0 A; Q5 k
                itemelem.m_dwItemId = II_WEA_BOOK_BOKROMAIN;7 y" [% I4 r2 j4 f: ]9 d" T
            if( nJob == JOB_FORCEMASTER_HERO )
' i/ [; U; ^0 I* x: ]# n; ]                itemelem.m_dwItemId = II_ARM_ARM_SHI_ZEMBATO;5 o) D6 p) l% ]- q
$ }- M2 o9 }* l6 B2 F; B
            ( ( CUser*)this)->CreateItem( &itemelem, &nID );! z5 c% q3 V  B+ d$ |/ l8 e  ~
        }
1 E. C. n/ e: @        g_UserMng.AddSetLevel( this, (WORD)m_nLevel );
2 e3 K. J4 C2 d& r, q5 g        ( (CUser*)this )->AddSetGrowthLearningPoint( m_nRemainGP );
4 x: z7 g' R8 `& a, k, J6 v        ( (CUser*)this )->AddSetExperience( GetExp1(), (WORD)m_nLevel, m_nSkillPoint, m_nSkillLevel );% S  ?4 V: \1 y3 v- P% {& ^9 d
        /*( (CUser*)this )->m_playTaskBar.InitTaskBarShorcutKind( SHORTCUT_SKILL );
/ P4 r" ~; k- i1 ~. R1 H3 _8 j        ( (CUser*)this )->AddTaskBar();*/  e0 q8 a) C) h# m7 m
        ( (CUser*)this )->AddSetState( m_nStr, m_nSta, m_nDex, m_nInt, m_nRemainGP );/ t6 x+ i8 {& t( o# L0 f. m
#if __VER >= 13 // __HONORABLE_TITLE            // ′Tà?
( H& B0 o+ y2 Z% Q* I' }        ((CUser*)this)->CheckHonorStat();( W# t5 h5 d; K' N/ c  {
        ((CUser*)this)->AddHonorListAck();) l3 r, K1 Y+ @7 Q- c( N
        g_UserMng.AddHonorTitleChange( this, m_nHonor);
  J  r$ Y+ }7 d3 ~#endif    // __HONORABLE_TITLE            // ′Tà?
2 A# N# `5 y" s8 Q6 ?5 L0 [5 h    }" t3 C: u+ G7 T5 H
#endif // __WORLDSERVER
2 Y0 A3 h* o, Z. f5 d; f- T/ F}  1 U* N+ H- `/ K3 G$ N
) I9 p" }! J  A* y  Q; X
然后你进入functextcmd.cpp并添加以下
3 O4 u  z1 i6 |! n
; s2 \% N, P7 l% @; f7 A) {2 {6 i# D代码:
- \, r/ N$ _, u6 DON_TEXTCMDFUNC( TextCmd_say,                   "say",               "say",            "??",             "??",      TCM_SERVER, AUTH_GENERAL      , "?ó?èàó [/?í·é ??àìμe 3???]" )- c. H; T5 K" e+ p% w5 O$ ]
下面插入
7 V0 J- Y1 h. \! BON_TEXTCMDFUNC( TextCmd_rebirth,              "rebirth",          "rebirth",             "?ú·1?÷??",       "?ú·1",    TCM_SERVER, AUTH_GENERAL   , "?ú·1?÷??" )  ' F+ u9 h9 c2 T4 q( r) G3 R2 Z
6 x. H) Y5 V: F% Y" b
然后你去; L& l- x4 q9 j+ F: x8 M3 t
  h0 N/ U$ g; ]% y" o# C
代码:
% ^, A& S+ [5 W8 b" ^* p8 G, r代码' @- L1 T, q. ^# O5 u+ {
BOOL TextCmd_ClearPropose( CScanner & s )
+ G7 O8 C  P& e3 Y6 d$ R' ]9 b{
9 g3 F* K! v6 |9 ]6 M#ifdef __WORLDSERVER
* X: \: c3 s. y% A5 i    CUser* pUser    = (CUser*)s.dwValue;
; h1 F2 X& g$ g( Q/ A, v    g_dpDBClient.SendClearPropose();. D8 E. F* k+ G. f9 g' ^
#endif    // __WORLDSERVER4 j7 ?4 u" \5 q4 N8 A4 Z
    return TRUE;1 A. P* \# C. G2 e+ z. A
}( r4 U$ a. k1 d
下面插入8 U! g3 T. Z& a) a( O1 u! w; y
BOOL TextCmd_rebirth( CScanner& scanner )
- x! J& \9 i- Q7 v( ^& P{3 s- v! V2 Q$ w
#ifdef __WORLDSERVER
5 i$ F5 `. ~1 VCUser *pUser;
# w+ [& R# A7 S. j- G* F' \; H% Y# ]pUser = (CUser*)scanner.dwValue;
2 S; _2 w& C7 x# `# r# \# i, ~if(pUser->m_nLevel >= 150 && pUser->IsLegendHero()). ?( l* |2 [3 _$ I8 ]( w" [: M
pUser->InitLevelPumbaaa( pUser->m_nJob-16,60);+ }; W0 {4 o! c3 r1 j8 A/ N  l
else
# B! H! ^4 m- HpUser->AddText("你还未达到重生条件!");
9 B2 @( `* {" f- R, @1 g0 Y#endif
+ K7 `+ u% w: V. t, G/ ?return TRUE;0 y, V- u; O# `% H0 S6 x
}  
0 I5 e! p+ G! V3 N3 D3 [. \( g3 n9 I3 k

  C! Q, k! {! ^4 k/ n7 d, A; p
* R; j- v+ T: G: g/ N7 u1 c6 @5 w1 I& M, G. i
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-12-1 14:50 , Processed in 0.078460 second(s), 22 queries , Gzip On.

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

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