飞飞世界论坛

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

通过命令重生

[复制链接]

197

主题

203

帖子

1086

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
1086
QQ
跳转到指定楼层
楼主
发表于 2016-1-10 03:42:30 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
至于V15和源文件发布重生不再使用通过HP它不再去我会告诉你如何可以通过与它聊天源befehel; o* L0 _8 T0 q

8 x* z" Q2 M& u2 C  M. g/ WMover.h
- |$ D5 t* s8 z! v7 @8 h代码:" V/ M1 a3 N# G! K) m/ p0 {7 g
找到: void            InitLevel( int nJob, LONG nLevel, BOOL bGamma = TRUE );            // °′???| nLevel·? 1ù2?áü% t2 l9 a8 `" N6 t5 x6 B
* V% L+ g, ]' M: R5 i$ v+ j& u  w
下面插入: void            InitLevelPumbaaa( int nJob, LONG nLevel, BOOL bGamma = TRUE ) ;  5 c6 x& |" U$ I2 G* Q8 y+ `; A: J: m

' Q  f" K1 s3 I# z9 W+ P( O然后你去mover.cpp添加
, d% ~# c  K2 O: l# R- ?' s1 J8 r  v. O0 g
代码:  v  P$ m, _# c7 S
void CMover::InitLevelPumbaaa( int nJob, LONG nLevel, BOOL bGamma )
) S" @0 ]7 l2 E. P# F; a' ^& R{
* m, A# ^4 l' f: @; q9 ^; F8 r#ifdef __WORLDSERVER
; ^# \1 Z* O2 l% S" J4 w    // ???μàú ?í·éà?·? ·1o§?÷ ??′?°÷àó8 k! G+ h$ a6 v$ w
    MoverProp* pProp = GetProp();0 [; X, ~7 |  e) H- @. l  I! |* T- t
    if( pProp )- g+ H9 G5 M7 @& C: p, G0 z) y
    {
  h* H$ j) q5 _# D0 A, N, x        if( nJob > 0 && nJob < MAX_LEGEND_HERO )7 H! p7 P3 O0 w& X
        {8 j0 k$ l! U6 ]* b0 r+ |
            AddChangeJob( nJob );
8 t7 V6 z4 j9 e$ _" N1 a0 t        }else{5 m& W$ r4 v: _2 t. r( p% m
            return;
. k. v7 E# `" _7 ]4 ^9 j        }; ]- U' q3 t" j) b0 {+ D+ o2 p
        int nPoint = 0;
0 K: d( ]- f$ T. a& L$ ?        if( m_nJob == JOB_MERCENARY )$ v# u3 }* k) c" i% \
            nPoint += 40;
: K& H0 B" k! y* k# v. \/ s* _        else if( m_nJob == JOB_ACROBAT ): @6 d' r/ N  r$ r3 [0 Y
            nPoint += 50;
0 c6 R/ a$ v1 b) V) r" _7 e        else if( m_nJob == JOB_ASSIST )+ v0 F# K6 O: g* _
            nPoint += 60;' K. e" T- m  X6 l
        else if( m_nJob == JOB_MAGICIAN )0 z2 y3 x6 S8 x5 P
            nPoint += 90;
: K: q& ~0 B! s4 ^2 C5 @3 l        else if( m_nJob ==  JOB_KNIGHT || m_nJob ==  JOB_BLADE )
6 \; W8 o: n' v            nPoint += 120;
- v3 n- x1 g# a0 H" W1 f        else if( m_nJob ==  JOB_JESTER || m_nJob ==  JOB_RANGER )
/ i9 d5 V0 C8 m* D            nPoint += 150;
9 g' {* ^; e7 d/ _5 V' d% U& K        else if( m_nJob ==  JOB_RINGMASTER )7 Y7 X/ v5 p/ j* f6 x
            nPoint += 160;
6 _) O( G/ F, G' b* B' g& ]        else if( m_nJob ==  JOB_BILLPOSTER || m_nJob ==  JOB_PSYCHIKEEPER )+ w  \5 ?* l0 @1 U! w+ \" a- u# L
            nPoint += 180;
