Re: [wizs] 請教 .h 檔

作者: laechan (揮淚斬馬雲)   2014-05-22 03:48:19
不是這樣的。
最簡單的房間是我已經先幫你編好的 /u/c/caselook/workroom.c
> home caselook
[/u/c/caselook/workroom ]
工作室
一間工作室,牆上貼了一張告示(note)。
明顯出口有: disc.
Lv250.『你可以跟我 adv 屬性』小滷蛋(Lodao)
> more here
:::::::::::::: /u/c/caselook/workroom.c ::::::::::::::
inherit ROOM; // 繼承房間樣本, ROOM 被定義在 /include/mudlib.h
// 而 mudlib.h 在 sanc 是全域繼承檔是不需事先 #include 的
// ansi.h 也是
void create()
{
::create();
seteuid(getuid(this_object())); // 到這裡為止都是固定的
// seteuid: 設定一個物件的有效識別名稱
// 有這一行, 房間才被允許做一些
// 載入或複製物件的動作
// getuid : 傳回一個物件的有效識別名稱
// this_object(): 這個物件本身
set("light",1); // 房間維持光亮
set("short","工作室"); // 設定房間名稱
set("long",@LONG // 設定房間敘述
一間工作室,牆上貼了一張告示(note)。 // 被 @LONG ... LONG 括起來的範圍
// "所見即所得"
LONG
);
set("item_desc",([ // 設定房間額外可觀看的目標及內容
"note":@LONG
這是一張告示。
LONG
]));
set("exits",([ // 設定房間出口
"disc":"/d/wiz/room/disc",
]));
set("hide_exits",([ // 設定房間隱藏出口
"wiz1":"/d/wiz/room/wiz1",
]));
set("objects",([ // 設定房間要預載哪些物件
"/d/wiz/mob/lodao":1,
]));
reset(); // 有 set("object") 就要有這一行 reset()
// 被設定的物件才會被 load 到房間
}
你所參考的房間,有一些寫法是錯誤的,那是非常早期版本的
mudos 可相容的寫法,現在是不相容的,這只要 update 那個
房間馬上就會知道。
如果你真的要自己研究,那你應該先問的是一開始要知道哪些
事情,包括有哪些指令(工具)可使用、可先參考哪幾個區域、
然後怎麼設定自己的 workroom 去快速連結這些區域等。
有哪些 wiz 的指令可用
update - 更新(編譯, compile)一個 .c 檔並將其載入到記憶體
invis player - 讓自己隱形, 在調查主動怪區域時可使自己不被攻擊
more [目標] - 如 more lodao、more here、more ~/workroom.c、..
clone [目標] - 叫出一個物件,如 clone /d/wiz/mob/lodao
dest [目標] - 消滅一個物件,如 dest lodao、dest cloth、...
goto [目標] - 如 goto laechan、goto ~/workroom.c、..
home - 回自己的工作室,預設為 /u/c/caselook/workroom.c
也可以 home 其它 wiz 的工作室如 home laechan
cp - 拷貝檔案
rm - 刪除檔案, 目錄
mv - 搬移檔案, 目錄
md - 建立目錄
da [目標] - 觀看一個被載入物件的設定資料。如 da me、da laechan、
da here、da ~/workroom、...
可先參考哪幾個區域
基本上 /d/ppl/ 目錄下的區域就是一開始可以參考的。
但是這並不是叫你一個人摸索,因為入門的方式不對的話,
學這些東西會事倍功半很吃力,我當初剛當 wiz 時什麼也
不懂,但是有人帶我,隔天我就自力寫出一個區域碧水鎮:
1.因為我是用 copy 現有的區域來改的
2.因為我可以用 more 後的東西對照 update 後所看到的
結果來對照「我只需改哪些東西,其它照舊即可」
但是求快的結果就是我只會拷貝修改,當了 wiz 快一個月
還無法自己從頭到尾實際編出一間完整的房間,卻已經寫
好三個區域,還包含怪物、武防具、道具等物件。
之後就很痛苦,因為實際上有些寫法即便用 copy、修改的
方式寫也依然是錯誤的,變成後來「又更懂一些之後」,
就得回頭去修改自己有寫錯的地方;之後「又多懂了一些
之後」,就要又再去修改自己還有寫錯的地方;...
那還不如一開始就以絕對不會有問題的寫法去寫,這就是
我想強調的,而如果你都自己摸索,就很難做到這樣。
Laechan

Links booklink

Contact Us: admin [ a t ] ucptt.com