Class

Player

Player(opt)

プレイヤーのステータスを保持するクラス. HP, MP, nameに加えて, 以下のステータスを持つ.

  • id: メインカードとしてのID
  • suitString: 自身の属性を表す文字列
  • mark: Suits内におけるsuitStringのインデックス
  • SG: ソウルジェムの値 (0~100で表現)
  • mainSkill: メインスキルを表すオブジェクト
  • mainSkillCount: メインスキルの残り使用可能回数
  • shield: シールドの残り回数
  • stun: 行動不能状態の残り時間

ただし, これらのステータスもカプセル化されているので, メソッドでアクセスする.

Constructor

# new Player(opt)

指定されたカードデータを元にしてインスタンスを生成する (カードデータの情報はinit()により取り込まれる. init()も参照のこと).

Parameters:
Name Type Description
opt Object

メインカードのデータを格納した連想配列

Properties:
Name Type Description
HPMeter stdtask.Meter

HPの値を表すMeterオブジェクト

MPMeter stdtask.Meter

MPの値を表すMeterオブジェクト

SGMeter stdtask.Meter

SGの値を表すMeterオブジェクト

View Source model.js, line 155

Extends

Methods

# HP() → {number}

Overrides:

View Source model.js, line 49

現在のHP

number

# MP() → {number}

Overrides:

View Source model.js, line 52

現在のMP

number

# SG() → {number}

View Source model.js, line 171

現在のSG

number

# addHP(v)

指定した値をHPに加える. 同時にHPMeterのchangeToメソッドを呼び出す. ただし, 取りうる値の範囲を越えている場合, 最終的に保持される値は 0 (最小値) or 最大HP (最大値) に修正される.

Parameters:
Name Type Description
v number

加算する値

Overrides:

View Source model.js, line 63

# addMP(v)

指定した値をMPに加える. 同時にMPMeterのchangeToメソッドを呼び出す. ただし, 結果が 0 以下になる場合, 最終的に保持される値は 1 になる.

Parameters:
Name Type Description
v number

加算する値

Overrides:

View Source model.js, line 75

# addSG(v, framesopt)

指定した値をSGに加える. 同時にSGMeterのchangeToメソッドを呼び出す. ただし, 取りうる値の範囲を越えている場合, 最終的に保持される値は 0 (最小値) or 100 (最大値) に修正される.

Parameters:
Name Type Attributes Default Description
v number

加算する値

frames number <optional>
60

changeToメソッドの引数として与えるフレーム数

View Source model.js, line 218

# addShield(v)

シールドの残り回数にvを加える. ただし, 結果が負になる場合は 0 にする.

Parameters:
Name Type Description
v number

加算する値

View Source model.js, line 250

# addStun(v)

行動不能状態の残り時間にvを加える. ただし, 結果が負になる場合は 0 にする.

Parameters:
Name Type Description
v number

加算する値

View Source model.js, line 259

# id() → {string}

View Source model.js, line 166

メインカードとしてのID

string

# init(opt)

指定されたカードデータを元にこのオブジェクトを初期化する. ここで, カードデータとは

  1. ROW_CARD_DATAに登録されている要素のいずれか
  2. または, それらと互換性のある連想配列 のことを指す.

実際にはすべてのフィールドを参照するわけではなく, optに次の要素が 設定されていればよい.

  • id
  • character
  • suit_string
  • MP
  • HP
  • main (メインスキルがある場合)

このゲームにおける「プレイヤー」とはMAGICARD BATTLEでの「メインカード」 と基本的に同義であるので, チュートリアルなど特殊な状況を除いては カードデータを参照することになる.

Parameters:
Name Type Description
opt Object

メインカードのデータを格納した連想配列

Overrides:

View Source model.js, line 312

# isPrismatic() → {boolean}

このオブジェクトの属性が複合属性かどうか判定する.

View Source model.js, line 202

複合属性ならtrue, 基本属性ならfalse

boolean

# mainSkillCount() → {number}

View Source model.js, line 207

メインスキルの残り使用可能回数

number

# mark() → {number}

このオブジェクトの属性をSuits内におけるインデックスで表した値.

View Source model.js, line 194

このオブジェクトの属性を表す数字

number

# name() → {string}

Overrides:

View Source model.js, line 55

設定された名前

string

# parseMainSkill(opt) → (nullable) {Object}

指定されたカードデータを読み取り, メインスキルが存在する場合は そのスキルを実現するオブジェクトを生成する (init()も参照のこと). もしメインスキルが存在しない場合はnullを返す.

Parameters:
Name Type Description
opt Object.<string, *>

カードデータを格納した連想配列

View Source model.js, line 283

メインスキルがあれば生成されたオブジェクト, 存在しない場合はnull

Object

# payCost(cost) → {boolean}

SGの値がcost以上ならば, addSG(-cost, 5)を実行する. そうでない場合は何もしない.

Parameters:
Name Type Description
cost number

SGから減算する値

View Source model.js, line 239

SGからcostを減算した場合true, そうでない場合false

boolean

# percentHP(p) → {number}

(最大HP × p/100) の端数を切り捨てた値を計算する.

Parameters:
Name Type Description
p number

倍率をパーセントで表現した数値

Overrides:

View Source model.js, line 86

求めた値

number

# percentMP(p) → {number}

(基本MP × p/100) の端数を切り捨てた値を計算する.

Parameters:
Name Type Description
p number

倍率をパーセントで表現した数値

Overrides:

View Source model.js, line 95

求めた値

number

# resetSG()

SGの値を100にする. 同時にSGMeterのchangeToメソッドを呼び出す.

View Source model.js, line 228

# retentionRateHP() → {number}

(現在のHP / 最大HP) を計算する.

Overrides:

View Source model.js, line 103

求めた値

number

# retentionRateMP() → {number}

(現在のMP / 基本MP) を計算する.

Overrides:

View Source model.js, line 111

求めた値

number

# shield() → {number}

View Source model.js, line 176

シールドの残り回数

number

# shiftMainSkill() → (nullable) {Object}

メインスキルが使用可能ならば, 残り使用回数 1 減らしてから メインカードを返す.

View Source model.js, line 269

メインカードが使用可能ならメインカードオブジェクト, 使用可能でない場合はnull

Object

# stun() → {number}

View Source model.js, line 181

行動不能状態の残り時間

number

# suitString() → {string}

View Source model.js, line 186

このオブジェクトの属性を表す文字列

string