GameServer
|
エリア基底クラス [詳解]
#include <AreaBase.h>
公開メンバ関数 | |
AreaBase (const AreaItem *pItem) | |
コンストラクタ [詳解] | |
virtual | ~AreaBase () |
デストラクタ [詳解] | |
virtual void | Initialize () |
初期化 [詳解] | |
void | Poll (int DeltaTime) |
毎フレームの処理 [詳解] | |
void | AddPlayerCharacter (const PlayerCharacterPtr &pPlayer) |
プレイヤーキャラ追加 [詳解] | |
void | RemovePlayerCharacter (u32 Uuid) |
プレイヤーキャラ削除 [詳解] | |
void | OnRecvMove (u32 Uuid, float X, float Y, float Z, float Rotation) |
移動を受信した [詳解] | |
void | OnRecvSkillUse (u32 Uuid, u32 SkillId, u8 TargetType, u32 TargetUuid) |
スキル使用を受信した。 [詳解] | |
void | OnRecvItemUse (u32 Uuid, u32 ItemId, u8 TargetType, u32 TargetUuid) |
void | BroadcastPacket (PacketBase *pPacket, Client *pIgnoreClient=NULL) |
パケットのブロードキャスト [詳解] | |
void | BroadcastPacketWithRange (PacketBase *pPacket, const Vector3D &Center, float Range, Client *pIgnoreClient=NULL) |
範囲を指定したパケットのブロードキャスト [詳解] | |
float | GetHeight (float X, float Y) const |
高さを取得 [詳解] | |
bool | CheckMovable (const Vector3D &Start, const Vector3D &End, float ClimbableHeight, Vector3D &OutHit) const |
移動できるかどうかをチェック [詳解] | |
virtual u32 | GetId () const =0 |
IDを取得 [詳解] | |
u32 | GetMasterId () const |
マスタIDを取得 [詳解] | |
virtual bool | IsAbleDelete () const =0 |
消去可能か? [詳解] | |
virtual bool | IsInstance () const |
インスタンスエリアか? [詳解] | |
void | CollectCircle (const Vector3D &Center, float Radius, u8 TargetType, std::vector< CharacterBase *> &OutTargets) |
円形でターゲットを取得 [詳解] | |
void | CollectBox (const Vector3D &Center, float Width, float Height, u8 TargetType, std::vector< CharacterBase *> &OutTargets) |
矩形でターゲットを取得 [詳解] | |
限定公開メンバ関数 | |
virtual void | Update () |
更新処理 [詳解] | |
限定公開変数類 | |
PlayerManager | PlayerMgr |
プレイヤー管理. [詳解] | |
AnpanManager | AnpanMgr |
アンパン管理. [詳解] | |
エリア基底クラス
AreaBase::AreaBase | ( | const AreaItem * | pItem | ) |
コンストラクタ
[in] | pItem | エリアマスタアイテム |
|
inlinevirtual |
デストラクタ
void AreaBase::AddPlayerCharacter | ( | const PlayerCharacterPtr & | pPlayer | ) |
プレイヤーキャラ追加
[in] | pPlayer | プレイヤーキャラへのweak_ptr |
void AreaBase::BroadcastPacket | ( | PacketBase * | pPacket, |
Client * | pIgnoreClient = NULL |
||
) |
パケットのブロードキャスト
エリア内にいるプレイヤー全員にパケットをバラ撒く。
[in] | pPacket | パケット |
[in] | pIgnoreClient | 除外するクライアント |
void AreaBase::BroadcastPacketWithRange | ( | PacketBase * | pPacket, |
const Vector3D & | Center, | ||
float | Range, | ||
Client * | pIgnoreClient = NULL |
||
) |
範囲を指定したパケットのブロードキャスト
範囲内にいるプレイヤー全員にパケットをバラ撒く。
[in] | pPacket | パケット |
[in] | Center | 中心座標 |
[in] | Range | 半径 |
[in] | pIgnoreClient | 除外するクライアント |
bool AreaBase::CheckMovable | ( | const Vector3D & | Start, |
const Vector3D & | End, | ||
float | ClimbableHeight, | ||
Vector3D & | OutHit | ||
) | const |
移動できるかどうかをチェック
レイキャストによるチェック
[in] | Start | チェック開始地点 |
[in] | End | チェック終了地点 |
[in] | float | ClimbableHeight 登ることができる高さ |
[out] | OutHit | レイが当たった地点 |
void AreaBase::CollectBox | ( | const Vector3D & | Center, |
float | Width, | ||
float | Height, | ||
u8 | TargetType, | ||
std::vector< CharacterBase *> & | OutTargets | ||
) |
矩形でターゲットを取得
[in] | Center | 中心座標 |
[in] | Width | 幅 |
[in] | Height | 高さ |
[in] | TargetType | ターゲットタイプ |
[out] | OutTargets | ターゲットリスト |
void AreaBase::CollectCircle | ( | const Vector3D & | Center, |
float | Radius, | ||
u8 | TargetType, | ||
std::vector< CharacterBase *> & | OutTargets | ||
) |
円形でターゲットを取得
[in] | Center | 中心座標 |
[in] | Radius | 半径 |
[in] | TargetType | ターゲットタイプ |
[out] | OutTargets | ターゲットリスト |
float AreaBase::GetHeight | ( | float | X, |
float | Y | ||
) | const |
高さを取得
ハイトマップを参照して高さを返す
[in] | X | X座標 |
[in] | Y | Y座標 |
|
pure virtual |
|
inline |
マスタIDを取得
|
inlinevirtual |
|
pure virtual |
|
inlinevirtual |
void AreaBase::OnRecvMove | ( | u32 | Uuid, |
float | X, | ||
float | Y, | ||
float | Z, | ||
float | Rotation | ||
) |
スキル使用を受信した。
[in] | Uuid | プレイヤーキャラのUUID |
[in] | SkillId | スキルID |
[in] | TargetType | ターゲットタイプ |
[in] | TargetUuid | ターゲットのUUID |
void AreaBase::Poll | ( | int | DeltaTime | ) |
毎フレームの処理
[in] | 前フレームからの経過時間 |
void AreaBase::RemovePlayerCharacter | ( | u32 | Uuid | ) |
プレイヤーキャラ削除
[in] | Uuid | プレイヤーキャラのUUID |
|
inlineprotectedvirtual |
|
protected |
アンパン管理.
|
protected |
プレイヤー管理.