リファレンス トップ >> API
■はじめに
スクリプトからキャラや弾、ステージやエフェクトを操作する処理が用意されています。
API
- 弾関連
- キャラ関連
- ステージ関連
- エフェクト関連
- int C_CreateBullet(double proc_type, double chr_obj_no, double chara_type, double blt_type, double obj_type, double posx, double posy, double vecx, double vecy, double addx, double addy, double hit_range, double extdata1, double extdata2)
弾を作成します。
引数
- proc_type - 呼び出し元のスクリプト、作成する弾で、下記の定数値を指定してください。
BLT_PROC_TYPE_SCR_CHARA : キャラスクリプトの通常弾
BLT_PROC_TYPE_SCR_SPELL : キャラスクリプトのスペルカード
BLT_PROC_TYPE_SCR_STAGE :- ステージスクリプト
- chr_obj_no - 作成するキャラのオブジェクト番号
- chara_type - キャラの弾を作成する場合はスクリプトIDを入れてください。
ステージの弾を作成する場合は定数値DEF_STAGE_IDを入れてください。
- blt_type - クラスのbltテーブル順のインデックス値を入れてください。
※このインデックス値は0スタートです。
- obj_type - 弾の種類を下記の定数値から設定してください
OBJ_TYPE_SOLID : 通常はこの弾です。ステージ、弾、キャラに当たり判定があり、風に影響される弾です。
OBJ_TYPE_GAS : 弾、キャラに当たり判定があり、風に影響される弾です。
OBJ_TYPE_LIQUID : ステージ、弾、キャラに当たり判定があり、風に影響されない弾です。ステージに接地していない場合は落下します。
OBJ_TYPE_STAGE : 弾、キャラに当たり判定があり、風に影響されない弾です。
OBJ_TYPE_TACTIC : 当たり判定が無く、風に影響されない、描画もされません。
- posx - 初期位置X
- posy - 初期位置X
- vecx - 移動値X
- vecy - 移動値Y
- addx - 加速値X
- addy - 加速値Y
- hit_range - 当たり判定範囲半径
- extdata1 - 拡張情報1(32bit符号無し整数値)
- extdata2 - 拡張情報2(32bit符号無し整数値)
戻り値:整数値
サーバ側の戻り値はオブジェクト番号が返ります。失敗した場合は-1が返ります。
クライアント側の戻り値は-1が固定で返ります。
△
- bool C_RemoveBullet(double obj_no, int rm_type)
弾を削除します。
引数
- obj_no - オブジェクト番号
- rm_type - 削除のタイプ、下記のタイプがあります。現状特に意味はありません。
0 : 通常
1 : 画面がに出た
2 : 爆発するから消える
3 : シールドで消える
戻り値:true/false
削除が成功するとtrueを返します。
△
- bool C_BombObject(int scr_id, int blt_type, int blt_chr_no, int blt_no, int pos_x, int pos_y,int erase=1)
弾を爆発させます。爆発させても弾は削除されません。
爆発させた後に弾を削除すると通信のラグの関係で削除タイミングが遅れて弾が少し残ってしまう場合があります。
爆発と一緒に弾を消す場合は、C_RemoveBulletを呼び出した後にC_BombObjectを呼び出してください。
引数
- scr_id - キャラの弾を爆発させる場合はスクリプトID。
ステージの弾を作成する場合は定数値DEF_STAGE_ID。
- blt_type - クラスのbltテーブル順のインデックス値。
※このインデックス値は0スタートです。
- blt_chr_no - 弾を作ったキャラのオブジェクト番号。
ステージの弾の場合は定数値のDEF_STAGE_OBJ_NOを設定してください。
- pos_x - 爆発中心位置X
- pos_y - 爆発中心位置Y
- erase - ステージを削除する場合1、削除しない場合は0
戻り値:true/false
成功するとtrueを返します。
△
- bool C_DamageCharaHP(int assailant_no, int victim_no, int hp)
キャラのHPを増減させます。
ダメージを被るキャラのHPの増減。ダメージを被るキャラとダメージを与えたキャラのスペルカードのポイントが増加します。
引数
- assailant_no - ダメージを与えるキャラのオブジェクト番号。
- victim_no - ダメージを被るキャラのオブジェクト番号。
- hp - HPの増減値
戻り値:true/false
成功するとtrueを返します。
△
- bool C_UpdateCharaStatus(int obj_no, int hp, int mv, int delay, int exp)
キャラのHP,移動値、ディレイ値、スペルカードのポイントを操作します。
各値には増減させたい値を入れてください。
引数
- obj_no - キャラのオブジェクト番号
- hp - HPの増減値
- mv - 移動値の増減値
- delay - ディレイ値の増減値
- exp - スペルカードのポイントの増減値
戻り値:true/false
成功するとtrueを返します。
△
- bool C_UpdateCharaPos(int obj_no, int x,int y)
キャラの位置を更新します。
引数
- obj_no - キャラのオブジェクト番号
- x - 位置X
- y - 位置Y
戻り値:true/false
成功するとtrueを返します。
△
- bool C_SetBulletExtData1(int obj_no, int extdata1)
弾の拡張情報1の値を設定します
作成した弾に自由に扱える変数として拡張情報1、拡張情報2が用意されています。
値を設定するにはこの関数を使用します。
拡張情報1,拡張情報2は32bitの符号無し整数で保持されます。
引数
- obj_no - 弾のオブジェクト番号
- extdata1 - 拡張情報1に設定したい値(32bit符号無し整数)
戻り値:true/false
成功するとtrueを返します。
△
- bool C_SetBulletExtData2(int obj_no, int extdata2)
弾の拡張情報2の値を設定します
作成した弾に自由に扱える変数として拡張情報1、拡張情報2が用意されています。
値を設定するにはこの関数を使用します。
拡張情報1,拡張情報2は32bitの符号無し整数で保持されます。
引数
- obj_no - 弾のオブジェクト番号
- extdata2 - 拡張情報2に設定したい値(32bit符号無し整数)
戻り値:true/false
成功するとtrueを返します。
△
- unsigned int C_GetCharaExtData1(int obj_no)
キャラの拡張情報1の値を取得します
作成したキャラに自由に扱える変数として拡張情報1、拡張情報2が用意されています。
値を取得するにはこの関数を使用します。
拡張情報1,拡張情報2は32bitの符号無し整数で保持されます。
戻り値:32bit符号無し整数
拡張情報1の値を返します。
△
- unsigned int C_GetCharaExtData2(int obj_no)
キャラの拡張情報2の値を取得します
作成したキャラに自由に扱える変数として拡張情報1、拡張情報2が用意されています。
値を取得するにはこの関数を使用します。
拡張情報1,拡張情報2は32bitの符号無し整数で保持されます。
戻り値:32bit符号無し整数
拡張情報2の値を返します。
△
- bool C_SetCharaExtData1(int obj_no, int extdata1)
キャラの拡張情報1の値を設定します
作成したキャラに自由に扱える変数として拡張情報1、拡張情報2が用意されています。
値を設定するにはこの関数を使用します。
拡張情報1,拡張情報2は32bitの符号無し整数で保持されます。
引数
- obj_no - キャラのオブジェクト番号
- extdata1 - 拡張情報1に設定したい値(32bit符号無し整数)
戻り値:true/false
成功するとtrueを返します。
△
- bool C_SetCharaExtData2(int obj_no, int extdata2)
キャラの拡張情報2の値を設定します
作成したキャラに自由に扱える変数として拡張情報1、拡張情報2が用意されています。
値を設定するにはこの関数を使用します。
拡張情報1,拡張情報2は32bitの符号無し整数で保持されます。
引数
- obj_no - キャラのオブジェクト番号
- extdata2 - 拡張情報2に設定したい値(32bit符号無し整数)
戻り値:true/false
成功するとtrueを返します。
△
- unsigned int C_GetBulletExtData1(int obj_no)
弾の拡張情報1の値を取得します
作成した弾に自由に扱える変数として拡張情報1、拡張情報2が用意されています。
値を取得するにはこの関数を使用します。
拡張情報1,拡張情報2は32bitの符号無し整数で保持されます。
戻り値:32bit符号無し整数
拡張情報1の値を返します。
△
- unsigned int C_GetBulletExtData2(int obj_no)
弾の拡張情報2の値を取得します
作成した弾に自由に扱える変数として拡張情報1、拡張情報2が用意されています。
値を取得するにはこの関数を使用します。
拡張情報1,拡張情報2は32bitの符号無し整数で保持されます。
戻り値:32bit符号無し整数
拡張情報2の値を返します。
△
- unsigned int C_Shot(int chr_obj_no, int proc_type, int chr_id, int blt_type, int vec_angle, int power, int frame,indicator_angle,indicator_power)
弾の発射処理をスクリプトで行います。
- ※indicator_angle, indicator_powerは20161231版から設定できます
引数
- chr_obj_no - 作成するキャラのオブジェクト番号
- proc_type - 呼び出し元のスクリプト、作成する弾で、下記の定数値を指定してください。
BLT_PROC_TYPE_SCR_CHARA : キャラスクリプトの通常弾
BLT_PROC_TYPE_SCR_SPELL : キャラスクリプトのスペルカード
BLT_PROC_TYPE_SCR_STAGE :- ステージスクリプト
- chr_id - キャラのスクリプトIDを入れてください。
- blt_type - クラスのbltテーブル順のインデックス値を入れてください。
※このインデックス値は0スタートです。
- vec_angle - 弾の発射角度
- power - power - 発射するパワー。範囲(0<=power<=DEF_MAX_SHOT_POWER)
- frame - 発射アニメーションでの発射までのフレーム数
- indicator_angle - 角度メモリの位置(右が0で時計回りで359まで)
- indicator_power - パワーメモリの位置(0<=power<=DEF_MAX_SHOT_POWER)
戻り値:true/false
成功するとtrueを返します。
△
- unsigned int C_GetBulletOptionData(int obj_no,int index)
弾のオプションデータの値を取得します
作成した弾に自由に扱える変数として用意されています。
拡張情報は引数から取れますがオプションデータは関数や構造体の参照からしか取得できません。
オプションデータは32bitの符号無し整数が8個配列で保持されています。
引数
- obj_no - 弾のオブジェクト番号
- index - 8個の配列の何番目の値を取得するか(範囲:0〜7)
戻り値:32bit符号無し整数
オプションデータのindex番目の値を返します。
△
- unsigned int C_SetBulletOptionData(int obj_no,int index,unsigned long data)
弾のオプションデータの値を設定します
作成した弾に自由に扱える変数として用意されています。
オプションデータは32bitの符号無し整数が8個配列で保持されています。
引数
- obj_no - 弾のオブジェクト番号
- index - 8個の配列の何番目の値を設定するか(範囲:0〜7)
- data - 設定したい値
戻り値:true/false
成功するとtrueを返します。
△
- unsigned int C_GetCharaOptionData(int obj_no,int index)
キャラのオプションデータの値を取得します
各ユーザーに自由に扱える変数として用意されています。
拡張情報は引数から取れますがオプションデータは関数や構造体の参照からしか取得できません。
オプションデータは32bitの符号無し整数が8個配列で保持されています。
引数
- obj_no - キャラのオブジェクト番号
- index - 8個の配列の何番目の値を取得するか(範囲:0〜7)
戻り値:32bit符号無し整数
オプションデータのindex番目の値を返します。
△
- unsigned int C_SetCharaOptionData(int obj_no,int index,unsigned long data)
キャラのオプションデータの値を設定します
各ユーザーに自由に扱える変数として用意されています。
オプションデータは32bitの符号無し整数が8個配列で保持されています。
引数
- obj_no - キャラのオブジェクト番号
- index - 8個の配列の何番目の値を設定するか(範囲:0〜7)
- data - 設定したい値
戻り値:true/false
成功するとtrueを返します。
△
- bool C_AddCharaItem(int obj_no, int item)
手持ちのアイテムを追加します
持てる数の上限を超えていた場合、スペルカードのポイントが一定値加算されます。
引数
- obj_no - キャラのオブジェクト番号
- item - 弾のオブジェクト番号。下記の定数から選択してください。
GAME_ITEM_MOVE_UP : 移動値増加
GAME_ITEM_DOUBLE_SHOT : 連射
GAME_ITEM_STEALTH : ステルス
GAME_ITEM_REVERSE : 上下反転
GAME_ITEM_BLIND : 暗転
GAME_ITEM_SHIELD : シールド
GAME_ITEM_POWER : パワーアップ
GAME_ITEM_NOANGLE : 角度変更不可
GAME_ITEM_NOMOVE : 移動不可
GAME_ITEM_REPAIR : 回復(小)
GAME_ITEM_REPAIR_BULLET : 回復弾
GAME_ITEM_TELEPORT : 移動弾
GAME_ITEM_REPAIR_BIG : 回復(大幅)
GAME_ITEM_REPAIR_TEAM : チーム回復
GAME_ITEM_DRAIN : 吸収弾
GAME_ITEM_FETCH : 引き寄せ弾
GAME_ITEM_EXCHANGE : 入れ替え
GAME_ITEM_WIND_CHANGE : 風向き変更
戻り値:true/false
成功するとtrueを返します。
△
- bool C_SetCharaState(int obj_no, int chr_stt, int val)
キャラの状態を設定します
引数
- obj_no - キャラのオブジェクト番号
- chr_stt - キャラ状態の番号。下記の定数から選択してください。
各定数によってvalの引数についても扱いが違うので注意してください。
CHARA_STATE_STEALTH : ステルス。値は有効ターン数
CHARA_STATE_BLIND : 暗くなる。値は有効ターン数
CHARA_STATE_PAIN : 毒。値は有効ターン数
CHARA_STATE_SHIELD : シールド。値は有効/無効:1/0を設定してください
CHARA_STATE_POWER : パワーアップ。値は有効/無効:1/0を設定してください
CHARA_STATE_UPMOVE : 移動増加。値は有効ターン数
CHARA_STATE_NOMOVE : 移動不可。値は有効ターン数
CHARA_STATE_NOANGLE : 角度変更不可。値は有効ターン数
CHARA_STATE_DOUBLE : 二連発使用中。値は有効/無効:1/0を設定してください
CHARA_STATE_REVERSE : 逆さ。値は有効ターン数
CHARA_STATE_ITEM_REVERSE : 逆さ弾発射前状態。値は有効/無効:1/0を設定してください
CHARA_STATE_ITEM_BLIND : 暗くなる弾発射状態。値は有効/無効:1/0を設定してください
CHARA_STATE_ITEM_REPAIRBLT : 回復する弾発射状態。値は有効/無効:1/0を設定してください
CHARA_STATE_ITEM_TELEPORT : 着弾点に移動する弾発射状態。値は有効/無効:1/0を設定してください
CHARA_STATE_ITEM_DRAIN : HP吸収する弾発射状態。値は有効/無効:1/0を設定してください
CHARA_STATE_ITEM_FETCH : 引き寄せる弾発射状態。値は有効/無効:1/0を設定してください
CHARA_STATE_ITEM_EXCHANGE : 位置入れ替え弾発射状態。値は有効/無効:1/0を設定してください
CHARA_STATE_ITEM_NOANGLE : 角度変更不可弾発射状態。値は有効/無効:1/0を設定してください
CHARA_STATE_ITEM_NOMOVE : 移動不可弾発射状態。値は有効/無効:1/0を設定してください
CHARA_STATE_ITEM_STEAL : スティール状態。値は有効/無効:2/0を設定してください
- val - キャラ状態に設定する値。上記のchr_sttの説明を参照。
戻り値:true/false
成功するとtrueを返します。
△
- int C_GetCharaState(int obj_no, int chr_stt)
キャラの状態を取得します
引数
- obj_no - キャラのオブジェクト番号
- chr_stt - キャラ状態の番号。下記の定数から取得したい値を選択してください。
CHARA_STATE_STEALTH : ステルス。戻り値は有効ターン数
CHARA_STATE_BLIND : 暗くなる。戻り値は有効ターン数
CHARA_STATE_PAIN : 毒。値は有効ターン数
CHARA_STATE_SHIELD : シールド。戻り値は有効/無効:1/0を設定してください
CHARA_STATE_POWER : パワーアップ。戻り値は有効/無効:1/0を設定してください
CHARA_STATE_UPMOVE : 移動増加。戻り値は有効ターン数
CHARA_STATE_NOMOVE : 移動不可。戻り値は有効ターン数
CHARA_STATE_NOANGLE : 角度変更不可。戻り値は有効ターン数
CHARA_STATE_DOUBLE : 二連発使用中。戻り値は有効/無効:1/0を設定してください
CHARA_STATE_REVERSE : 逆さ。戻り値は有効ターン数
CHARA_STATE_ITEM_REVERSE : 逆さ弾発射前状態。戻り値は有効/無効:1/0を設定してください
CHARA_STATE_ITEM_BLIND : 暗くなる弾発射状態。戻り値は有効/無効:1/0を設定してください
CHARA_STATE_ITEM_REPAIRBLT : 回復する弾発射状態。戻り値は有効/無効:1/0を設定してください
CHARA_STATE_ITEM_TELEPORT : 着弾点に移動する弾発射状態。戻り値は有効/無効:1/0を設定してください
CHARA_STATE_ITEM_DRAIN : HP吸収する弾発射状態。戻り値は有効/無効:1/0を設定してください
CHARA_STATE_ITEM_FETCH : 引き寄せる弾発射状態。戻り値は有効/無効:1/0を設定してください
CHARA_STATE_ITEM_EXCHANGE : 位置入れ替え弾発射状態。戻り値は有効/無効:1/0を設定してください
CHARA_STATE_ITEM_NOANGLE : 角度変更不可弾発射状態。戻り値は有効/無効:1/0を設定してください
CHARA_STATE_ITEM_NOMOVE : 移動不可弾発射状態。戻り値は有効/無効:1/0を設定してください
CHARA_STATE_ITEM_STEAL : スティール状態。戻り値は有効/無効:2/0を設定してください
戻り値:設定されている値が入ります。失敗すると-1が返ります。
△
- unsigned long C_GetCharaItem(int obj_no, int item_index)
キャラの各アイテム状態を取得します
引数
- obj_no - キャラのオブジェクト番号
- item_index - アイテム状態の番号。下記の定数を指定することで各値が取得できます。
GAME_ITEM_MOVE_UP : 移動値増加
GAME_ITEM_DOUBLE_SHOT : 連射
GAME_ITEM_STEALTH : ステルス
GAME_ITEM_REVERSE : 上下反転
GAME_ITEM_BLIND : 暗転
GAME_ITEM_SHIELD : シールド
GAME_ITEM_POWER : パワーアップ
GAME_ITEM_NOANGLE : 角度変更不可
GAME_ITEM_NOMOVE : 移動不可
GAME_ITEM_REPAIR : 回復(小)
GAME_ITEM_REPAIR_BULLET : 回復弾
GAME_ITEM_TELEPORT : 移動弾
GAME_ITEM_REPAIR_BIG : 回復(大幅)
GAME_ITEM_REPAIR_TEAM : チーム回復
GAME_ITEM_DRAIN : 吸収弾
GAME_ITEM_FETCH : 引き寄せ弾
GAME_ITEM_EXCHANGE : 入れ替え
GAME_ITEM_WIND_CHANGE : 風向き変更
GAME_ITEM_STEAL : スティール
△
- bool C_UpdateBulletState(double obj_no, double state)
弾の状態を更新します。
この関数を使用することでサーバからクライアントへ状態更新のパケットが送信されます。
クライアント側に必ず起こらないイベントでもクライアントに必ず処理を行わせたい場合にイベントトリガとして使用して、
BaseBullet:OnUpdateState()イベント内で処理を行わせることもできます。
引数
- obj_no - 弾のオブジェクト番号
- state - 設定する状態。下記の定数から選択してください。
DEF_STATE_ACTIVE - ステージ上にアクティブな弾が存在している場合、次のターンへ移行しません。
DEF_STATE_WAIT - この状態の弾は存在していても次のターンへ移行します。
戻り値:true/false
成功するとtrueを返します。
△
- bool C_UpdateBulletPosition(double obj_no, double px, double py, double vx, double vy, double adx, double ady)
弾の位置情報を更新します。
引数
- obj_no - 弾のオブジェクト番号
- px - 弾の位置X
- py - 弾の位置Y
- vx - 弾の移動値X
- vy - 弾の移動値Y
- adx - 弾の加速値X
- ady - 弾の加速値Y
戻り値:true/false
成功するとtrueを返します。
△
- bool C_UpdateBulletVector(double obj_no, double vx, double vy, double adx, double ady)
弾の移動値情報を更新します。
引数
- obj_no - 弾のオブジェクト番号
- vx - 弾の移動値X
- vy - 弾の移動値Y
- adx - 弾の加速値X
- ady - 弾の加速値Y
戻り値:true/false
成功するとtrueを返します。
△
- void C_PasteTextureOnStage(int scr_id, int sx,int sy, int tx,int ty,int tw,int th)
ステージに画像を貼り付けます。
貼り付けることで、画像情報を元にステージが作成されます。
引数
- scr_id - キャラの弾を爆発させる場合はスクリプトID。
ステージの弾を作成する場合は定数値DEF_STAGE_ID。
- sx - 貼り付け開始するステージの座標X
- sy - 貼り付け開始するステージの座標Y
- tx - 貼り付け開始するスクリプト画像の座標X
- ty - 貼り付け開始するスクリプト画像の座標Y
- tw - 貼り付けるスクリプト画像の座標右端
- th - 貼り付けるスクリプト画像の座標下端
△
- int C_GetEntityCharacters()
存在するキャラ数を取得
ゲーム開始時のキャラ数です。
△
- int C_GetLivingCharacters()
生きているキャラ数を取得
△
- type_session C_GetCharacterAtVector(int index)
キャラ情報の構造体を取得します
全キャラの情報を取得したい場合、使用してください。
e=C_GetEntityCharacters()
for i=0,e do
chr = C_GetCharacterAtVector(i)
if chr == nil then break end
if chr.entity == 1 then
-- 処理
end
end
引数
- index - キャラのインデックス値。オブジェクト番号と異なります。
戻り値:キャラ情報の構造体
無い場合はnilを返ります。
△
- type_session C_GetCharacterFromObjNo(int obj_no)
キャラ情報の構造体を取得します
特定のキャラのキャラ情報を取得したい場合、使用してください。
戻り値:キャラ情報の構造体
無い場合はnilを返ります。
△
- type_blt C_GetBulletInfo(int obj_no)
弾情報の構造体を取得します
戻り値:弾情報の構造体
無い場合はnilを返ります。
△
- int C_GetBulletAtkValue(int blt_no)
弾威力を取得します
スクリプト上でbltテーブルからblt[1].atkなどで取得することも出来ます。
△
- int C_GetWindValue()
風向きの値を取得します
△
- void C_SetWindValue(int wind, int dir)
風向きを設定します
引数
- wind - 風向きの値。範囲(-10〜10)
- dir - 次ターンにどちらの方向に変化していくか設定できます。範囲(-3〜3)
△
- int C_GetStageWidth()
ステージの横幅を取得します。
△
- int C_GetStageHeight()
ステージの縦幅を取得します。
△
- bool C_UpdateObjectType(int obj_no, int type)
弾の種類を設定します。
引数
- obj_no - 弾のオブジェクト番号
- type - 更新するタイプ。下記の定数値から選択してください。
OBJ_TYPE_SOLID : 通常はこの弾です。ステージ、弾、キャラに当たり判定があり、風に影響される弾です。
OBJ_TYPE_GAS : 弾、キャラに当たり判定があり、風に影響される弾です。
OBJ_TYPE_LIQUID : ステージ、弾、キャラに当たり判定があり、風に影響されない弾です。
OBJ_TYPE_STAGE : 弾、キャラに当たり判定があり、風に影響されない弾です。
OBJ_TYPE_TACTIC : 当たり判定が無く、風に影響されない、描画もされません。
戻り値:true/false
成功するとtrueを返します。
△
- bool C_UpdateBulletAngle(double blt_no, double angle)
弾の表示角度を更新します。
サーバ側は処理されません。
引数
- blt_no - 弾のオブジェクト番号
- angle - 角度
戻り値:true/false
成功するとtrueを返します。
△
- bool C_SetBulletTextureIndex(double blt_no, double index)
弾のテクスチャインデックスを設定します
サーバ側は処理されません。
引数
- blt_no - 弾のオブジェクト番号
- index - インデックス値。1以上は表示範囲が右にずれていきます。
戻り値:true/false
成功するとtrueを返します。
△
- bool C_SetCharaTexture(int chr_no, int left, int top, int right, int bottom)
キャラのテクスチャの表示範囲を設定します
サーバ側は処理されません。
引数
- chr_no - キャラのオブジェクト番号
- left - テクスチャの座標左端
- top - テクスチャの座標上端
- right - テクスチャの座標右端
- bottom - テクスチャの座標下端
戻り値:true/false
成功するとtrueを返します。
△
- int C_AddEffect(double chr_id, double left, double top, double right, double bottom, double x, double y, double age)
エフェクトを追加します
サーバ側は処理されません。
引数
- chr_id - キャラの弾を爆発させる場合はスクリプトID。
ステージの弾を作成する場合は定数値DEF_STAGE_ID。
- left - テクスチャの座標左端
- top - テクスチャの座標上端
- right - テクスチャの座標右端
- x - ステージ上の位置X
- y - ステージ上の位置Y
- age - 有効フレーム数。0が設定されると削除命令があるまで場合消えません
戻り値:成功するとエフェクト番号を返します。失敗すると-1を返します。
サーバは必ず-1を返します。
△
- bool C_RemoveEffect(double effect_no)
エフェクトを削除します
サーバ側は処理されません。
戻り値:true/false
成功するとtrueを返します。
△
- bool C_SetEffectVector(double effect_no, double vx, double vy, double ax, double ay)
エフェクトの移動値を設定します。
サーバ側は処理されません。
引数
- effect_no - エフェクト番号
- vx - 移動値X
- vy - 移動値Y
- ax - 加速値X
- ay - 加速値Y
戻り値:true/false
成功するとtrueを返します。
△
- bool C_SetEffectAlpha(double effect_no, double alpha)
エフェクトのアルファ値を設定します。
サーバ側は処理されません。
引数
- effect_no - エフェクト番号
- alpha - 設定したいアルファ値。範囲(0〜255)
戻り値:true/false
成功するとtrueを返します。
△
- bool C_SetEffectFade(double effect_no, double fade, double effect_time=0)
エフェクトのフェードさせる。
毎フレームアルファ値を変化させます。C_SetEffectFadeは重複して処理できません。
サーバ側は処理されません。
引数
- effect_no - エフェクト番号
- fade - フェード値。範囲(0〜255)
- effect_time - 処理を行うフレーム数
戻り値:true/false
成功するとtrueを返します。
△
- bool C_SetEffectFadeInOut(double effect_no, double fadeinout)
エフェクトのフェードインフェードアウトさせる。
サーバ側は処理されません。
引数
- effect_no - エフェクト番号
- fadeinout - C_AddEffectのageで設定した値の始めと終わりをフェードさせるフレーム数
戻り値:true/false
成功するとtrueを返します。
△
- bool C_SetEffectRotate(double effect_no, double rot)
エフェクトの回転値を設定します。
サーバ側は処理されません。
引数
- effect_no - エフェクト番号
- rot - 回転させる角度
戻り値:true/false
成功するとtrueを返します。
△
- bool C_SetEffectRotation(double effect_no, double rot, double effect_time=0)
エフェクトを毎フレーム回転させます。
サーバ側は処理されません。
引数
- effect_no - エフェクト番号
- rot - 毎フレーム回転させる角度
- effect_time - 処理を行うフレーム数
戻り値:true/false
成功するとtrueを返します。
△
- bool C_SetEffectScale(double effect_no, double scalex, double scaley)
エフェクトを拡縮させます。
scalexをマイナスにするとY軸で反転、scaleyをマイナスにするとX軸で反転します。
サーバ側は処理されません。
引数
- effect_no - エフェクト番号
- sclaex - X方向の拡大率
- sclaey - Y方向の拡大率
戻り値:true/false
成功するとtrueを返します。
△
- bool C_SetEffectScalling(double effect_no, double scalex, double scaley, double effect_time=0)
エフェクトを毎フレーム拡縮させます。
サーバ側は処理されません。
引数
- effect_no - エフェクト番号
- sclaex - X方向の拡大率
- sclaey - Y方向の拡大率
- effect_time - 処理を行うフレーム数
戻り値:true/false
成功するとtrueを返します。
△
- bool C_SetEffectAnimation(double effect_no, double atime, double acount, bool loop, double effect_time=0)
エフェクトをアニメーションさせます。
サーバ側は処理されません。
引数
- effect_no - エフェクト番号
- atime - 次のコマを表示するまでのフレーム数
- acount - アニメーションのコマ数
- loop - ループするしない(true/false)
- effect_time - 処理を行うフレーム数
戻り値:true/false
成功するとtrueを返します。
△
- bool C_SetEffectTexture(int effect_no, double left, double top, double right, double bottom)
エフェクトのテクスチャを設定します。
サーバ側は処理されません。
引数
- effect_no - エフェクト番号
- left - 使用画像から設定したい範囲の左端
- top - 使用画像から設定したい範囲の右端
- right - 使用画像から設定したい範囲の上端
- bottom - 使用画像から設定したい範囲の下端
戻り値:true/false
成功するとtrueを返します。
△
- int C_AddBGEffect(double chr_id, double left, double top, double right, double bottom, double x, double y, double age)
キャラより後ろにエフェクトを描画させる以外、
C_AddEffectと同様です。
△
- bool C_RemoveBGEffect(double effect_no)
キャラより後ろにエフェクトを描画させる以外、
C_RemoveEffectと同様です。
△
- bool C_SetBGEffectVector(double effect_no, double vx, double vy, double ax, double ay)
キャラより後ろにエフェクトを描画させる以外、
C_SetEffectVectorと同様です。
△
- bool C_SetBGEffectAlpha(double effect_no, double alpha)
キャラより後ろにエフェクトを描画させる以外、
C_SetEffectAlphaと同様です。
△
- bool C_SetBGEffectFade(double effect_no, double fade, double effect_time=0)
キャラより後ろにエフェクトを描画させる以外、
C_SetEffectFadeと同様です。
△
- bool C_SetEffectBGFadeInOut(double effect_no, double fadeinout)
キャラより後ろにエフェクトを描画させる以外、
C_SetEffectFadeInOutと同様です。
△
- bool C_SetBGEffectRotate(double effect_no, double rot)
キャラより後ろにエフェクトを描画させる以外、
C_SetEffectRotateと同様です。
△
- bool C_SetBGEffectRotation(double effect_no, double rot, double effect_time=0)
キャラより後ろにエフェクトを描画させる以外、
C_SetEffectRotationと同様です。
△
- bool C_SetBGEffectScale(double effect_no, double scalex, double scaley)
キャラより後ろにエフェクトを描画させる以外、
C_SetEffectScaleと同様です。
△
- bool C_SetBGEffectScalling(double effect_no, double scalex, double scaley, double effect_time=0)
キャラより後ろにエフェクトを描画させる以外、
C_SetEffectScallingと同様です。
△
- bool C_SetBGEffectAnimation(double effect_no, double atime, double acount, bool loop, double effect_time=0)
キャラより後ろにエフェクトを描画させる以外、
C_SetEffectAnimationと同様です。
△
- bool C_SetBGEffectTexture(int effect_no, double left, double top, double right, double bottom)
キャラより後ろにエフェクトを描画させる以外、
C_SetEffectTextureと同様です。
△
- void C_HideStage()
ステージを非表示にします
サーバ側は処理されません。
△
- void C_ShowStage()
ステージを表示します
サーバ側は処理されません。
△
- void C_PlaySoundSE(char* rc_name, int loop=0, double fade=0)
音声を再生します。
各クラスのseテーブルに格納したパスのファイルが読み込まれています。
そのパスを引数に設定することで音声を再生させます。
サーバ側は処理されません。
引数
- rc_name - 再生したい音声ファイルのexeからの相対パス名。
- loop - ループ再生数。0を指定するとループしません。
- fade - 音声の最初と最後を設定フレーム数フェードさせる。0を指定するとフェードしません
△
- int C_GetMyCharaNo()
このスクリプトを呼び出したプログラムのキャラのオブジェクト番号を取得します。
サーバ側は-1が返ります。
△
- void C_AddMsgLog(char* str)
ログにメッセージを追加します
△
- int C_GetAngle(int x, int y)
x,yの値から角度を計算した結果を取得します。
△
- int C_GetScrIDFromChrNo(int obj_no)
キャラのオブジェクト番号からスクリプトIDを取得します。
△
- int C_GetUserTeamNo(int obj_no)
キャラのチーム番号を取得します。
個人バトルの場合でも別々の番号が入っています。
△
- char* C_GetUserName(int obj_no)
キャラのユーザ名を取得します。
△
- type_ground C_GetRandomStagePos()
ステージの地面がある位置をランダムで取得します。
※クライアントとサーバで取得できる値は違います。
戻り値:1箇所地面のあるステージが変える。
type_ground{
int x;
int y;
bool ground;
}
△
- type_ground C_GetGroundPos(int x, int y)
引数x,yの位置から地面に設置できる位置を垂直で探索して取得
接地できない位置の場合はtype_ground.groundにfalseが入っています。
引数
- x - 接地できる位置を探索したい位置X
- y - 接地できる位置を探索したい位置Y
戻り値:接地できる位置を取得。
type_ground{
int x;
int y;
bool ground;
}
△
- bool C_IsRemovedObject(int obj_no)
引数のオブジェクト番号の弾が削除されているか確認する
戻り値:削除されている場合:true/削除されていない場合:false
△
△