飞飞世界论坛

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

通过命令重生

[复制链接]

197

主题

203

帖子

1078

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
1078
QQ
跳转到指定楼层
楼主
发表于 2016-1-10 03:42:30 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
至于V15和源文件发布重生不再使用通过HP它不再去我会告诉你如何可以通过与它聊天源befehel, y. T* l; {5 G# R3 Z8 v2 `; V
! u8 ~  r+ }4 A% z% A
Mover.h
# [4 f5 Z6 V, S代码:6 F. M6 e9 E7 s+ }: \+ f
找到: void            InitLevel( int nJob, LONG nLevel, BOOL bGamma = TRUE );            // °′???| nLevel·? 1ù2?áü  z) R- s/ }2 H1 p+ Q7 s
  g% M7 m* Q0 @( R( e
下面插入: void            InitLevelPumbaaa( int nJob, LONG nLevel, BOOL bGamma = TRUE ) ;  
( ~9 p& U& p8 X6 H) [( f: b) g/ \% L0 |  p# a
然后你去mover.cpp添加$ L6 D9 q! F- U3 ^; H2 c5 Q
* R( W; Q7 ?; p. \: l
代码:6 F2 h7 C( m# B/ B
void CMover::InitLevelPumbaaa( int nJob, LONG nLevel, BOOL bGamma )% @, F8 X" F& j( N* e
{  h" m3 G2 z1 v) s+ S
#ifdef __WORLDSERVER
8 _1 P1 n) [3 m7 x+ d' Q6 j    // ???μàú ?í·éà?·? ·1o§?÷ ??′?°÷àó
: S1 N" S& I% y/ s    MoverProp* pProp = GetProp();0 [: [6 ^" e( {, V3 o$ K
    if( pProp )
8 N& k6 R. R( _6 p8 i    {
- i6 h8 {) `4 H7 W! d% O8 p$ N        if( nJob > 0 && nJob < MAX_LEGEND_HERO )3 \. Z# r7 a' z6 i; b4 ~
        {
! b  _3 q. l) t) x& {2 P            AddChangeJob( nJob );
, K9 g/ R9 A* {; j2 {        }else{7 y! b1 D9 i7 Q3 Y
            return;/ d2 u' m9 Y% B/ N* _% T! [5 k
        }
  I) V7 q( |+ W        int nPoint = 0;
, v- |5 w# x6 h7 ~* C        if( m_nJob == JOB_MERCENARY )$ `1 v, _; U: ^5 n
            nPoint += 40;
; t4 `3 {, F. c& c0 @' S1 R$ t        else if( m_nJob == JOB_ACROBAT )
, c3 ]4 G2 b) p1 l, }            nPoint += 50;% h0 k8 b. W1 |8 R. K& Q
        else if( m_nJob == JOB_ASSIST )0 ^+ w5 M5 k4 e& e. `! M
            nPoint += 60;
$ u- K8 g$ t! D4 q9 a        else if( m_nJob == JOB_MAGICIAN )5 m& [' O  u; R: k
            nPoint += 90;  W+ c  \7 n% n! S& N/ Z4 _- ~
        else if( m_nJob ==  JOB_KNIGHT || m_nJob ==  JOB_BLADE )2 P* d8 o  T9 d, S
            nPoint += 120;
- o& ^' d3 y% D( M* I. @        else if( m_nJob ==  JOB_JESTER || m_nJob ==  JOB_RANGER )- ?  t5 W- C: z' J/ C1 S% C2 X+ V4 w
            nPoint += 150;, w' L9 p0 K9 A4 h. }
        else if( m_nJob ==  JOB_RINGMASTER ): [- V7 C9 P2 e
            nPoint += 160;- b5 J% o; L' Y% B- B! ]0 @9 b
        else if( m_nJob ==  JOB_BILLPOSTER || m_nJob ==  JOB_PSYCHIKEEPER )# r' z. e+ W" x3 J9 l& Q( Q; y
            nPoint += 180;
5 u: J% D' z/ |/ }! y. }        else if( m_nJob ==  JOB_ELEMENTOR )
& J# X; L, D/ F( g* Y/ |2 k0 M/ l            nPoint += 390;
, @0 e7 j4 V$ c        else if( nJob ==  JOB_LORDTEMPLER_HERO || nJob ==  JOB_STORMBLADE_HERO )7 ^( D5 U6 A6 d9 @8 ^. X
            nPoint += 120;6 R2 b$ q6 D  g3 s
        else if( nJob ==  JOB_WINDLURKER_HERO || nJob ==  JOB_CRACKSHOOTER_HERO )
' T4 ~6 B8 x9 Q5 G% q' T            nPoint += 150;
& ]6 w+ W0 I  {- [, B/ _        else if( nJob ==  JOB_FLORIST_HERO )
; y: X* \8 {! C+ C, y7 S) t            nPoint += 160;. u7 ~$ \. J9 D0 |
        else if( nJob ==  JOB_FORCEMASTER_HERO || nJob ==  JOB_MENTALIST_HERO )3 |) n9 r6 p/ Z2 x6 C" D- d
            nPoint += 180;
- Z8 I# d7 _& k# |5 a1 s        else if( nJob ==  JOB_ELEMENTORLORD_HERO )1 F4 X$ P! n. a2 t+ r
            nPoint += 390;
6 \! o2 ~8 X2 o/ V& v
* @- o+ u+ E0 ]1 U6 ~        AddSkillPoint( nPoint );
( K: N4 @5 T/ _7 ?9 Z0 @4 b* V8 p- C$ L        m_nLevel = nLevel;
* g# r3 x8 F2 w4 \
' e$ a" O2 t; x1 Q' S        SetJobLevel( nLevel, nJob );% u0 p9 V2 M4 z( b
        m_nDeathLevel = nLevel;
1 |$ U8 d' B/ }* m8 j" d#if __VER >= 10 // __LEGEND    //    10?÷ àü?????o??    Neuz, World, Trans2 B4 k* C( Z* k6 [
        if(IsMaster())3 t: y+ o+ J0 I
        {1 ?4 o" H' G+ U$ Z( V0 }2 Z
            int dwTmpSkLevel = 1;//60, 72, 84, 96, 108, y; M1 s* d8 u% d( `! p7 M
            if( nLevel > 59 && nLevel < 72 )* H" k" x3 S" h! w
                dwTmpSkLevel = 1;
& F0 n* ], _: S$ r! u6 s6 R7 l% T            else if( nLevel > 71 && nLevel < 84 )3 G' z: V* ^, G3 E  O5 n, [1 V
                dwTmpSkLevel = 2;6 c$ ~- e5 U% r
            else if( nLevel > 83 && nLevel < 96 )
4 K0 f! @% a* L3 O6 O$ x3 E                dwTmpSkLevel = 3;5 B( C3 `: S. _! z5 J
            else if( nLevel > 95 && nLevel < 108 ), w1 l" [6 n% c; E% @; I7 J" M
                dwTmpSkLevel = 4;, f" D5 ~  I3 F- w; k, B
            else if( nLevel > 107 && nLevel < 120 )
$ U5 Y; i9 g4 b: G1 y                dwTmpSkLevel = 5;3 o3 W. v9 S. g- ]4 q# Q& I% f$ \
            for( int i = 0; i < MAX_SKILL_JOB; i++ )
$ A; P  I' g# o9 H) x0 {            {               
0 ^1 |5 C0 N% s9 k! J3 p/ n: q, D                LPSKILL lpSkill = &(m_aJobSkill);
6 F- u# n8 z( D8 D                if( lpSkill && lpSkill->dwSkill != NULL_ID )
6 K9 T7 m5 ~& Z' i3 ?7 J                {
" N; d7 X, H* T. i( b' E                    ItemProp* pSkillProp    = prj.GetSkillProp( lpSkill->dwSkill );            ' D: e! ~, ?# D8 {: k
                    if( pSkillProp == NULL )) B; W3 M0 C2 y1 P: b
                        continue;; N3 U# \. F3 p+ K$ m( q
                    if( pSkillProp->dwItemKind1 != JTYPE_MASTER)
2 R! Q1 s2 h. f                        continue;; I2 P" H  z5 N; \" F
                    lpSkill->dwLevel = dwTmpSkLevel;% r. r) `" E2 |
                }. ^9 Y6 h; g  J! g
            }+ f# l8 J! q- o* N5 h$ ~9 b
        }
& p7 e8 `0 e1 `* I8 N        else if(IsHero())
% P; F* k/ J  [; }* z        {
" X  R/ _$ ~6 q. k  R  ~            for( int i = 0; i < MAX_SKILL_JOB; i++ ) 6 B1 P2 r; y9 H
            {               
0 F& Z; }5 W- ^& z                LPSKILL lpSkill = &(m_aJobSkill);
5 Y) r* _5 J0 F* s( i+ Z2 W' ?                if( lpSkill && lpSkill->dwSkill != NULL_ID )$ j+ a  ~0 x: r! p# t  z$ _
                {
2 b. S1 Q. r0 w4 w1 {, {) e                    ItemProp* pSkillProp    = prj.GetSkillProp( lpSkill->dwSkill );            
$ f# C& a4 w2 ]  N5 H6 z                    if( pSkillProp == NULL )
6 L9 X6 f" R4 A                        continue;
. p+ H* J- f6 L( O8 _7 R                    if( pSkillProp->dwItemKind1 != JTYPE_MASTER)6 ?$ o+ L  L7 \. I" W) B
                        continue;
' b+ Q7 U" O9 h% E% ]                    lpSkill->dwLevel = 5;
6 I! L' I9 s) o: D7 l) H                }
2 s, K- L& x- S% d# k            }" f4 w* ?: |" J, `; u% ]
        }4 z4 z6 m( ~/ |
        else if(IsLegendHero())  {& K) _2 Z4 I: s- R
        {
- E% l7 A& i' x9 U            for( int i = 0; i < MAX_SKILL_JOB; i++ ) ! B0 L. @5 W! b% q' |' G) y
            {                $ r& F( w8 V7 g$ m  @6 A) c( B+ G9 L
                LPSKILL lpSkill = &(m_aJobSkill);
  o! Y3 x8 G) o% q5 r5 G* E                if( lpSkill && lpSkill->dwSkill != NULL_ID )5 c3 R9 l. ]3 v7 m; }( U
                {3 v* V& a  ~6 T2 k" A
                    ItemProp* pSkillProp    = prj.GetSkillProp( lpSkill->dwSkill );            8 @6 C. T( D  P6 V
                    if( pSkillProp == NULL )0 n, ]2 r/ \4 S  ~) l% g, S( @
                        continue;
" D7 a/ z" G, ^: [                    if( pSkillProp->dwItemKind1 != JTYPE_MASTER)4 M5 y! @+ p1 r7 w$ }8 t, ^
                        continue;
' c  M7 P  i- l                    lpSkill->dwLevel = 5;
$ Y$ r1 g% o# M: o' ^                }! t* H3 B1 t: y9 o" Y  W
            }: Y% i5 t; |& g$ w2 ]! ?4 M" k
        }
% ^* D, {9 E, {/ J0 k0 U/ b/ W8 b#endif    //     __LEGEND    //    10?÷ àü?????o??    Neuz, World, Trans9 s% b" Y# b$ q3 w7 a1 k
        if( bGamma )
! Q; Z# `$ S' w" ~        {
8 T3 {9 {/ w& t- @            m_nExp1 = 0;' b9 D1 P1 V7 B- j3 ~
        }# Y/ r: _+ H' u  D5 M
7 s  Y, v1 m: {3 n* d. T+ ~
        ( (CUser*)this )->AddSetChangeJob( nJob );& B- c) R/ X2 a5 o
        g_UserMng.AddNearSetChangeJob( this, nJob, &((CUser*)this)->m_aJobSkill[MAX_JOB_SKILL] );/ g& o( @; z. d. k) R' _$ \4 `

( K8 v% E. i, r# O4 s* R7 P7 M
3 q! O6 p# K& O( g6 \* Q: X' O#if __VER >= 11 // __SYS_PLAYER_DATA
! O" h& R2 Q1 \) M# n        g_dpDBClient.SendUpdatePlayerData( (CUser*)this );
# w6 V  D. q0 j( y2 Q#else    // __SYS_PLAYER_DATA+ q" Q$ {7 @4 N! \2 x; U$ \
        g_DPCoreClient.SendPartyMemberJob( (CUser*)this );
* e. ]. b" n7 G- K' c        g_DPCoreClient.SendFriendChangeJob( (CUser*)this );
( u' }5 f9 D4 \9 ]9 o        if( m_idGuild != 0 )
  d* T) Q9 h1 i7 H& k: Z  w- _            g_DPCoreClient.SendGuildChangeJobLevel( (CUser*)this );
. ~5 }: H0 L  \5 g  T( `8 O#endif    // __SYS_PLAYER_DATA
8 {# X' a  {% e! I8 a0 q3 |3 }        SetHitPoint( GetMaxHitPoint() );/ f* b' J& j: b* p2 K
        SetManaPoint( GetMaxManaPoint() );
; R- E' ~6 _. M9 j# O4 ~        SetFatiguePoint( GetMaxFatiguePoint() );
' k0 f) B( O5 d1 |$ F3 m        if( nJob >= 1 && nJob <= 4 )
1 D* R8 S% C/ k( d3 }: \" s        {6 Z; h# ]: t: E+ L) D
            m_nStr = m_nSta = m_nDex = m_nInt = 15;0 [9 m! {. z5 ~% @: `6 g- |; k
            m_nRemainGP = 28;
: v; {( v3 {6 v        }
7 }6 z3 X4 P+ B1 f9 u9 k7 C( `* ?( K) M        if( nJob >= MAX_PROFESSIONAL && nJob < MAX_MASTER )
3 K4 G9 |0 d1 Q, U, K        {
( {2 H, p$ T4 c, ^: b% x. m            m_nRemainGP = 118;
. N/ n- H4 o9 `$ M, w6 d            //m_nRemainGP = ( m_nSta - 15 ) + ( m_nStr - 15 ) + ( m_nDex - 15 ) + ( m_nInt - 15 ) + m_nRemainGP;
; e2 Q5 `$ g5 q+ ~            m_nStr = m_nSta = m_nDex = m_nInt = 15;* n' ^+ O- ~1 |) l' ]+ T8 l- T
        }
9 C% ?  B( @: @        if( nJob == JOB_MENTALIST_HERO || nJob == JOB_FORCEMASTER_HERO )
  c* L0 Y" q9 N: V7 A7 N4 U) A% s% i        {! X) o* Y1 Y8 d7 n% E
            CItemElem itemelem;
5 g* q; i; X7 m# P& T- U  W            itemelem.m_nItemNum = 1;
3 t. S' |2 k* j3 f8 g            itemelem.m_bCharged = TRUE;
" d3 c/ V: C; b, j6 Z            BYTE nID;
/ p# b; ~4 {. F/ o6 ^8 ^9 F' T  O3 z# D/ M
            if( nJob == JOB_MENTALIST_HERO )$ q. X& S. N8 ?1 B# _' |% q( J2 O
                itemelem.m_dwItemId = II_WEA_BOOK_BOKROMAIN;
# ~: G, X% ], m9 e" t            if( nJob == JOB_FORCEMASTER_HERO )! H+ \% [  M, `3 u
                itemelem.m_dwItemId = II_ARM_ARM_SHI_ZEMBATO;
8 T. j4 v0 a# b0 _9 ~( {" {1 T' ^& E+ o$ C0 U4 y! S/ B
            ( ( CUser*)this)->CreateItem( &itemelem, &nID );9 r5 J6 q3 q! G
        }
1 P& G# m8 n, m        g_UserMng.AddSetLevel( this, (WORD)m_nLevel );# H/ z: N1 x. D
        ( (CUser*)this )->AddSetGrowthLearningPoint( m_nRemainGP );. u+ ^, O% O- p5 @# F
        ( (CUser*)this )->AddSetExperience( GetExp1(), (WORD)m_nLevel, m_nSkillPoint, m_nSkillLevel );. \' ^5 ~3 @% m2 }2 ]
        /*( (CUser*)this )->m_playTaskBar.InitTaskBarShorcutKind( SHORTCUT_SKILL );
  u) z$ T5 v" \& }        ( (CUser*)this )->AddTaskBar();*/
# L8 L( b6 Y, r        ( (CUser*)this )->AddSetState( m_nStr, m_nSta, m_nDex, m_nInt, m_nRemainGP );, N  J# }' ^2 @0 d0 X7 ]2 M; h
#if __VER >= 13 // __HONORABLE_TITLE            // ′Tà?- f8 y+ r0 ]" E0 L$ {0 L6 V3 H! r
        ((CUser*)this)->CheckHonorStat();
5 `+ ?* e. r- u3 B$ h3 P7 e        ((CUser*)this)->AddHonorListAck();
0 I% z3 b$ p7 E        g_UserMng.AddHonorTitleChange( this, m_nHonor);
+ S, w' ]( v+ W: D- v: o3 d6 n8 I#endif    // __HONORABLE_TITLE            // ′Tà?  Q  e6 _* P: H6 r
    }  h5 ?; q$ V4 |; W; U# ~/ s
#endif // __WORLDSERVER
, P9 D% \5 t( Y3 p+ G% x6 t8 W}  
0 X4 {0 j7 z' ~. M' y
6 A1 n8 T6 t# s3 M然后你进入functextcmd.cpp并添加以下4 A5 Y' _' B% w, `6 z4 y1 y* V
$ _4 m# H. X* B( H: z
代码:
/ m# ~+ E. H7 _$ \  i( o) l* j$ OON_TEXTCMDFUNC( TextCmd_say,                   "say",               "say",            "??",             "??",      TCM_SERVER, AUTH_GENERAL      , "?ó?èàó [/?í·é ??àìμe 3???]" )
1 A6 F* N. f3 \下面插入' p& H( _* ?% W5 ?
ON_TEXTCMDFUNC( TextCmd_rebirth,              "rebirth",          "rebirth",             "?ú·1?÷??",       "?ú·1",    TCM_SERVER, AUTH_GENERAL   , "?ú·1?÷??" )  + C, s6 ^$ k$ B2 T3 H. L. D+ O

. u2 x$ d  r0 U' s/ I3 b然后你去
! @& y9 W! Q: |7 u9 j# m9 @5 e- V7 ?  c
代码:
8 U( O# F- r* `代码; S- e% l2 \) U# N1 h& o
BOOL TextCmd_ClearPropose( CScanner & s )
: F8 Q" Q5 J0 X$ t( B{
  j# k* i4 C7 g#ifdef __WORLDSERVER
! Q! d. Q+ i8 n' [4 U    CUser* pUser    = (CUser*)s.dwValue;
5 ?8 i$ Z3 S7 r8 R  y4 f  J2 A    g_dpDBClient.SendClearPropose();
$ V6 k/ n. [# O0 J& g$ y/ @. k#endif    // __WORLDSERVER
/ t. u4 J( ]8 T+ R" h. x3 H, @! {    return TRUE;
- h$ m, a; ]) d. N5 d}/ t6 f# @6 V5 t) y! A
下面插入
) n) p3 j3 E) ^8 x; l& {& B  e( |2 PBOOL TextCmd_rebirth( CScanner& scanner )
7 T# g5 ~9 P, P{
4 v+ J/ W/ A- {7 Y) v, b#ifdef __WORLDSERVER1 L$ z! E  Q: [" n% R6 l( E
CUser *pUser;) L. C) d- Q+ e, S! d( y) L6 W& V
pUser = (CUser*)scanner.dwValue;. V+ i3 S3 a* z/ K- p- T' M- v; M, U
if(pUser->m_nLevel >= 150 && pUser->IsLegendHero())/ N4 J" B, C5 S! F3 I
pUser->InitLevelPumbaaa( pUser->m_nJob-16,60);8 a" ]7 S: x5 g/ k$ {
else+ i; Q& i1 ~- H# N  g( }: y
pUser->AddText("你还未达到重生条件!");1 B+ `( C4 |* Y5 X  S* j3 m( ^
#endif
$ ]  K8 N# M- L$ x& f) l* s$ S7 u1 Preturn TRUE;
* l, G  m' X. z/ j! h/ m8 Z) J}  , o% a6 e# n- R% }( L

9 s' h( H! @* n  F- w
+ a, n! c& k% ]. J2 Y5 x7 ?
0 h' c- N' c# B# B- V4 E
, H* t6 r; G( _+ k& }0 X4 y% u
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-10-24 16:25 , Processed in 0.071173 second(s), 22 queries , Gzip On.

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

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