飞飞世界论坛

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

通过命令重生

[复制链接]

197

主题

203

帖子

1088

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
1088
QQ
跳转到指定楼层
楼主
发表于 2016-1-10 03:42:30 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
至于V15和源文件发布重生不再使用通过HP它不再去我会告诉你如何可以通过与它聊天源befehel3 S  P6 L6 u+ X$ N

2 R: @( O$ d: h+ U; T( t( p# n) AMover.h
3 Y% A8 @! I) V+ S; o% d代码:
5 X' f1 }9 x, [' h: w3 W找到: void            InitLevel( int nJob, LONG nLevel, BOOL bGamma = TRUE );            // °′???| nLevel·? 1ù2?áü0 N' A6 c+ k9 O, E" s
% z! d' S4 v, ?5 R4 o
下面插入: void            InitLevelPumbaaa( int nJob, LONG nLevel, BOOL bGamma = TRUE ) ;  # `- X, G7 m2 k2 x+ v
2 D4 ], o  _- ^. t0 R
然后你去mover.cpp添加
! ~- Y6 q- c, ?# J
0 p5 L, @! ?, a- q6 c" E代码:
# C) L  ~. Z" D! B' Q' Rvoid CMover::InitLevelPumbaaa( int nJob, LONG nLevel, BOOL bGamma )! \' z0 w& V3 Z* ?
{
% |7 K8 |- L# A% ~% v6 I#ifdef __WORLDSERVER5 B$ K- R) f# a# d4 |0 y
    // ???μàú ?í·éà?·? ·1o§?÷ ??′?°÷àó% {1 y' `0 U( [0 u1 v( {; |, r% j4 W# Q
    MoverProp* pProp = GetProp();/ d5 A; B$ a, e0 @, ~
    if( pProp )
0 R5 O2 |0 Y* ]) Q: H9 J    {6 p( ]# ]: U1 Q
        if( nJob > 0 && nJob < MAX_LEGEND_HERO )
$ j4 v) B: ^) p' h        {2 X' Q4 c, [- M3 ]6 v' j
            AddChangeJob( nJob );+ E* ?  E; U! J: L/ i6 B* b
        }else{: q1 m4 i* n5 R2 f; }
            return;8 J1 S3 X, L$ [/ c2 G: l
        }
