当前位置: 首页>>代码示例>>C++>>正文


C++ GameObject::GetGOData方法代码示例

本文整理汇总了C++中GameObject::GetGOData方法的典型用法代码示例。如果您正苦于以下问题:C++ GameObject::GetGOData方法的具体用法?C++ GameObject::GetGOData怎么用?C++ GameObject::GetGOData使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在GameObject的用法示例。


在下文中一共展示了GameObject::GetGOData方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。

示例1: HandleGameObjectSetScaleCommand

    static bool HandleGameObjectSetScaleCommand(ChatHandler* handler, char const* args)
    {
        // number or [name] Shift-click form |color|Hgameobject:go_id|h[name]|h|r
        char* id = handler->extractKeyFromLink((char*)args, "Hgameobject");
        if (!id)
            return false;

        uint32 guidLow = atoi(id);
        if (!guidLow)
            return false;

        GameObject* object = NULL;

        if (GameObjectData const* gameObjectData = sObjectMgr->GetGOData(guidLow))
            object = handler->GetObjectGlobalyWithGuidOrNearWithDbGuid(guidLow, gameObjectData->id);

        if (!object)
        {
            handler->PSendSysMessage(LANG_COMMAND_OBJNOTFOUND, guidLow);
            handler->SetSentErrorMessage(true);
            return false;
        }

        char* scale_temp = strtok(NULL, " ");
        if (!scale_temp)
        {
            handler->SendSysMessage(LANG_BAD_VALUE);
            handler->SetSentErrorMessage(true);
            return false;
        }

        float scale = atof(scale_temp);

        if (scale <= 0.0f)
        {
            scale = object->GetGOInfo()->size;
            const_cast<GameObjectData*>(object->GetGOData())->size = -1.0f;
        }
        else
        {
            const_cast<GameObjectData*>(object->GetGOData())->size = scale;
        }

        object->SetObjectScale(scale);
        object->DestroyForNearbyPlayers();
        object->UpdateObjectVisibility();
        object->SaveToDB();

        handler->PSendSysMessage("Set %s scale to %f", object->GetGUID().ToString(), scale);
        return true;
    }
开发者ID:FixCore,项目名称:335source,代码行数:51,代码来源:cs_gobject.cpp


注:本文中的GameObject::GetGOData方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。