推 hlead:恩~..thanks... /// 商業機密orz... 07/09 13:46
※ 引述《hlead (希多)》之銘言:
: 問題一:
: 能讓shout所顯示的話,
: 限制在..存在於這區域的人才看的到嗎?
: 或者有別的寫法?
: 反正就是如果出現一段訊息,
: 然後那段訊息只會讓現在 在這區域的人看到。
假設房間區域在 "/d/ppl/laechan/hole/" , 這個字串共長
20 個字, 程式大概長底下那樣...
mixed usr=users(); // 讀線上全部的玩家
string str;
object ppl,env;
foreach(ppl in usr)
{
if(!ppl || !interactive(ppl)) continue;
if(!env=environment(ppl)) continue;
// 玩家在線上, 而且也存在於某一個房間
str=base_name(env); // 讀取玩家所在房間的完整路徑檔名
// 如 /d/ppl/laechan/hole/001 (沒有 .c)
if(strlen(str)>20 && str[0..19]=="/d/ppl/laechan/hole/")
tell_object(ppl,"想讓玩家看到的話.\n");
}
至於,如果該區域房間極少的話,也可以採用將該區域房間
全部讀出,然後一格一格 tell_room 的方式,不過這種比較
少用。
: 問題二:
: 影子傳說的那種快速再生怎樣寫?
: 就是總量不變,死了後會馬上在別格重生的那個。
: 恩,不知道放哪。而且好像也看不了。
這是商業機密。
: 問題三:
: 有辦法使怪物的平常攻擊的hit數增加嗎?
: 加了多重攻擊這技能上去好像沒啥用= ="
怪物的攻擊,基本上是怪物自己呼叫 normal_attack 去打的
,多重攻擊因為改成了「不需要再去 en 的被動技能」,所以
你為怪物加上那個也沒用,因為怪物的多重攻擊我沒寫。
有兩種做法...
一、我為怪物加上特殊判斷。例如你在怪物身上設參數...
set("multi_attack",10);
然後我讓怪物一抓到上述設定就於每回合自動攻擊十次。
這個設定如果實裝,國家怪物也可以這樣子設。
二、怪物自訂 special_fun...
set_verbs({{"打向","扁向"})); // 設定一般攻擊敘述
set("special",99); // 設定特攻比例
int special_fun(object mob,object ppl)
{
if(random(5)==3) // 實際普攻比例 1/5 = 20%
{
normal_attack(ppl,mob);
normal_attack(ppl,mob);
normal_attack(ppl,mob);
normal_attack(ppl,mob);
normal_attack(ppl,mob); // 五行就是五次攻擊
}
else
{
// 才是特攻的部份, 機率 4/5 = 80%
}
return 1;
}
這樣的寫法比較不好, 所以一比較好,有空我今天改。
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 61.225.184.78