9 i1 j+ {- e" w( a/ }6 J* k$ z        int nPoint = 0;
8 V4 J) E$ \1 `# h        if( m_nJob == JOB_MERCENARY )7 P2 E# d+ z: `- X. |4 t
            nPoint += 40;( S9 M% y4 I; N* H/ o7 ^2 \
        else if( m_nJob == JOB_ACROBAT )0 E8 P6 B0 G7 @" X* t
            nPoint += 50;
5 X. B: X# U$ o) h. S+ {! q        else if( m_nJob == JOB_ASSIST ). O9 H# j. L, G  f- Y1 L% j2 A  e) [
            nPoint += 60;/ L& [" I* _8 [( x: I
        else if( m_nJob == JOB_MAGICIAN ). Q" Y: @0 e8 Q1 r9 @* V4 z
            nPoint += 90;0 z  k5 G4 R: ~
        else if( m_nJob ==  JOB_KNIGHT || m_nJob ==  JOB_BLADE )2 H0 o# l; e' ~! E! g
            nPoint += 120;
2 H& a7 G( W4 M        else if( m_nJob ==  JOB_JESTER || m_nJob ==  JOB_RANGER )
: z+ m- r% n+ c* ^0 o6 e# B8 m( X            nPoint += 150;
  |3 w* W, V, y& e1 B        else if( m_nJob ==  JOB_RINGMASTER ), B' @2 c3 z0 c0 B
            nPoint += 160;
, y( i6 B7 F2 C4 O& }/ o& N        else if( m_nJob ==  JOB_BILLPOSTER || m_nJob ==  JOB_PSYCHIKEEPER )4 P8 [1 m! A' F6 W1 ?" w0 S5 m
            nPoint += 180;, }( \& l3 I$ o) R; B4 B7 z( Q5 `
        else if( m_nJob ==  JOB_ELEMENTOR )3 v8 E3 K* s$ |& V3 {
            nPoint += 390;
+ {8 z( b: E8 _; V6 R" _9 N        else if( nJob ==  JOB_LORDTEMPLER_HERO || nJob ==  JOB_STORMBLADE_HERO )
! _2 y: \0 x/ _2 V            nPoint += 120;' a! Z" @' U5 |
        else if( nJob ==  JOB_WINDLURKER_HERO || nJob ==  JOB_CRACKSHOOTER_HERO )
7 G' B0 L) n* r" N$ }            nPoint += 150;5 M# z: e$ R5 R1 b$ }& W  z4 j
        else if( nJob ==  JOB_FLORIST_HERO )' s+ k3 j5 j1 Q7 {8 E) u3 T
            nPoint += 160;: T2 d& x9 d/ V. f
        else if( nJob ==  JOB_FORCEMASTER_HERO || nJob ==  JOB_MENTALIST_HERO )
9 i0 E! N* O. J5 w( K            nPoint += 180;$ X, N. W! p4 L9 Y  o
        else if( nJob ==  JOB_ELEMENTORLORD_HERO )2 T: W! E# T1 B. k' B! o# r
            nPoint += 390;# \" P% V- ^7 {9 }
8 a3 g. V% x9 N- c! H
        AddSkillPoint( nPoint );2 H% [% ]! G2 G, q
        m_nLevel = nLevel;0 u- ^: ^- [5 N: b$ R
% s" I9 h+ b9 j. m4 l+ }% P7 J
        SetJobLevel( nLevel, nJob );" W: Y( e! [% D; N
        m_nDeathLevel = nLevel;& ^$ j) p3 a. W2 V8 K9 ?: W8 B
#if __VER >= 10 // __LEGEND    //    10?÷ àü?????o??    Neuz, World, Trans
0 v0 i7 X* K6 b- G        if(IsMaster())
9 N4 x0 {. L, n" m$ ^! C3 \! L* @        {9 j8 Q+ i/ m  U# x2 L8 v; i2 l* a
            int dwTmpSkLevel = 1;//60, 72, 84, 96, 1087 d& h5 q! V+ d. a6 |1 G% I9 U, s' r& v
            if( nLevel > 59 && nLevel < 72 )* d, N( }8 l9 C/ ]3 @! [. J& X
                dwTmpSkLevel = 1;
: a5 S+ S8 ~& i! Z0 e8 e            else if( nLevel > 71 && nLevel < 84 )
; V) h6 z0 u- C; A                dwTmpSkLevel = 2;( x% e) A/ j) P0 m# N  B
            else if( nLevel > 83 && nLevel < 96 )
" N$ ~1 E5 l' T! H                dwTmpSkLevel = 3;( S; W9 V# H. [9 X0 y
            else if( nLevel > 95 && nLevel < 108 )0 k' m1 o5 X! _( p
                dwTmpSkLevel = 4;1 _8 P& C4 _' _9 m# s3 O5 @! |# j
            else if( nLevel > 107 && nLevel < 120 )
! E$ V* h4 L$ {8 z( c% _                dwTmpSkLevel = 5;0 }3 e9 {; j/ W7 ?9 _$ v  f8 \% T
            for( int i = 0; i < MAX_SKILL_JOB; i++ ) - D3 Y; o, S6 k% R' Y" H, Z
            {                + O* L2 w) ^" y3 X
                LPSKILL lpSkill = &(m_aJobSkill);
+ j! `/ L) g" U8 Y! k0 n% h/ P% s                if( lpSkill && lpSkill->dwSkill != NULL_ID )/ {, `- E. B3 D
                {5 v( e& b! f" B( w" `. U
                    ItemProp* pSkillProp    = prj.GetSkillProp( lpSkill->dwSkill );            
0 G# V2 C" u6 }+ i                    if( pSkillProp == NULL )
7 {$ x& P! A7 k. k                        continue;- }6 _! c: j2 S# g- s
                    if( pSkillProp->dwItemKind1 != JTYPE_MASTER)' q* G5 x. r$ Z4 }* p" T( S. x
                        continue;2 }/ m3 i( d! V' B) w; x
                    lpSkill->dwLevel = dwTmpSkLevel;
* G2 n) ?1 l& e; R% N, B                }. ^  U+ l7 ^; P8 ?; c3 j1 S
            }! T8 d* s$ b/ Z2 w
        }
6 b0 {/ _! p7 ^8 t9 `; F: U4 D        else if(IsHero())
4 `6 Z3 n# @( g% Z4 Q        {
4 k# i8 }+ w; E  ^            for( int i = 0; i < MAX_SKILL_JOB; i++ )
8 Q5 }! x2 G! _0 e            {               
: P' X* Y9 |; Z1 R* L8 |                LPSKILL lpSkill = &(m_aJobSkill);
7 F& ^3 u( b7 w: A# }                if( lpSkill && lpSkill->dwSkill != NULL_ID )
3 v+ N' J1 z% [                {
+ z: A. U6 d+ L) y                    ItemProp* pSkillProp    = prj.GetSkillProp( lpSkill->dwSkill );            
7 M+ \7 ^( ?# }% C/ |                    if( pSkillProp == NULL )' s; C, x- G5 j: x4 _
                        continue;# w/ g- P. q1 b, k
                    if( pSkillProp->dwItemKind1 != JTYPE_MASTER)9 y* h5 Y% I9 K* R# ^" `
                        continue;
/ X3 K/ Q% a" d  A1 O, I4 ]                    lpSkill->dwLevel = 5;
. c$ H. {/ R) R7 Y  V* Q; e5 Z# I5 j4 [                }+ k. x. L  v% W6 `- g
            }2 y. k* f% _% L/ L4 }
        }& k/ M1 g% m" }0 t  p9 v" z; s
        else if(IsLegendHero())
7 V( ?4 W: J4 i$ w# H" r6 D6 C        {  U% O3 W, `, ?& e- A# |
            for( int i = 0; i < MAX_SKILL_JOB; i++ )
, a/ p0 H) i8 c4 g            {                $ \* n3 A0 J9 |! O2 l
                LPSKILL lpSkill = &(m_aJobSkill);
  Y7 K& I: t5 x. e                if( lpSkill && lpSkill->dwSkill != NULL_ID ); |  H# O$ Q6 ]$ V5 l: c
                {
0 u/ e0 y2 ^* X  z9 d8 k7 ~                    ItemProp* pSkillProp    = prj.GetSkillProp( lpSkill->dwSkill );            
9 n2 y$ A4 Q3 y                    if( pSkillProp == NULL )
+ ]8 z- ]0 a6 b" E2 v                        continue;
- M& k+ l6 x- u" j' X; [8 ~$ R! ^# A                    if( pSkillProp->dwItemKind1 != JTYPE_MASTER)% x( `: \2 R% _7 g' F
                        continue;- O, Y- v4 ?% v7 K" e8 f
                    lpSkill->dwLevel = 5;5 s  c7 ]- [2 v" N1 Y
                }
9 `: h& n! F1 T# _3 B) d            }6 |, U8 D) ]$ G9 V
        }
: V; _1 c. |5 |1 x9 y+ }2 m#endif    //     __LEGEND    //    10?÷ àü?????o??    Neuz, World, Trans. X, g6 b* Q! B
        if( bGamma )& h0 [. d6 S0 ?# v5 P
        {2 |, i$ I6 z1 N0 L2 A
            m_nExp1 = 0;
' r  Y, P0 x. N$ T$ A7 L  q        }0 Q+ U# u% |* B3 d% K

# o" E# i9 V0 ]        ( (CUser*)this )->AddSetChangeJob( nJob );% o9 h/ m# U. _
        g_UserMng.AddNearSetChangeJob( this, nJob, &((CUser*)this)->m_aJobSkill[MAX_JOB_SKILL] );
) q; |2 ?5 F6 ?7 C5 V7 L
# V" i$ l3 u2 t2 t- i7 Q+ @5 {! g3 u7 O0 k
#if __VER >= 11 // __SYS_PLAYER_DATA
; x8 L5 Q" H  [! ]: Q0 ~4 d        g_dpDBClient.SendUpdatePlayerData( (CUser*)this );& d4 E4 ]% s* I# R
#else    // __SYS_PLAYER_DATA
% q8 V& B  m( ~% N6 z; S9 ~% q        g_DPCoreClient.SendPartyMemberJob( (CUser*)this );8 d/ X" [# B6 n4 E, u
        g_DPCoreClient.SendFriendChangeJob( (CUser*)this );
& b# U" s* `3 U1 w        if( m_idGuild != 0 )! a; Y' a4 p5 {# z2 k
            g_DPCoreClient.SendGuildChangeJobLevel( (CUser*)this );
- x8 \; k) p! |$ L. Z#endif    // __SYS_PLAYER_DATA: j! |* c' S# N8 J1 a- c) n6 P
        SetHitPoint( GetMaxHitPoint() );
