飞飞世界论坛

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

通过命令重生

[复制链接]

197

主题

203

帖子

1086

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
1086
QQ
跳转到指定楼层
楼主
发表于 2016-1-10 03:42:30 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
至于V15和源文件发布重生不再使用通过HP它不再去我会告诉你如何可以通过与它聊天源befehel  F4 d% H" S2 [
  d; d5 o, a& Z$ F6 ]
Mover.h
1 ?. U; N- K! c/ Y' Q9 D* @代码:
2 M( T& J3 N# q% q; J找到: void            InitLevel( int nJob, LONG nLevel, BOOL bGamma = TRUE );            // °′???| nLevel·? 1ù2?áü* ?) B4 r: x" L: L, N% R

  T5 D$ L7 a6 z: z1 N+ Z下面插入: void            InitLevelPumbaaa( int nJob, LONG nLevel, BOOL bGamma = TRUE ) ;  
, U5 `9 K/ I2 F, M# v- x) B9 B7 g$ D% \: s0 @( b( j2 D
然后你去mover.cpp添加
3 a+ Q: W6 \: G7 B: O# p. D' d5 r8 Z; [; O5 C
代码:
2 Y. p, K$ x- d: u4 G1 Y' \void CMover::InitLevelPumbaaa( int nJob, LONG nLevel, BOOL bGamma )
1 i4 L8 A6 c6 ^/ @{- z4 D5 ~( M4 B7 v+ v9 V" f
#ifdef __WORLDSERVER
3 u# o% O! P) |" l4 M; s  n    // ???μàú ?í·éà?·? ·1o§?÷ ??′?°÷àó) u. G& D7 v' Z. M/ U- x2 H
    MoverProp* pProp = GetProp();
9 L0 y5 m7 O# [. l, E! S: u+ f: B    if( pProp )5 I: K( R& d. R; u0 f
    {
0 V( @. ~1 ~( h, r+ g2 J, U9 P6 Y        if( nJob > 0 && nJob < MAX_LEGEND_HERO )  H9 V! D) O! r1 k! f, {$ C0 t% j
        {3 ^& M- x; r6 E4 n& n
            AddChangeJob( nJob );
6 e+ q8 ^$ ^( R- r. C+ R        }else{# K' g( |' z" l' Y: a8 ^' n6 V
            return;
. v" q8 j  R9 P% E; z8 e1 y1 c8 l        }
# X2 ~5 W- P; g+ ?. `, K        int nPoint = 0;
7 v. v: E% v" S9 N        if( m_nJob == JOB_MERCENARY )
8 v0 X+ c8 R9 g( h1 S            nPoint += 40;
) \2 A# b! E% N* n! \1 X5 `        else if( m_nJob == JOB_ACROBAT )
. @' p. V! z+ o6 C1 C1 F) o3 t            nPoint += 50;
9 F- n- h1 q1 Z        else if( m_nJob == JOB_ASSIST )3 j3 t: P! [, z; b" ^
            nPoint += 60;+ X7 x% ^: k+ L3 w. D9 |  X1 @
        else if( m_nJob == JOB_MAGICIAN )
, B  ~  \: F/ s9 S- P4 W            nPoint += 90;
5 |& [- S$ e# @$ s4 [        else if( m_nJob ==  JOB_KNIGHT || m_nJob ==  JOB_BLADE )
$ R7 G5 m2 A" l/ B7 ^1 d2 o            nPoint += 120;$ e/ v" x* f, u5 j2 L
        else if( m_nJob ==  JOB_JESTER || m_nJob ==  JOB_RANGER ), R1 z0 Z$ x2 X
            nPoint += 150;# V. K# m* ?* L# O* U) J
        else if( m_nJob ==  JOB_RINGMASTER )
! `+ _/ F$ V- y- J; l" f2 K            nPoint += 160;
) N$ t7 o, T4 c' l7 l& ]        else if( m_nJob ==  JOB_BILLPOSTER || m_nJob ==  JOB_PSYCHIKEEPER )/ N4 g3 D: \/ e! D% N
            nPoint += 180;
- p2 s; A. \$ I+ j; H        else if( m_nJob ==  JOB_ELEMENTOR )
" f: _! b- A2 t" H2 M# c2 s) \            nPoint += 390;8 T% }* M8 [/ B% Q) G
        else if( nJob ==  JOB_LORDTEMPLER_HERO || nJob ==  JOB_STORMBLADE_HERO )
, A, i9 V) {$ J% N# ~. \3 K9 p            nPoint += 120;
5 ]1 C. q" Q% s& X; ?" G& C        else if( nJob ==  JOB_WINDLURKER_HERO || nJob ==  JOB_CRACKSHOOTER_HERO )( A! r( t. [6 L$ ^. K! c. i
            nPoint += 150;- H: C+ A3 D9 Z
        else if( nJob ==  JOB_FLORIST_HERO )
0 ^- v9 o. k8 G$ i' R2 e# R            nPoint += 160;8 N, l" q# M; `3 _1 P9 N
        else if( nJob ==  JOB_FORCEMASTER_HERO || nJob ==  JOB_MENTALIST_HERO )1 O/ K1 e7 i( {1 A9 [$ `
            nPoint += 180;. H. h4 t; ^; H: ^( M
        else if( nJob ==  JOB_ELEMENTORLORD_HERO )
2 b! I1 k$ f8 _; Y; H            nPoint += 390;9 C- m" C! @- T% h
# |- B$ m, y" X2 P6 w
        AddSkillPoint( nPoint );
: J  w# N& F3 N5 E& q, }& L        m_nLevel = nLevel;
. J7 e3 T4 K, T+ I" R/ b) ?6 o5 j
6 `" Q- E% p9 T9 e! ]5 k# U        SetJobLevel( nLevel, nJob );/ g$ p& V9 l% n8 y: X& f; O
        m_nDeathLevel = nLevel;6 e3 ]& m1 j  z
#if __VER >= 10 // __LEGEND    //    10?÷ àü?????o??    Neuz, World, Trans! b$ J# E* E& T, x1 d  E
        if(IsMaster())+ B) p" B% M9 ~- X+ W1 q3 G
        {
  Q! V  ^1 a5 n# }. ^            int dwTmpSkLevel = 1;//60, 72, 84, 96, 108& z5 b1 i# t' k! s. p7 W) W
            if( nLevel > 59 && nLevel < 72 )
4 ^7 A5 d+ R3 i                dwTmpSkLevel = 1;+ h+ }8 H6 P* \" Z
            else if( nLevel > 71 && nLevel < 84 )% I* T' X* X/ d  d9 A" j, F, C
                dwTmpSkLevel = 2;
6 S6 S  y( m& }6 `  \# y            else if( nLevel > 83 && nLevel < 96 ), y3 U% R8 g1 l! n" Y
                dwTmpSkLevel = 3;5 c. y2 F1 `- Y5 J+ z
            else if( nLevel > 95 && nLevel < 108 )6 L- p# Y8 K. C) J8 w$ u
                dwTmpSkLevel = 4;
9 T. Q' e5 c5 s1 w" U$ q& X5 Y2 E1 R            else if( nLevel > 107 && nLevel < 120 )
  A7 s! p* n2 v6 u9 G* @# q' R                dwTmpSkLevel = 5;4 l! Q  F3 L' E
            for( int i = 0; i < MAX_SKILL_JOB; i++ ) 2 C1 P" x5 x# H
            {                : @4 }, |/ Q/ E
                LPSKILL lpSkill = &(m_aJobSkill);5 }$ q8 n" K% Y: l0 a
                if( lpSkill && lpSkill->dwSkill != NULL_ID )1 b6 A. E) x6 W9 V) n
                {3 x8 b+ n% k, f. _3 L% w2 X4 V/ g
                    ItemProp* pSkillProp    = prj.GetSkillProp( lpSkill->dwSkill );            + \* i3 e# H! j
                    if( pSkillProp == NULL )' y1 P, n" ~. t4 u
                        continue;
( r; n  O& J! k; v" e! X                    if( pSkillProp->dwItemKind1 != JTYPE_MASTER)
; o8 z. A$ ]5 e7 Q1 \; x7 \/ O                        continue;2 ]8 E2 i, D7 T- _$ [- `
                    lpSkill->dwLevel = dwTmpSkLevel;, S! x6 _- Y1 s" g; E3 w- C
                }* ?1 E# i/ k# b8 [( ]6 K( Q
            }
7 l) h: i# v( U) p9 |# y* C+ }7 m' A/ _        }
: [* c4 g9 O9 l0 P5 M        else if(IsHero())
. k; E" Y$ q% m$ ^5 ~) z8 |        {
5 f- e0 d( P  g+ J) [: P) E            for( int i = 0; i < MAX_SKILL_JOB; i++ ) 2 I0 G+ v+ _+ \
            {                ' O' L- i" x# I  n; W
                LPSKILL lpSkill = &(m_aJobSkill);
! S* G; V$ q0 j0 O  l) i( k/ z: C, w3 i                if( lpSkill && lpSkill->dwSkill != NULL_ID )4 ^* |: O' A( {  I; T2 l. C: y
                {+ |9 u* l8 X+ X1 I: F; H
                    ItemProp* pSkillProp    = prj.GetSkillProp( lpSkill->dwSkill );            8 t! z$ u+ o+ b. `: h/ E
                    if( pSkillProp == NULL )  K& K, V1 U, [7 E0 R$ G/ l' P
                        continue;
5 P+ h: N  _) w4 E' [# }& `8 V                    if( pSkillProp->dwItemKind1 != JTYPE_MASTER)
% ?" \- L2 x; U. z; d+ S7 n+ T" u                        continue;
: P# ]+ n; U, ]4 W, n                    lpSkill->dwLevel = 5;+ e; A9 }, s6 R% D- q; G4 J: V
                }* I1 w3 k) w9 `5 R5 f; c
            }* b2 J, l; B, l# W
        }
! w( s- X! p( l8 N        else if(IsLegendHero()). g! B, y) f" {
        {: ^( w$ H  H. x" r! m
            for( int i = 0; i < MAX_SKILL_JOB; i++ )
! u- C5 U, m4 C. q' r  W            {               
" d* c. y% u5 k$ Q# J: }                LPSKILL lpSkill = &(m_aJobSkill);. D" E* {8 b3 D0 c) Z
                if( lpSkill && lpSkill->dwSkill != NULL_ID )
( D+ B' B# U% w/ Z1 Q                {) n7 Q1 C5 J9 `. Z! V7 f; O' W$ L7 F* K
                    ItemProp* pSkillProp    = prj.GetSkillProp( lpSkill->dwSkill );            
) ]% C8 N0 L4 L& R& v, q5 [6 U/ c. |                    if( pSkillProp == NULL )
: a, r: F$ W4 x" X                        continue;; a) ~! d( m7 c! A+ O/ T
                    if( pSkillProp->dwItemKind1 != JTYPE_MASTER)
5 w, b! C2 L7 y' e0 }                        continue;8 }; E2 d9 S9 Y' w6 R; [
                    lpSkill->dwLevel = 5;) t% ^; G3 z9 ]% N8 f3 k
                }* g' j% H* @) |* D8 ^
            }
