GJSS 0.21

scripts.roles
[Groovy] Class Wolf

java.lang.Object
  scripts.roles.Civilian
      scripts.roles.Wolf

class Wolf
extends Civilian

狼の役職クラスです。噛み能力を持ち、また仲間と会話できます。
狼は狼陣営、狼カウント。占い・霊能結果共に黒(●)判定です。


Property Summary
static def bite

この役職が初日犠牲者として死亡しないかどうかを表します。

static def number

この役職の人数を表します。

static def order

役職の順番を表します。

static def strings

ローカライズされた文字列のバンドルです。

 
Constructor Summary
Wolf(def actor = null)

指定の参加者でインスタンスを作成します。

 
Method Summary
static def getBitetarget()

襲撃対象の参加者を返します。

def getCommands(def actors)

ツール本体から手動でコマンドを選択するために、そのリストを返します。

static def getJustnumber(def number)

役職人数の初期値を返します。

def getPriority()

役職の優先度を返します。

def getRoleName()

役職の名前を返します。

def isCivilian()

村人としてカウントされるかどうかを表します。

static def isInvisible()

「ゲームを開始する」ダイアログで「役職は初日に噛まれない」を非表示にするかどうかを返します。

def isWolf()

狼としてカウントされるかどうかを表します。

def judge(def result)

勝敗を判定します。

def noticeRole()

参加者に対し役職の通知を行います。

def receiveMessage(def type, def target)

コマンドを処理します。

static def setBitetarget(def target)

襲撃対象の参加者を設定します。

def startPhase()

議論時間・夜時間を開始するときに呼び出されます。

 
Methods inherited from class Civilian
checkStep, copynoticelog, getCommands, getJustnumber, getPriority, getRoleName, getUpdatePriority, isCivilian, isInvisible, isLive, isWolf, judge, killed, notice, noticeKilled, noticeRole, propertyMissing, propertyMissing, receiveMessage, reset, roleIs, startPhase, update
 

Property Detail

bite

static def bite
この役職が初日犠牲者として死亡しないかどうかを表します。初日犠牲者として死亡することのない役職はtrueに設定します。
全ての役職クラスはこのプロパティを自身で定義する必要があります。


number

static def number
この役職の人数を表します。
全ての役職クラスはこのプロパティを自身で定義する必要があります。


order

static def order
役職の順番を表します。
これはツール本体の「ゲームを開始する」ダイアログで使用されます。 全ての役職クラスはこのプロパティを自身で定義する必要があり、 またその値はCivilian.orderよりも大きいものにしなくてはいけません。


strings

static def strings
ローカライズされた文字列のバンドルです。


 
Constructor Detail

Wolf

Wolf(def actor = null)
指定の参加者でインスタンスを作成します。
Parameters:
actor - この役職インスタンスを持つ参加者


 
Method Detail

getBitetarget

static def getBitetarget()
襲撃対象の参加者を返します。


getCommands

def getCommands(def actors)
ツール本体から手動でコマンドを選択するために、そのリストを返します。
Parameters:
actors - 全参加者のリスト
Returns:
選択出来るコマンドのリスト


getJustnumber

static def getJustnumber(def number)
役職人数の初期値を返します。参加人数に応じて人数を自動で変動させるなどしますが、あくまでも初期値であるため人数はツール本体からいくらでも変更出来ます。
Parameters:
ゲームの参加人数
Returns:
この役職の人数の初期設定値


getPriority

def getPriority()
役職の優先度を返します。これは役職順に並べ替える際などに使用されます。
Returns:
役職の優先度


getRoleName

def getRoleName()
役職の名前を返します。
Returns:
役職名


isCivilian

def isCivilian()
村人としてカウントされるかどうかを表します。
Returns:
村人としてカウントされるならtrue


isInvisible

static def isInvisible()
「ゲームを開始する」ダイアログで「役職は初日に噛まれない」を非表示にするかどうかを返します。 非表示にすることでbiteの値を変更出来なくなります。
Returns:
非表示の場合はtrue、そうでなければfalse


isWolf

def isWolf()
狼としてカウントされるかどうかを表します。
Returns:
狼としてカウントされるならtrue


judge

def judge(def result)
勝敗を判定します。狼の勝利条件は狼陣営の勝利です。
Parameters:
result - 村人陣営の勝利なら0、狼陣営の勝利なら1、妖狐陣営の勝利なら2。引き分けの場合は-1
Returns:
勝利ならtrue


noticeRole

def noticeRole()
参加者に対し役職の通知を行います。誰が仲間の狼かも通知します。


receiveMessage

def receiveMessage(def type, def target)
コマンドを処理します。昼時間の投票の他、夜時間の噛みを処理します。
Parameters:
type - コマンド名
target - コマンドの対象


setBitetarget

static def setBitetarget(def target)
襲撃対象の参加者を設定します。


startPhase

def startPhase()
議論時間・夜時間を開始するときに呼び出されます。


 

GJSS 0.21