* v; O! [# j! |/ o& x9 u        SetManaPoint( GetMaxManaPoint() );
. \/ v9 J# r6 _5 V! J5 }: u9 \        SetFatiguePoint( GetMaxFatiguePoint() );
, C$ y& u5 ^$ g% q/ n        if( nJob >= 1 && nJob <= 4 )
* W/ U$ u2 r: u7 c        {; I, r) q8 [7 e1 B6 u- W7 |
            m_nStr = m_nSta = m_nDex = m_nInt = 15;
, \. L. Z5 N; K$ Q* D# U. a            m_nRemainGP = 28;' x% c  }. r. N  d. `6 `" v9 j
        }! z8 d9 c* f# ?( g  J+ y2 S0 H5 O
        if( nJob >= MAX_PROFESSIONAL && nJob < MAX_MASTER )3 _. t) i; d1 H& D, A7 l* K# ?
        {( z9 u4 l7 i* u/ p6 ~5 h
            m_nRemainGP = 118;
' b% v% p3 N6 V8 D' ~( Z            //m_nRemainGP = ( m_nSta - 15 ) + ( m_nStr - 15 ) + ( m_nDex - 15 ) + ( m_nInt - 15 ) + m_nRemainGP;% O1 ]0 J8 Q  V
            m_nStr = m_nSta = m_nDex = m_nInt = 15;- o4 @, I" h1 I$ q: T3 Q3 ]4 p
        }
) p. [5 a/ T% M) X3 j! [  S4 N        if( nJob == JOB_MENTALIST_HERO || nJob == JOB_FORCEMASTER_HERO )
8 D. z8 S1 m& @2 ~, Q" ~! h        {9 K0 O! y1 |- C' \4 @) j
            CItemElem itemelem;
! ^# Z2 r0 R" O; C" x/ J; V( E; e            itemelem.m_nItemNum = 1;
2 w& S7 [* H5 @! H0 s9 L3 [            itemelem.m_bCharged = TRUE;' K9 e$ W" t# M% `* s- a/ n2 r( L4 v
            BYTE nID;
( e9 e  u5 z9 u! e6 _0 @5 H# k  Z
            if( nJob == JOB_MENTALIST_HERO )
5 r5 N9 m% I# @3 w                itemelem.m_dwItemId = II_WEA_BOOK_BOKROMAIN;
1 w- L' L- a6 `" U& ~- d            if( nJob == JOB_FORCEMASTER_HERO )6 E  W. I& y! c) x5 k) x
                itemelem.m_dwItemId = II_ARM_ARM_SHI_ZEMBATO;- E" T) G! r/ u+ C, T% }9 o3 r

! l! v' S* _" P: A            ( ( CUser*)this)->CreateItem( &itemelem, &nID );7 z; T/ [' z& l8 w6 }( l4 V4 T5 p; e
        }
. x2 q4 C1 m& L& ]4 y- U# q        g_UserMng.AddSetLevel( this, (WORD)m_nLevel );
0 H/ |1 Y8 P' {        ( (CUser*)this )->AddSetGrowthLearningPoint( m_nRemainGP );
/ x! l3 }" g8 P8 Z9 Z7 L! Q        ( (CUser*)this )->AddSetExperience( GetExp1(), (WORD)m_nLevel, m_nSkillPoint, m_nSkillLevel );4 `0 M( [1 x" A9 G! Z- O
        /*( (CUser*)this )->m_playTaskBar.InitTaskBarShorcutKind( SHORTCUT_SKILL );" f% C- e$ v$ a
        ( (CUser*)this )->AddTaskBar();*/2 Q8 F  a2 l0 ^. B/ \# X$ d. N
        ( (CUser*)this )->AddSetState( m_nStr, m_nSta, m_nDex, m_nInt, m_nRemainGP );
8 p5 O  B( i6 X/ B! @7 s#if __VER >= 13 // __HONORABLE_TITLE            // ′Tà?
9 H$ F! [0 p& h- a        ((CUser*)this)->CheckHonorStat();
  P3 f; L' n5 I! p" Q( ^6 M! M7 _        ((CUser*)this)->AddHonorListAck();+ I" M  F- L1 `% |
        g_UserMng.AddHonorTitleChange( this, m_nHonor);
% b- w& w) X8 y+ o) I1 c+ s. ?#endif    // __HONORABLE_TITLE            // ′Tà?
1 Q: _6 S: j1 G/ U. _    }) ]: `, h7 o% ^
#endif // __WORLDSERVER) v3 n) D3 _; ]& ~
}  - p0 u& b9 {7 y* w, H# ^5 ^

- j$ X/ B1 z. Z然后你进入functextcmd.cpp并添加以下
# n* c5 d# E$ V8 L8 F" ?; g6 [; q& F2 e! C3 c4 g7 o3 P0 ]
代码:, v- i: i" b( d5 S
ON_TEXTCMDFUNC( TextCmd_say,                   "say",               "say",            "??",             "??",      TCM_SERVER, AUTH_GENERAL      , "?ó?èàó [/?í·é ??àìμe 3???]" )
9 t8 p& D7 z  \) G' E下面插入) y, Q. {# y- p* T# t& _
ON_TEXTCMDFUNC( TextCmd_rebirth,              "rebirth",          "rebirth",             "?ú·1?÷??",       "?ú·1",    TCM_SERVER, AUTH_GENERAL   , "?ú·1?÷??" )  
- U  u3 }5 J. u2 F, ]
, O9 G% T1 {% }: |( x. {; Y然后你去
; R# s+ }' P( S" ]9 ^! C! j  B, O' u' y3 l
代码:/ K2 ]9 j/ _7 D' u6 q( Z
代码  j# L$ }" y  w( n5 a
BOOL TextCmd_ClearPropose( CScanner & s )) Z& [5 {8 l. X# \+ x
{: }( T- A5 d! T4 m, K. ?4 e: Q
#ifdef __WORLDSERVER+ `# b/ g  e% e* d6 F2 q# M
    CUser* pUser    = (CUser*)s.dwValue;; e' [5 @; m+ S' B! o
    g_dpDBClient.SendClearPropose();" \* f5 ]3 A0 X3 j! n