# e, h( n; t+ }/ _9 q        }
& e  y  B4 `" {/ o#endif    //     __LEGEND    //    10?÷ àü?????o??    Neuz, World, Trans
' z7 z- Z1 n4 w4 K        if( bGamma )  p2 \/ l6 m, @0 C* ~6 x: K
        {
$ D* Y* q3 n% {            m_nExp1 = 0;
4 }2 Z6 l$ E' {' t9 [        }
8 {7 c2 W: P! k$ o) e! L1 Z4 {$ \
: Z+ P) l4 T0 }" {& I$ t0 G        ( (CUser*)this )->AddSetChangeJob( nJob );# I' [0 I1 K* \: q0 S# j$ h
        g_UserMng.AddNearSetChangeJob( this, nJob, &((CUser*)this)->m_aJobSkill[MAX_JOB_SKILL] );
1 X3 }2 E' x% h2 e* p* B) F
$ r# Q% m/ x& |: }8 [: C: ]' @% u7 e0 K( P; Y
#if __VER >= 11 // __SYS_PLAYER_DATA3 w: y2 i, L( H
        g_dpDBClient.SendUpdatePlayerData( (CUser*)this );
; }" Y* B% e) B/ b! T. C#else    // __SYS_PLAYER_DATA
. m2 J, X  q; r) }% Y! H& w# D6 A        g_DPCoreClient.SendPartyMemberJob( (CUser*)this );  \7 J. D0 d% B; M' \1 t
        g_DPCoreClient.SendFriendChangeJob( (CUser*)this );3 D! {' F" [, P5 B+ k) b
        if( m_idGuild != 0 )  }/ M9 U7 x6 z6 `
            g_DPCoreClient.SendGuildChangeJobLevel( (CUser*)this );/ x5 k+ W  R0 t# Q3 ^) m
