Google
 27 12
发新话题
打印

ascent 4456 源程序几个常用功能修改地址

本主题由 菜菜 于 2008-4-27 22:52 置顶

ascent 4456 源程序几个常用功能修改地址

ascent 4456 源程序几个常用功能修改地址

作者:菜菜

出生等级修改方法

Player.cpp


查找:                SetUInt32Value(UNIT_FIELD_LEVEL, 1 );

修改:
    SetUInt32Value(UNIT_FIELD_LEVEL, (uint32)sWorld.getRate(RATE_LEVELFRIST));//出生等级

World.h
查找:
        RATE_MONEY,
加入:
        RATE_LEVELFRIST,//出生等级

World.cpp
查找:
        setRate(RATE_XP,Config.MainConfig.GetFloatDefault("Rates", "XP",1));
加入:
        setRate(RATE_StartXP,Config.MainConfig.GetFloatDefault("Rates", "StartXP",1));//出生经验

---------------------------------------------------------------------------------------------------------------
出生金钱修改

player.cpp

查找:       
     sHookInterface.OnCharacterCreate(this);
加入:  
     SetUInt32Value( PLAYER_FIELD_COINAGE,sWorld.getIntRate(INTRATE_MONEYFRIST));//出生金钱


World.h   

查找:
        INTRATE_PVPTIMER,
加入:
        INTRATE_MONEYFRIST,//出生金钱

World.cpp

查找:
        setRate(RATE_XP,Config.MainConfig.GetFloatDefault("Rates", "XP",1));

加入:
              setIntRate(INTRATE_MONEYFRIST,Config.MainConfig.GetIntDefault("Rates", "MONEYFRIST",1));//出生金钱

---------------------------------------------------------------------------------------------------------------------
出生经验修改

  CharacterHandler.cpp

查找:
  // Calculate rested experience if there is time between lastlogoff and now

在上面加入:
   //出生经验
                if(plr->m_FirstLogin)
        {
                uint32 intXP = Config.MainConfig.GetIntDefault("Rates","StartXP",0);
                uint32 intGold = Config.MainConfig.GetIntDefault("Rates","StartGold",0);
                plr->GiveXP(intXP,plr->GetGUID(),true);
                plr->SetUInt32Value(PLAYER_FIELD_COINAGE,intGold);
                plr->m_FirstLogin = false;
                plr->Update(0);
        }
        //出生经验
World.h  

查找:
        RATE_MONEY,
加入:   
        RATE_StartXP,//出生经验

World.cpp
查找:
        setRate(RATE_XP,Config.MainConfig.GetFloatDefault("Rates", "XP",1));

加入:
             setRate(RATE_StartXP,Config.MainConfig.GetFloatDefault("Rates", "StartXP",1));//出生经验       
---------------------------------------------------------------------------------------------------------------------
灵魂医者复活后虚弱时间

  Spell.h

查找:   (第二个)

this->Dur = (uint32)-1;

在上面加入:
                        //灵魂医者复活后虚弱时间
            if(u_caster->getLevel()<11) Dur=0;
               else if(u_caster ->getLevel()<=20)
                Dur =(u_caster->getLevel()-10)*60*1000;
            else Dur =1000*Config.MainConfig.GetIntDefault("Rates","DurTime",600);//10*60*1000;

                //灵魂医者复活后虚弱时间
World.h       
  查找:
        RATE_MONEY,
加入:
        RATE_DurTime,//灵魂医者复活后虚弱时间

World.cpp

查找:
        setRate(RATE_XP,Config.MainConfig.GetFloatDefault("Rates", "XP",1));
加入:
        setRate(RATE_DurTime,Config.MainConfig.GetFloatDefault("Rates", "DurTime",600));//灵魂医者复活后虚弱时间

-----------------------------------------------------------------------------------------------------------------------


最后在ascent-world.conf 加入

#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#
#   【1】的开始AS源程序教学 个性设置
#
#    LEVELFRIST="8"
#        出生等级
#
#    StartXP= "100"  
#        出生经验
#
#    MONEYFRIST="8"
#        出生金钱
#
#    DurTime = "300"
#    灵魂医者复活后虚弱时间,以秒为单位,默认600秒(十分钟)
#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#

<Rates LEVELFRIST="1"
       MONEYFRIST="8888888"
       StartXP= "100"
       DurTime = "30"
>
附件: 您所在的用户组无法下载或查看附件
┄ 欢迎十字佣兵老朋友来99GAME坐客,菜菜在这卖菜。记的来买,还有有技术朋友加入.┄ 个人主页:http://www.xren.org http://www.pcsay.cn

TOP

感谢菜菜同学

TOP

回复 楼主 菜菜 的帖子

感谢菜菜同学,好人大家都会支持的。把你顶起来。

TOP

非常感谢你写的教学.谢谢了.
堅信僦諟一苆苼?????掵,伈誠則靈。

TOP

很 好    要的其实就是这种帖子!

TOP



菜菜真是太好了~~~
......

TOP

这就是我为什么喜欢99的地方..真正的能学到东西..
Angel魔兽A端官方网站:
http://www.wtrosf.cn/bbs/
QQ:102127

TOP

如果能多给些常量的定义就更好了,有时看着突然冒出来个宏,不知道什么意思,很郁闷。

TOP

多谢菜大,有劳有劳

TOP

顶老菜

TOP

感谢感谢

TOP

感谢菜大大,以前俺们确实没搞明白过。。。感情是这改滴~~

TOP

回复 楼主 菜菜 的帖子

出生等级当中的
修改这一项中
World.cpp
查找:
        setRate(RATE_XP,Config.MainConfig.GetFloatDefault("Rates", "XP",1));
加入:
        setRate(RATE_StartXP,Config.MainConfig.GetFloatDefault("Rates", "StartXP",1));//出生经验

有错误
应该为:
查找:
        setRate(RATE_XP,Config.MainConfig.GetFloatDefault("Rates", "XP",1));
加入:
        setRate(RATE_StartXP,Config.MainConfig.GetFloatDefault("Rates", "LEVELFRIST",1));//出生等级

至此无错
忽忽悠悠,稳稳当当!瘦是一种理智与克制的体现!

TOP

不错1支持一个

TOP

TOP

 27 12
发新话题