梦想传三吧 关注:3,793贴子:92,620
  • 5回复贴,共1

干点正事:源码分析之极品生成武器篇

取消只看楼主收藏回复

// 파괴 옵션 <====破坏选项
nUpgrade = GetUpgrade(12, 15); <====12次机会,每次15分之一的几率,注意只要有一次不满足就终止
if (rand() % 15 == 0) <====再取15分之一的几率决定到底是不是有效
btValue[0] = 1 + nUpgrade;// DC <====只要是中标15分之一,至少加一,最高加1+12=13
// 마력 <=====自然选项
nUpgrade = GetUpgrade(12, 15);
if (rand() % 15 == 0)
btValue[1] = 1 + nUpgrade;// MC
// 도력 <=====灵魂选项
nUpgrade = GetUpgrade(12, 15);
if (rand() % 15 == 0)
btValue[2] = 1 + nUpgrade;// SC


IP属地:湖北1楼2016-05-27 16:02回复
    // 정확 〈====准确
    nUpgrade = GetUpgrade(12, 15); 〈====同上
    if (rand() % 24 == 0) 〈===24分之一的几率
    btValue[5] = 1 + ((int)nUpgrade / 2);// 정확 (+) 〈=====最高为1+12/2=7


    IP属地:湖北3楼2016-05-27 16:08
    收起回复
      // 강도 〈====强度
      nUpgrade = GetUpgrade(12, 15);
      if (rand() % 10 == 0)
      btValue[7] = 1 + ((int)nUpgrade / 2); 〈=====武器强度同上


      IP属地:湖北4楼2016-05-27 16:10
      收起回复
        // 공격 속도
        // 攻击速度
        nUpgrade = GetUpgrade(12, 15);
        //12次机会,每次15分之一的几率,注意只要有一次不满足就终止
        if (rand() % 20 == 0)
        // 20分之一的几率
        {
        nIncp = (int)((1 + nUpgrade) / 3);
        // 最高攻击速度附加值是(1+12)/3=4
        if (nIncp > 0)
        //如过附加值非零的话
        {
        if (rand() % 3 != 0) btValue[6] = nIncp;// 공격 속도 (-)
        //取随机数不能被三整除,减速
        else
        btValue[6] = 10 + nIncp; // 공격 속도 (+)
        //取随机数不能被三整除,加速
        }
        }


        IP属地:湖北5楼2016-05-27 16:28
        收起回复
          后面还有首饰的,以后再说


          IP属地:湖北来自Android客户端6楼2016-05-27 16:33
          回复
            这里的Rand()函数是取随机数的意思,一般来说取系统的uptime,即从开机到现在的嘀嗒数,一个嘀嗒相当于10毫秒。但是现在的电脑主频已经超过2GHZ,于是经常取到相同的值,因此,服务器越好,越容易出现高附加值。


            IP属地:湖北来自Android客户端11楼2016-05-30 09:13
            回复