這篇教學,
教你製造一個讓冒險更熱鬧的角色跟隨系統喔~~





STEP 1                             


首先呢,既然是角色跟隨,那當然要放要跟隨的角色啦!

先把地圖淨空,什麼物件都沒有

然後在地圖上放置好要跟隨的三個物件




STEP 2                             

接著我們要編輯這三個物件

首先,替它們取名稱,比較好辨認



紅色標記是我們要注意和完成的地方

注意,它們的代號分別要是 ID:001 ~ ID:003
因為我們這個範例只會讓 ID:001 ~ ID:003 的角色跟隨
如果你的
ID:001 ~ ID:003 已經被別的物件占用了,那麼跟過來的...可能就是那個物件...



1. 跟隨的速度頻率,可以依照自己喜好,不過預設是如圖這樣 Fast High
速度頻率最好依照主角行走速度

2.
這邊設定成「與主角接觸」(就是主角碰到他的時候才會做) 。這並不是跟隨的起始條件,而是為了等等的防卡住系統做準備

※物件不能設定可穿透


STEP 3                             

然後編輯物件的  執行內容


之所以要寫這樣,是為了防止主角被跟過來的角色卡住...
這就是防卡住系統
只要你讓主角去觸碰跟過來的角色,跟過來的角色就可以被你穿過去,如此一來就不怕被卡住了!

STEP 4                             

如果三個事件都做完以上步驟了,就可以來寫跟隨系統的核心了!

跟隨系統,
其實就是用判斷式,判斷物件有沒有跟上,
如果沒有跟上,看看主角是往哪個方向走的,
那物件就往哪個方向走一步

去「公共事件」寫一個如以下的程式



核心是這樣  (如果只有一個角色會跟隨的時候)


但是因為我們有三個角色要跟隨,所以就擴張成這樣



這樣就完成了跟隨的程式

然後,記得把 條件開關「follow」打開,這個程式才會運作。角色才會跟隨!





剛才我們的範例,是把主角(S)放在物件旁邊,所以可以緊密跟隨沒有問題

但是你一定會有疑問

「如果我的物件一開始不是放在主角旁邊,而是放在離主角很遠的地方,那怎麼辦?」

這時候,我們就要寫一個程式,讓這些物件一開始就貼到主角旁邊



有需要的時候,呼叫這程式一次就可以了!


創作者介紹

Frank's 資訊科技潮流站

finalfrank 發表在 痞客邦 PIXNET 留言(7) 人氣()


留言列表 (7)

發表留言
  • David.
  • 那如果是這樣呢?

    是這樣的,因為本人目前也在做一個類似跟隨的橋段...
    但其實是主角在定點等候另外一位角色靠近,
    然後說話...
    然而本人大概是遇到"卡人"的情況了,
    假設主角是A,副角是B,
    就是當B走過去靠近A的時候,
    這時所有的行動都不能進行了...
    也就是卡住了...
    程式碼方面,
    恩........我貼巴哈姆特的連結給你看好了= =
    http://forum.gamer.com.tw/C.php?bsn=04918&snA=15601&tnum=3&subbsn=4
    至於你說的防卡系統,
    我在主角必須到達的指定點上設定這樣,
    設定移動路線:本事件
    :穿透ON
    設定移動路線:[B](重複動作)
    :靠近主角
    等待:2畫面
    設定移動路線:本事件
    :穿透OFF
    等待移動結束

    之所以要設定重複動作是因為必須讓B持續的走到A身邊,
    但是一但碰到A就卡住了...
    奇怪的是,只要我把最後的等待移動結束拿掉,
    就不會卡了...
    但是這樣就不符合事件了,
    因為A必須待在原地等待B的到來,
    一般玩家還是有可能在等待B到來時移動角色,
    所以我才把它設定成等待移動結束...
    有什麼方法可以防止它卡住嗎?
    謝謝!
  • 我大概了解你做的是什麼...
    簡單的說,就像是「警察叫住你,你停車,結果警察就追過來」這樣
    然後,警察貼住你的車,就卡住,這樣嗎?

    這其實用不到角色跟隨耶!
    如果「警察」在你下面六格
    你就設定讓他往上走五格就好啦!

    當然,我也不是完全懂你在說什麼啦...
    方便的話可以把你的程式整個拿來給我看看嗎?

    ....至於你說不等待移動結束就不會卡了
    他等待的「移動結束」,從你的程式看來...
    是在等待「穿透OFF」這個動作成功完成
    如果「穿透OFF」這個動作一直沒辦法完成,對電腦來說就不算移動結束
    然後電腦因為一直等不到移動結束,你就會卡在那邊...

    finalfrank 於 2009/02/28 17:37 回覆

  • David.
  • 嗯嗯...是這樣沒錯...
    不過我少說了一項,不好意思。
    那就是B平時是設定隨機走動的,
    所以說當A觸動了事件之後,
    B的位置是不一定的,
    當然啦~如果B從頭到尾都沒有離開原位的話,
    只要設定讓B順著自己的路走就很容易了,
    但是B卻是隨機亂走的,
    所以根本不能預測B的點會在哪...
    請原諒我這麼龜毛= =
    我只是希望能設計得更貼切而已...

    我已經加了你的MSN,
    直接上面講比較快吧...
    我也好方便把檔案傳給你...
  • 結論是,要跟隨你的物件,如果是會移動的,這樣難度提升很多...
    如果不會移動的話,就簡單多了...(在你左邊五格,就只要叫他往右補回四格就好,簡單多了...)

    finalfrank 於 2009/03/01 22:22 回覆

  • 臥龍
  • 可以麻煩處理一下你的叉燒包嗎?
    最重要的地方看不到...
  • FISH
  • 你好

    請問這個方法是不是只適用再同一張地圖裡?
    如果要讓他進入不同地圖後繼續跟隨要怎麼辦?

  • 不用懷疑,每一張地圖都要做同樣的動作...

    當然,公用事件寫一次就可以了。

    finalfrank 於 2010/05/16 23:24 回覆

  • 詩...☆
  • 為什麼我的就不能一開始到主角旁邊

    而是要等他移動過來= =
  • 你好~你要先呼叫最下面那張圖片的程式喔!

    finalfrank 於 2011/04/16 21:00 回覆

  • 詩...☆
  • 抱歉!抱歉!
    我後來調整了一下
    原因是在事件都卡在一起了= =

    不過又有新問題了......
    Q1.當我的跟隨者旁邊有障礙物(牆.盆栽...)時
    他會一直左右左右跑來跑去
    好像只有跟隨者走在主角的左邊才會這樣

    Q2.我有一張地圖是設計從一個房間走出來
    當我走出來往左.此時跟隨者在右邊【←跟】
    接者我往右走【→跟】
    他不讓我往右走QQ
    另一個方向就不會了
    PS.就是他不會讓我穿透過去...

    SORRY.問你這麼多問題...
    我在想是不是我的電腦出問題了
  • 角色的「允許人物穿越」不能打勾喔

    finalfrank 於 2011/04/17 00:09 回覆

  • 幻滅o空
  • 您好,測試時發現,

    如果角色先往上走,再往右走會發生很慘的情形...

    跟隨角色不在角色左邊,而是在下面...
找更多相關文章與討論