* F& ]- ]1 N# ?, _' \( y2 n3 o        else if( m_nJob ==  JOB_ELEMENTOR )
% c: @3 e* J/ l0 O: y            nPoint += 390;
: ~. |+ G; v0 E4 h% T        else if( nJob ==  JOB_LORDTEMPLER_HERO || nJob ==  JOB_STORMBLADE_HERO )7 n+ L  m$ [$ S; g
            nPoint += 120;
( m9 V- K9 L$ L        else if( nJob ==  JOB_WINDLURKER_HERO || nJob ==  JOB_CRACKSHOOTER_HERO )# C  X$ z; B3 i. ?6 E! D9 q5 J
            nPoint += 150;' ~, U7 N. S( e
        else if( nJob ==  JOB_FLORIST_HERO )
' F9 I, ~3 p5 G" v4 e# a1 m3 ?            nPoint += 160;1 [5 p2 e1 Z7 {$ z, M$ C
        else if( nJob ==  JOB_FORCEMASTER_HERO || nJob ==  JOB_MENTALIST_HERO )6 B9 z" K# D8 ~0 U. o$ f
            nPoint += 180;
& V- }- }1 q+ z" W+ f6 e        else if( nJob ==  JOB_ELEMENTORLORD_HERO )! j4 `* s5 `( [& U0 W+ Q7 E
            nPoint += 390;
" H! W; e! k  x/ U; c" V- k: A; S# g* \6 X
        AddSkillPoint( nPoint );4 Q9 ]4 c, J5 T  S6 ?" D
        m_nLevel = nLevel;! n6 m( G; E# u8 G- \# ]+ n

: W) E. _' n  ?) K6 q7 w8 [        SetJobLevel( nLevel, nJob );. }- X! U7 ^5 h! x) {
        m_nDeathLevel = nLevel;( U: r) A$ W# A3 J6 d/ l7 k* V
#if __VER >= 10 // __LEGEND    //    10?÷ àü?????o??    Neuz, World, Trans) M& G+ i9 W, r
        if(IsMaster())
" E! t; g2 o2 p        {
0 x' m3 u% X- t/ y; w. K  v            int dwTmpSkLevel = 1;//60, 72, 84, 96, 108( m( U* c3 n. z5 u5 L8 [& A
            if( nLevel > 59 && nLevel < 72 )& o: A8 B' J3 W4 n5 P/ a) S
                dwTmpSkLevel = 1;
