
jetbrain rider 可以反编译
原来在 visual studio 看不到的,写在 dll 里面的,接口的实现,经过反编译之后就能看到
这样就不用费心思多开一个阅读源码的 IDE 窗口了
牛
比如现在看到的这个 GetDataRow,输入 id 的话
DataTableManager.cs
public T GetDataRow(Predicate<T> condition)
{
if (condition == null)
throw new GameFrameworkException("Condition is invalid.");
foreach (KeyValuePair<int, T> data in this.m_DataSet)
{
if (condition(data.Value))
return data.Value;
}
return default (T);
}
其中
m_DataSet 是字典
DataTableManager.cs
private readonly Dictionary<int, T> m_DataSet;
在构造函数中初始化
DataTableManager.cs
public DataTable(string name)
: base(name)
{
this.m_DataSet = new Dictionary<int, T>();
在 InternalAddDataRow 中新增
DataTableManager.cs
private void InternalAddDataRow(T dataRow)
{
// ...
this.m_DataSet.Add(dataRow.Id, dataRow);
在 DefaultDataTableHelper 的 ParseData 读取行
Assets/GameFramework/UnityGameFramework-b2d2ef63517d2cab5f0def57e691a2d794b6a7f5/Scripts/Runtime/DataTable/DefaultDataTableHelper.cs
public override bool

本文记录了在Unity中使用GameFramework框架时,通过JetBrains Rider反编译查看dll中接口实现的过程,以及在实现血条和体力条UI显示时遇到的问题。作者发现通过在setter中更新UI可以有效处理血量和体力的变化。然而,由于MonoBehaviour的限制,直接在静态类中使用会导致问题,需挂载到GameObject上。这揭示了在游戏开发中理解框架和MonoBehaviour工作原理的重要性。
最低0.47元/天 解锁文章
2万+

被折叠的 条评论
为什么被折叠?