#endif    // __WORLDSERVER" J" X6 S: d; v3 W
    return TRUE;
5 R3 @! P" X) s( c}, ?" D8 t# t$ M  R* i; Y8 n
下面插入. x) [# \5 T; }# [8 M2 g
BOOL TextCmd_rebirth( CScanner& scanner )
5 c# ?5 q3 R! z% E# q{
- B! S# D+ G/ ]; Y& e#ifdef __WORLDSERVER
* J) Z( j7 T; q1 ?CUser *pUser;
% v; F$ n) j7 w; ]- WpUser = (CUser*)scanner.dwValue;) t9 ~0 e* i% \9 t
if(pUser->m_nLevel >= 150 && pUser->IsLegendHero())
; `; U# c7 @6 g: ZpUser->InitLevelPumbaaa( pUser->m_nJob-16,60);
" `$ L* w; e- E; g: \* ?else
  h; g2 `/ ]- s, s8 l" D+ c' i+ ipUser->AddText("你还未达到重生条件!");" O. F3 c$ F1 i- u" v, h2 r
#endif' n" X1 R( b$ \4 f% M# e; f: \
return TRUE;8 O& i. b# V  D
}  
" A# N- F0 H$ Q/ q0 K
& F5 {) |5 W& Y5 U# r2 E' Y3 p8 e
! @: j1 M& L$ v: Y

" Q% M7 C6 p* |3 C5 b3 X
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2026-1-25 18:30 , Processed in 0.065954 second(s), 30 queries , Gzip On.

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

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