首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> C語言 >> 關於C語言

WPF/Silverlight 遊戲開發教程(二十八之二):經典屬性系統設計與敵對判斷邏輯

     編輯:關於C語言

以力量 VPower 為例,影響最大負重、物理攻擊最小/最大值。VAttackMax 只讀屬性:

public double VAttackMax
{
    get { return ABase[2] + Equip[2] + Buff[2] + VPower * Coefficient[2]; }
}

構造:基礎值 + 裝備加成 + Buff加成 + 根屬性×成長係數。其他屬性(敏捷 VAgile、體格 VPhysique 等)同理關聯設計。

物理攻擊系統需求分析

  1. 點擊其他精靈 → 敵對判斷 → 鎖定目標
  2. 主角跑向目標 → 進入攻擊範圍 → 發起攻擊
  3. 計算傷害 → 輸出顯示

敵對判斷邏輯

private bool IsOpposition(QXSpirit me, QXSpirit obj)
{
    if (me == obj) return false;
    else if (obj.VPK >= 7) return true;
    else
    {
        switch (me.PKMode)
        {
            case PKModes.Peace: return false;
            case PKModes.Whole: return true;
            case PKModes.GoodAndEvil: return obj.PKMode == PKModes.Whole;
            case PKModes.Faction: return me.VFaction != obj.VFaction;
            case PKModes.Clan: return me.VClan != obj.VClan;
            default: return false;
        }
    }
}

依 PK 值與模式判斷,符合網遊 PK 經驗邏輯。下節將實作移動與攻擊流程。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved