|
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 |
プレイヤー管理.
1.8.14