丸原木の木を表示



ちょっとやってみた・・・です



ただの四角いブロックの世界とは、もう言わせない!(^^)

一度は思った事・・・ありませんか?
丸い原木の事・・・

※今日の書き換えは要注意です
自身のない人や、スキル不足、分からないかたはやらないでください
私もまだよく分からないので、質問されても困ります

書き換え、MODの使用は自己責任でお願いします



今回はMinetest本体(ゲーム)部分の書き換えに挑戦します
ただ、丸原木は個人で作るか、
私の「cylinder_woods」がUPされるのを待ってくださいね
書き換えは自己責任でお願いします
必ずバックアップを取ってから行いましょう

今回使用したのは、Minetest 0.4.12 JP Wikiの日本語版です
他のバージョンやJP Wiki版以外では内容が違うかもしれません
以下の場所やコードが変更されているかもしれません
あくまでも参考という事で

Minetestのgames
minetest_game
mods
default
nodes.luaにあるコードの一部を書き換えます

分からないかたは止めてくださいね^^;

エディタで確認です

372行から「Trees」がありますね?

こんな風に・・・
--
-- Trees
--

minetest.register_node("default:tree", {
description = "Tree",
tiles = {"default_tree_top.png", "default_tree_top.png", "default_tree.png"},
paramtype2 = "facedir",
is_ground_content = false,
groups = {tree=1,choppy=2,oddly_breakable_by_hand=1,flammable=2},
sounds = default.node_sound_wood_defaults(),

on_place = minetest.rotate_node
})

この上のコードを書き換えます

こんな感じです

--
-- Trees
--

minetest.register_node("default:tree", {
description = "Tree",
drawtype = "mesh",
mesh = "cylinder_tree_01.obj",
tiles = {"default_tree.png","default_tree_top.png"},
paramtype = "light",
paramtype2 = "facedir",
is_ground_content = false,
groups = {tree=1,choppy=2,oddly_breakable_by_hand=1,flammable=2},
sounds = default.node_sound_stone_defaults(),
on_place = minetest.rotate_node,
collision_box = {
type = "fixed",
fixed = {
{-0.3125, -0.5, -0.3125, 0.3125, 0.5, 0.3125}, -- NodeBox2
}
},
selection_box = {
type = "fixed",
fixed = {
{-0.3125, -0.5, -0.3125, 0.3125, 0.5, 0.3125}, -- NodeBox2
}
}

})

372-400が新しくなりましたね

「mesh = "cylinder_tree_01.obj",」がモデルのファイル名です
持っているモデル名にしてください(^^)


エディタで保存してください

その後、
Minetestを起動、
新規でワールドを作り、
(既存ワールドの既出チャンクでは原木に影バグが出る)



地味ですが、
原木が丸くなります



ちょっと「やってみた」的なことですが、
マネは危険です



よほどの事がない限り、gamesの書き換えはやめておいたほうが良いでしょう



では、また次回(^^)


コメント

  1. gamesを書き換えないという方法もありますよ。
    minetest.override_item(名前, 定義)
    という関数を使えば外部のModのアイテム(ノード)定義を書き換えることができます。

    返信削除
    返信
    1. ブロックを光らせるって時に教えて頂いたものですね

      スッカリ忘れていました^^;

      >>minetest.override_item(名前, 定義)
      元に戻す時も同じminetest.override_item(名前, 定義)で良いんですよね?

      削除
    2. >>元に戻す時も同じminetest.override_item(名前, 定義)で良いんですよね?
      あくまで読み込み時に定義を上書きするだけで、games内のコード自体は変更されないので元に戻す必要はありません。

      削除
    3. 後でやってみます
      今、椅子とテーブルMODのAPI化の修正中です
      続いて、sevret_panelsも行いたいと思います
      多分、今日は家に引きこもっていますから^^;

      削除

コメントを投稿

このブログの人気の投稿

Minetestのメニュー言語の変え方 2017/06/17

MODを入れよう!

額縁MOD