在遊戲開發中, 任務系統是必不可少的。可是任務千奇百怪,在代碼中如何判斷一個任務完成是一個很頭疼的問題。最普通的作法就是經過判斷語句對任務中不一樣的條件進行判斷,這樣作會產生很大的代碼,並且只要加一點條件就會改動代碼。那麼有沒有一個好的匹配任務的完成的方法呢。在公司的同事提出一個比較好的,至少在手遊是比較好的方法。就是經過字符串匹配。設計
好比:在配置文件配置一個任務,這個任務是任意戰鬥20場,勝利10場,得到經驗200, 若是知足上述條件算任務完成遊戲
war20,win:10,exp200遊戲開發
上述的配置咱們知道若是經過單個條件判斷的話就須要三個單獨判斷,並且不易擴展。若是用字符串匹配就容易多了,在從新埋點上報比賽結果,比賽結果按照上訴的字符串組織,如:match:day,war:20,win:20,exp:200,意思是玩家在平常賽中戰鬥20次,贏10次,活動經驗200,。 咱們只需在上報的結果中檢查是否包含 war20,win:10,exp200 字符串就能夠了。在這裏只是出一種匹配方式,在具體遊戲開發中須要根據細節設計不一樣上報方式或者上報點。只是以爲這種字符串匹配的方式很靈活,咱們若是增長一個條件能夠不用改代碼。開發