- UID
- 19393
- 阅读权限
- 80
- 注册时间
- 2008-4-12
- 最后登录
- 2013-5-4
- 在线时间
- 210 小时
- 性别
- 男
- 生日
- 1993 年 9 月 3 日
国王
- 耕战
- 1184
- 鹰币
- 144
- 天龙币
- 0
- 回帖
- 288
   
|
发表于 2010-3-1 21:25:36
|
显示全部楼层
回复 82# 的帖子
你還沒有明白到所謂的瞬間移動效果是怎樣的啊~
先說說在了解這個效果前, 需要弄清楚的東西
基本上, 我們給予指定單位的動作(以行走為例)的流程是這樣的:
1. [人手] 點擊民兵 (假設被點擊的民兵的 ID 為 8)
2. [系統] 確認單位 ID (ID 確認為 8)
3. [人手] 選擇行走的目的地
4. [系統] 相關 ID 之單位被指派 (ID 8 被指派, 不然所有叫民兵的單位都被指派了啊?)
好吧, 簡單點說就是我們點擊單位的目的是確認單位ID
第二, 現在要談的是遊戲的單位 ID 系統, 我們於地圖上首個建立單位的ID一般會被取為 0,
第二個建立在地圖上單位的ID會被取為 1, 即使 ID 1 的單位死亡/被刪除後, 該單位也仍然占有該 ID,
就如同我們世界中的身份證一樣, 難道我過身後身份證編號會被其他在生的人使用嗎?
越晚建立的單位, ID 就會被排得越後, 因為根據由小至大排序, ID 大的自然會排往後方,
然而相同 ID 的單位又怎樣分次序呢 ? 原來越早被建立的單位依然會被排序到前方,
反之排序到後方。
現在進入正題了, 假設有兩個相同 ID 的單位, 分別是 單位A 和 單位B
單位 A 較單位 B 在較早時被建立在地圖上, 我們現在給予單位A動作,
以流程表示應該會是:
1. [人手] 選擇單位A
2. [系統] 確認單位 ID (設 ID 確認為 28)
3. [人手] 選擇行走的目的地
4. [系統] 相關 ID 之單位被指派 (ID 28 被指派)
ID 28 的單位有兩個啊, 那麼單位A會被指派還是單位B會被指派? 或是兩者同時被指派?
原來是這樣的, 之前我們談過 ID 排序的問題, 只有較晚建立的單位, 即只有 ID 排序排在較後的單位會被指派, 因此單位 B 會被指派, 單位 A 則不動。
再來, 我們現在給予單位A動作, 這次動作是卸載單位
1. [人手] 選擇單位A
2. [系統] 確認單位 ID (設 ID 確認為 28)
3. [人手] 假設從 新建立的單位 C 上卸載單位 A
4. [系統] 相關 ID 之單位會從單位 C 上卸載下來 (ID 28 被卸載)
好吧, 現在我問你幾個問題, 相信你便明白什麼是所謂的"瞬間移動"
1) 根據ID 排序, 單位A會被卸載下來嗎?
2) 若不, 那一個單位會被卸載下來?
3) 從單位 C卸載下來的單位會出現在單位C的身旁嗎?
4) 假若單位 B 與單位 C的位置不同, 在某時段單位B被從單位C上卸載下來, 而出現在單位C的身旁, 這叫什麼效果?
======
隨此以外, 我還想說一說所謂點不到的單位, 其實只是一個單位特徵而已,
即是所有負值ID的單位都不會被點擊到, 射出來的箭的ID是負值, 所以點擊不到,
不要膚淺地將整個效果視為一個單一效果, 這整個效果是涉及了數個範疇的啊!
[ 本帖最后由 nomygf 于 2010-3-1 21:42 编辑 ] |
评分
-
查看全部评分
|