見出し画像

簡単なクラフト実装

function craft(m){
  return recipe[m];
}

var recipe={
  "0,1,0,0,1,0,0,1,0" : 2
}

var item=[
  ["id","name","damage","image"],
  [1,"wood stick",2,"img/wood_stick.png"],
  [2,"wood sword",10,"img/wood_sword.png"]
];


┌──┬──┬──┐
│ │I │ │
├──┼──┼──┤
│ │I │ │
├──┼──┼──┤
│ │I │ │
└──┴──┴──┘
craft_table-> [0,1,0,0,1,0,0,1,0]

var craft_item = craft( craft_table.join() );
damage = item[ craft_item ][ 2 ];


クラフトアイテム = クラフト関数(素材配列[素材,...]);

レシピとアイテムを作っておき、クラフト関数でそれをつなぐ。

レシピにあったアイテムの並びがあればアイテム番号を返す。

アイテムの情報はアイテム番号から参照する。






この記事が気に入ったらサポートをしてみませんか?