#endif    // __SYS_PLAYER_DATA
9 {" w% C. z/ b* `& l        SetHitPoint( GetMaxHitPoint() );
) V& r9 A' g4 Y4 }! E        SetManaPoint( GetMaxManaPoint() );
0 L* I* Q" ]6 h! f        SetFatiguePoint( GetMaxFatiguePoint() );
' M. z& w5 w; n/ O* K% l& f, h        if( nJob >= 1 && nJob <= 4 )6 O+ O: x; a+ \  Z) F
        {9 w2 D1 ^' H7 ^. Z
            m_nStr = m_nSta = m_nDex = m_nInt = 15;6 R8 H  g/ h. Y  L! |1 A# W
            m_nRemainGP = 28;
9 M/ k0 V$ w1 O        }% t! b, }( \/ ?
        if( nJob >= MAX_PROFESSIONAL && nJob < MAX_MASTER )
; @. m+ K' u% D        {
6 U" i; X" |2 n, Y            m_nRemainGP = 118;$ C) o8 N9 `7 z4 V
            //m_nRemainGP = ( m_nSta - 15 ) + ( m_nStr - 15 ) + ( m_nDex - 15 ) + ( m_nInt - 15 ) + m_nRemainGP;
+ {4 V; i# b7 D. w; j8 }            m_nStr = m_nSta = m_nDex = m_nInt = 15;1 Q3 O* Q! i7 J% d9 W! S
        }+ d8 _) H0 B& y: [; V! F/ S) X
        if( nJob == JOB_MENTALIST_HERO || nJob == JOB_FORCEMASTER_HERO ): a; l7 b* H* K
        {6 b' J2 n$ V# A: j# l
            CItemElem itemelem;
  g* D; a  l; \1 q' S; q# ]* g5 a            itemelem.m_nItemNum = 1;6 z' T& X, w; A) t; I
            itemelem.m_bCharged = TRUE;- V% m, E/ a; u; ~% V' X! A# B& G/ _/ y
            BYTE nID;
5 r: P% t& v9 r: y, n2 `9 E* H- n( B
            if( nJob == JOB_MENTALIST_HERO )2 T8 d4 ?- Q9 t2 i# \
                itemelem.m_dwItemId = II_WEA_BOOK_BOKROMAIN;
: e0 _* u2 I9 K1 B5 D# U            if( nJob == JOB_FORCEMASTER_HERO )/ N! S0 \& T  J5 z6 o9 Q' u& F  s
                itemelem.m_dwItemId = II_ARM_ARM_SHI_ZEMBATO;$ v" V0 i5 \  F9 u2 t# f5 ^

2 G0 V2 X: l8 x$ N9 V; \3 `            ( ( CUser*)this)->CreateItem( &itemelem, &nID );
4 d) b0 O( Z+ T) s! p: v        }! l/ I* k* {8 ~6 p
        g_UserMng.AddSetLevel( this, (WORD)m_nLevel );* ?& m6 K" E* A
        ( (CUser*)this )->AddSetGrowthLearningPoint( m_nRemainGP );
3 d3 `0 ]( h' f1 W2 q5 ?        ( (CUser*)this )->AddSetExperience( GetExp1(), (WORD)m_nLevel, m_nSkillPoint, m_nSkillLevel );4 r; U& C/ [6 _2 I& @
        /*( (CUser*)this )->m_playTaskBar.InitTaskBarShorcutKind( SHORTCUT_SKILL );( X% v6 h7 t; Q
        ( (CUser*)this )->AddTaskBar();*/
/ \7 U% P. Q/ [" l        ( (CUser*)this )->AddSetState( m_nStr, m_nSta, m_nDex, m_nInt, m_nRemainGP );
4 D% d( P' {- D#if __VER >= 13 // __HONORABLE_TITLE            // ′Tà?- t' K& j8 j! F6 ^: w
        ((CUser*)this)->CheckHonorStat();
* L% {* @# E; V( v        ((CUser*)this)->AddHonorListAck();
' C- q. X; o; Y5 e        g_UserMng.AddHonorTitleChange( this, m_nHonor);8 w* f* y" k, A! C9 ]) a# d5 \
#endif    // __HONORABLE_TITLE            // ′Tà?, q& i# e& p6 K, B( z
    }, C+ W8 ~% y9 F# S" o
#endif // __WORLDSERVER0 A7 P. Y) {( `& Q) i: c& F
}  
0 f8 O/ p4 S; k2 V4 N6 F! w$ l( @2 A# ^4 ?; ~) A& D" S  K6 P& }1 i1 e6 ^
然后你进入functextcmd.cpp并添加以下5 \8 g& p7 x; _+ d

+ H6 h- H% V9 O/ b3 X  ^- I# |代码:
' H/ Q% ]8 _) d/ V7 J* d' {ON_TEXTCMDFUNC( TextCmd_say,                   "say",               "say",            "??",             "??",      TCM_SERVER, AUTH_GENERAL      , "?ó?èàó [/?í·é ??àìμe 3???]" )3 O6 t+ B% q1 t+ o4 ~" z
下面插入
/ w; P$ H! d; |; Y1 c, dON_TEXTCMDFUNC( TextCmd_rebirth,              "rebirth",          "rebirth",             "?ú·1?÷??",       "?ú·1",    TCM_SERVER, AUTH_GENERAL   , "?ú·1?÷??" )  1 s9 F1 s( j7 L2 P2 T6 o
9 u0 ?# v1 M" q6 M+ W
然后你去
& F0 t+ I" \4 ^# o+ Y; v0 n7 X$ y$ P8 I, c+ t- Z! ]' J. |" V
代码:
: N* C* u  D" f1 b/ T代码
2 B8 j- o3 |! ?  g# }' C1 iBOOL TextCmd_ClearPropose( CScanner & s )2 J1 Y4 |6 ~: p( b/ |  I6 G( e! N
{9 U$ i/ g4 X( s2 W" p0 K
#ifdef __WORLDSERVER
0 q6 L! B) A! ~( v+ H& V/ s    CUser* pUser    = (CUser*)s.dwValue;
- G6 y3 c, N9 D0 d% N- e3 k    g_dpDBClient.SendClearPropose();) x- S' Z& z% H% ?) \4 J7 c8 t
#endif    // __WORLDSERVER
& ?4 Z. d5 j5 x9 M1 Q3 s    return TRUE;* z, P7 v0 V- H! s3 o/ y$ Y6 U" }5 t
}
$ D0 R: \6 m! w# J下面插入( D1 w; D+ h0 \7 U  f; q
BOOL TextCmd_rebirth( CScanner& scanner )" u4 j* J! J" H
{7 `0 \% x, V5 Z2 G6 P" x
#ifdef __WORLDSERVER3 m" }5 |5 |, p4 O2 a  |
CUser *pUser;0 {2 ^( z* A) y- `
pUser = (CUser*)scanner.dwValue;
& s' y0 Q1 ~7 M- \" A) f  Rif(pUser->m_nLevel >= 150 && pUser->IsLegendHero())
8 A2 d3 |5 J& f8 W) bpUser->InitLevelPumbaaa( pUser->m_nJob-16,60);
0 Y2 o( A/ r( q$ P( P: pelse+ g/ F: C# t0 |% K! a
pUser->AddText("你还未达到重生条件!");
5 T; X1 f2 }6 V3 y/ Y$ D0 T- j5 _#endif
/ v$ C6 b% B$ q) j& G, Qreturn TRUE;$ |$ }# e6 @3 w& o0 G  \
}  
$ Y$ b7 U* g, Y1 U4 y/ }4 @5 h2 _& d1 c# u  F1 q( H" u0 m
4 e: G; z# j" U" {% Y( t

3 P/ c  n) I. `2 n0 K, M
) D" V& H# S+ I/ _- q
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-12-24 17:56 , Processed in 0.063387 second(s), 22 queries , Gzip On.

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

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