if (start_points_.empty()) {
start_points_.push_back(VGet(0, 0, 0));
}
+
+ int handle = map_handle_.handle();
+ int frame_num = MV1GetMeshNum(handle);
+ for (int i = 0; i < frame_num; i++) {
+ if (MV1GetMeshSemiTransState(handle, i) == TRUE) {
+ draw_after_meshes_.insert(i);
+ }
+ }
/*
auto warp_points_array = map_handle_.property().get_child("stage.warp_points", ptree());
for (auto it = warp_points_array.begin(); it != warp_points_array.end(); ++it) {
{
MMO_PROFILE_FUNCTION;
+ int handle = map_handle_.handle();
+ int frame_num = MV1GetMeshNum(handle);
+ for (int i = 0; i < frame_num; i++) {
+ if (draw_after_meshes_.find(i) == draw_after_meshes_.end()) {
+ MV1DrawMesh(handle, i);
+ }
+ }
+
MV1DrawModel(skymap_handle_.handle());
- MV1DrawModel(map_handle_.handle());
/*
BOOST_FOREACH(auto warp_handle,warpobj_array_)
*/
}
+void Stage::DrawAfter()
+{
+ MMO_PROFILE_FUNCTION;
+
+ int handle = map_handle_.handle();
+ int frame_num = MV1GetMeshNum(handle);
+ for (int i = 0; i < frame_num; i++) {
+ if (draw_after_meshes_.find(i) != draw_after_meshes_.end()) {
+ MV1DrawMesh(handle, i);
+ }
+ }
+}
+
float Stage::GetFloorY(const VECTOR& v1, const VECTOR& v2) const
{
MMO_PROFILE_FUNCTION;
Stage(const tstring& model_path);
~Stage();
void Draw();
+ void DrawAfter();
float GetFloorY(const VECTOR& v1, const VECTOR& v2) const;
bool GetFloorY(const VECTOR& v1, const VECTOR& v2, float* y) const;
ModelHandle map_handle_;
float map_scale_;
float min_height_;
+
+ std::unordered_set<int> draw_after_meshes_;
+
ModelHandle skymap_handle_;
ModelHandle warpobj_handle_;
std::vector<ModelHandle> warpobj_array_;
SetDrawArea(absolute_x(), absolute_y(),
absolute_x() + absolute_width(), absolute_y() + absolute_height());
if (item_start_ >= 0) {
+ int index = 0;
BOOST_FOREACH (UIBasePtr& item_ptr, items_) {
- item_ptr->Draw();
+ if (index >= item_start_ && index <= item_end_) {
+ item_ptr->Draw();
+ }
+ index++;
}
}
SetDrawAreaFull();
#define MMO_VERSION_MAJOR 0
#define MMO_VERSION_MINOR 3
-#define MMO_VERSION_REVISION 10
+#define MMO_VERSION_REVISION 11
#define MMO_PROTOCOL_VERSION 2