: j7 X, ?0 }/ A: e, p            else if( nLevel > 71 && nLevel < 84 )
( R- A- @+ {5 |7 l( c& e                dwTmpSkLevel = 2;* l% K  ?) s, @: l
            else if( nLevel > 83 && nLevel < 96 )1 b1 W$ }/ {$ f/ g% l& u& t! r
                dwTmpSkLevel = 3;5 {1 b! B$ J+ L; V: z* C) t1 N1 B
            else if( nLevel > 95 && nLevel < 108 )! {0 s$ e9 G* L- N7 L2 I) _; g
                dwTmpSkLevel = 4;& y3 K2 X5 o9 C3 ?% j) y8 {
            else if( nLevel > 107 && nLevel < 120 )
5 O$ [) c9 B9 k1 \- l4 H3 `9 l) b5 T                dwTmpSkLevel = 5;( c, Q6 X" P) U; V
            for( int i = 0; i < MAX_SKILL_JOB; i++ )
2 z) ~/ @, P$ y            {                ) \( v1 \! a$ }% P: z
                LPSKILL lpSkill = &(m_aJobSkill);
. F: I& E( R% V) \                if( lpSkill && lpSkill->dwSkill != NULL_ID )
9 o' F* s4 G1 O! f                {
- o6 Q$ x2 M& k) c                    ItemProp* pSkillProp    = prj.GetSkillProp( lpSkill->dwSkill );            ; j* ^0 g$ i  l3 Q
                    if( pSkillProp == NULL )
/ H* @2 b" F9 @2 S                        continue;. Q: u! f; q2 i7 ^
                    if( pSkillProp->dwItemKind1 != JTYPE_MASTER)0 K- J! M8 P5 `, Z- y+ Q6 f
                        continue;/ |, b8 z0 J. }1 A
                    lpSkill->dwLevel = dwTmpSkLevel;6 q0 }1 b* H) i0 I$ u2 A
                }
  ~* c. x6 h5 F" E( ?; k  t) K            }/ ^6 j. i. b& ^* E, U
        }4 l& b- a# i8 z7 N
        else if(IsHero())  [2 R4 B1 P5 [' `' B+ Q* Z
        {
! n7 r' J9 Z1 N1 t6 _& H' r            for( int i = 0; i < MAX_SKILL_JOB; i++ ) 1 {* T# z3 E% d+ c# t$ F  _
            {                / U9 ?* f; [/ g! r$ p  u
                LPSKILL lpSkill = &(m_aJobSkill);
$ A( w! B! r* \4 z# K5 P5 t) ]2 s2 `; B                if( lpSkill && lpSkill->dwSkill != NULL_ID )
4 m4 y6 M* G% U  ^6 |                {3 z6 l2 Q0 A. H7 S" u
                    ItemProp* pSkillProp    = prj.GetSkillProp( lpSkill->dwSkill );            
5 U% Y, e2 w& X$ r. c$ ]                    if( pSkillProp == NULL )! S: ~5 {  W: N' M
                        continue;" ^- z% U/ U! U0 g: l' l( U9 c
                    if( pSkillProp->dwItemKind1 != JTYPE_MASTER)
9 _! \% J/ i2 s0 a' S- I8 k                        continue;
: d4 D2 r. \' _  m* x1 S7 E; ~                    lpSkill->dwLevel = 5;
6 m2 p- d% Y9 t) ]+ u- Q# g5 K+ i$ S                }
& d! C" ^( n! q; F* Q! X3 ~8 h            }
7 l- Y0 I* _" M% E( T7 K9 C$ W: h7 r        }
$ }7 U/ ~3 a$ a6 t. v0 O        else if(IsLegendHero())
9 u! h! w. R9 H  w) G        {
0 @1 `5 |  m9 I  J0 F            for( int i = 0; i < MAX_SKILL_JOB; i++ ) 1 r3 q  {& {& m& w" \0 @5 e: w
            {               
$ m' S; M3 p" `: g& K                LPSKILL lpSkill = &(m_aJobSkill);4 l5 y+ S2 J3 t, W
                if( lpSkill && lpSkill->dwSkill != NULL_ID )0 i5 e! }' T0 j! ^3 a6 C( E
                {
/ o) L% ?4 q4 G" R9 Z* u; H0 o                    ItemProp* pSkillProp    = prj.GetSkillProp( lpSkill->dwSkill );            
, X0 |% L, C0 c1 p                    if( pSkillProp == NULL ); Y3 I6 _% ]4 \2 p7 I" d8 ?3 `( Z
                        continue;
% v4 U% ?, E7 G1 r. ?  C! t) k                    if( pSkillProp->dwItemKind1 != JTYPE_MASTER)
. r: Y+ b+ Z  S* c1 ~                        continue;
7 B$ n3 [( G% F  {" a# Z                    lpSkill->dwLevel = 5;) J2 }8 t" g8 N7 f
                }
: j( z" a- b/ {- T            }5 `- j# x: P! J2 f, I5 C& k, D7 ?
        }
1 x3 n" r! I, `- e#endif    //     __LEGEND    //    10?÷ àü?????o??    Neuz, World, Trans+ x" ]. q: d% E
        if( bGamma )
( k2 p! @( j; W. w& F& W5 e$ T  V        {8 R" o$ U' q& v3 [4 a+ O
            m_nExp1 = 0;
' f: Q" w! f. f( u        }8 G! L5 T7 E/ C

2 n. G" E& t+ k7 y& s+ u! W        ( (CUser*)this )->AddSetChangeJob( nJob );3 n! k8 p( I$ A6 B9 E
        g_UserMng.AddNearSetChangeJob( this, nJob, &((CUser*)this)->m_aJobSkill[MAX_JOB_SKILL] );; |' Q  b1 Q/ K% t3 ^! }
7 b. i. P6 c9 H+ g7 D! D

3 }7 D2 L8 y; n5 K+ Y! X. l#if __VER >= 11 // __SYS_PLAYER_DATA3 Z8 h9 j2 X6 D5 M4 L" ], x0 T4 x& ]
        g_dpDBClient.SendUpdatePlayerData( (CUser*)this );( X2 p4 K4 ]9 \. N0 A/ B
#else    // __SYS_PLAYER_DATA
5 ~9 {* r( }& R7 i- B+ h        g_DPCoreClient.SendPartyMemberJob( (CUser*)this );
8 ^9 D2 N" [2 m: a- l, c* |; l$ D        g_DPCoreClient.SendFriendChangeJob( (CUser*)this );( E" B3 O# U; l( N, L, k7 F$ u
        if( m_idGuild != 0 )' M( G$ A" e  D- P5 X
            g_DPCoreClient.SendGuildChangeJobLevel( (CUser*)this );  D  h8 Y6 H6 H2 C8 M
#endif    // __SYS_PLAYER_DATA
, Y7 \) T# P6 f" P, S  J, `6 |" R/ m" W        SetHitPoint( GetMaxHitPoint() );! d6 ]0 x+ C+ }7 n+ `2 k, N
        SetManaPoint( GetMaxManaPoint() );3 E) T- D  S9 {( W2 q$ ?8 r
        SetFatiguePoint( GetMaxFatiguePoint() );% p9 e+ }) C: S  j$ [
        if( nJob >= 1 && nJob <= 4 )
1 c1 n: w+ ?+ ^" h        {
' t- M3 g1 ?/ f            m_nStr = m_nSta = m_nDex = m_nInt = 15;
' F6 y# U* s5 g4 T, j# C5 j            m_nRemainGP = 28;+ ~- I2 N* ~! x3 @6 }
        }
2 k/ ]+ g' T0 @8 J, N        if( nJob >= MAX_PROFESSIONAL && nJob < MAX_MASTER )
1 R( \. t: _! W1 H. z        {
0 J0 U" r8 c6 h3 k            m_nRemainGP = 118;! \/ `0 w9 s9 A& {( E% i  X
            //m_nRemainGP = ( m_nSta - 15 ) + ( m_nStr - 15 ) + ( m_nDex - 15 ) + ( m_nInt - 15 ) + m_nRemainGP;5 i0 h& V& W! k. r( S; ~: i- R
            m_nStr = m_nSta = m_nDex = m_nInt = 15;
0 A) @: `" B, `1 _/ g5 X        }
8 ~% j1 W+ r. v3 S        if( nJob == JOB_MENTALIST_HERO || nJob == JOB_FORCEMASTER_HERO )3 O1 p/ y7 h! J% O, e, c
        {' p& A4 i) K1 {! I
            CItemElem itemelem;
# ~6 A# g  W' n4 L            itemelem.m_nItemNum = 1;. |' I4 O% t7 T& Z6 f" U/ }
            itemelem.m_bCharged = TRUE;$ m' B; O$ H1 ?2 j# |8 R
            BYTE nID;
  f# O' g9 [  {! S4 J8 M3 Y
' k  v; w7 R2 E  T* k+ I            if( nJob == JOB_MENTALIST_HERO ); S6 _) m0 @  O! ~) n: Q+ [
                itemelem.m_dwItemId = II_WEA_BOOK_BOKROMAIN;
+ a* |1 |, X0 K. m            if( nJob == JOB_FORCEMASTER_HERO )
; i8 I: F+ B$ q) }4 f+ t- |9 b                itemelem.m_dwItemId = II_ARM_ARM_SHI_ZEMBATO;
. G7 u4 v/ I) A2 s' r/ h
" G- }/ l/ m6 w5 T+ w& ~            ( ( CUser*)this)->CreateItem( &itemelem, &nID );
; d+ U" n; q4 L/ [5 A        }9 B, [; J9 I0 k) a5 h% j. B
        g_UserMng.AddSetLevel( this, (WORD)m_nLevel );
; B! @; k% c( J+ l7 i4 Z& D& P5 [- A        ( (CUser*)this )->AddSetGrowthLearningPoint( m_nRemainGP );: S3 h( r8 y( C+ S" ~/ m5 D
        ( (CUser*)this )->AddSetExperience( GetExp1(), (WORD)m_nLevel, m_nSkillPoint, m_nSkillLevel );  u5 ~+ b/ |) F; V3 b$ {
        /*( (CUser*)this )->m_playTaskBar.InitTaskBarShorcutKind( SHORTCUT_SKILL );/ @+ h- G% I; S: U
        ( (CUser*)this )->AddTaskBar();*/" M% Z5 @8 f7 n5 H$ `
        ( (CUser*)this )->AddSetState( m_nStr, m_nSta, m_nDex, m_nInt, m_nRemainGP );
, l5 u# X) ]$ V7 E- d) A#if __VER >= 13 // __HONORABLE_TITLE            // ′Tà?
7 m: U+ `+ g/ l; e" `        ((CUser*)this)->CheckHonorStat();
. ~  O: Y7 }2 I2 h8 d0 N9 n        ((CUser*)this)->AddHonorListAck();
' j; I7 `6 y3 U( K7 D        g_UserMng.AddHonorTitleChange( this, m_nHonor);
5 ~$ ^6 I! Q: W; p#endif    // __HONORABLE_TITLE            // ′Tà?
" |6 n' d3 q5 k9 X    }8 \* t% |, q+ K7 H( H4 L( d& L2 U, _
#endif // __WORLDSERVER9 l8 o( H( r; L9 V* t
}  
- x3 {: v2 S# @7 P% i
. p+ N4 F' M/ x+ L% p) o然后你进入functextcmd.cpp并添加以下
& ~4 r7 j+ D0 `, t, E  f' U
* X9 v: A1 e4 l% J  k1 y代码:
# d! E6 h8 g2 ~5 _0 u6 G8 Z8 yON_TEXTCMDFUNC( TextCmd_say,                   "say",               "say",            "??",             "??",      TCM_SERVER, AUTH_GENERAL      , "?ó?èàó [/?í·é ??àìμe 3???]" )- T" Q8 u. N! m( P
下面插入
7 l) E9 _0 b/ u) Q& K& JON_TEXTCMDFUNC( TextCmd_rebirth,              "rebirth",          "rebirth",             "?ú·1?÷??",       "?ú·1",    TCM_SERVER, AUTH_GENERAL   , "?ú·1?÷??" )  - X/ C9 O! @+ k. W+ N
4 D& [" v+ S) L
然后你去6 M; _% `3 V% \3 _. v
% f% P' @/ J# M* `
代码:! d8 w" M9 |1 N8 X" A
代码
& A# u$ t; J8 n* L) nBOOL TextCmd_ClearPropose( CScanner & s )3 D* Y4 V- H5 H) n( V
{: G* ?5 U. ?3 d# `
#ifdef __WORLDSERVER. |8 E) B& j$ T  X8 S# A
    CUser* pUser    = (CUser*)s.dwValue;
3 P* P- K" H% j% g! a6 j    g_dpDBClient.SendClearPropose();! J* C* l) i# s
#endif    // __WORLDSERVER! `2 j; h+ g6 v8 i: L
    return TRUE;
" T% y$ H/ K6 S" @}2 a- u0 g  B7 O5 k9 a( F; _8 Z+ m
下面插入
& F2 ~) K6 ?/ \# Q) f* ^& ABOOL TextCmd_rebirth( CScanner& scanner )
' Y* F9 f3 [/ O{5 t3 g& @. E' a1 E" q
#ifdef __WORLDSERVER
! W! g: }2 I" ]CUser *pUser;- Q. t8 G( X9 z8 k- q  O, ^0 D" W+ M
pUser = (CUser*)scanner.dwValue;
; |8 i5 P; \0 _6 S6 Zif(pUser->m_nLevel >= 150 && pUser->IsLegendHero())
+ L: ~3 j& P- \( ^pUser->InitLevelPumbaaa( pUser->m_nJob-16,60);( D# K3 o2 q# o2 A+ K. }4 |/ n- c7 d
else
5 o  O% ~- }, y/ Z% x2 v5 _pUser->AddText("你还未达到重生条件!");- @) [& d3 ?5 l  J  k
#endif
" d) E/ T3 G; Z- ^5 ?$ ~; i: b) Areturn TRUE;; @, t6 j/ v. Y) w0 Y5 y( _3 j; z
}  4 q0 c. P# O5 a- a
8 x% X/ S1 B5 x
3 F1 v5 G9 r6 g

2 e0 s) P$ _% J0 T' n
% V$ M  b3 A- J3 h
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-12-30 22:35 , Processed in 0.076763 second(s), 23 queries , Gzip On.

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

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