您当前的位置:首页 > IT编程 > C++
| C语言 | Java | VB | VC | python | Android | TensorFlow | C++ | oracle | 学术与代码 | cnn卷积神经网络 | gnn | 图像修复 | Keras | 数据集 | Neo4j | 自然语言处理 | 深度学习 | 医学CAD | 医学影像 | 超参数 | pointnet | pytorch | 异常检测 | Transformers | 情感分类 | 知识图谱 |

自学教程:C++ AddWaypoint函数代码示例

51自学网 2021-06-01 19:45:41
  C++
这篇教程C++ AddWaypoint函数代码示例写得很实用,希望能帮到您。

本文整理汇总了C++中AddWaypoint函数的典型用法代码示例。如果您正苦于以下问题:C++ AddWaypoint函数的具体用法?C++ AddWaypoint怎么用?C++ AddWaypoint使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。

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

示例1: StartEvent

 void StartEvent(Player* pPlayer) {     if (!pPlayer)         return;     if (pPlayer->GetQuestStatus(10965) == QUEST_STATUS_INCOMPLETE)     {         for (uint8 i = 0; i < 41; ++i)         {             AddWaypoint(i, Clintar_spirit_WP[i][0], Clintar_spirit_WP[i][1], Clintar_spirit_WP[i][2], (uint32)Clintar_spirit_WP[i][4]);         }         PlayerGUID = pPlayer->GetGUID();         Start(true,false,PlayerGUID);     }     return; }
开发者ID:SergeySV,项目名称:RoCore,代码行数:15,


示例2: StartEvent

 void StartEvent(Player* player) {     if (player && player->GetQuestStatus(10965) == QUEST_STATUS_INCOMPLETE)     {         for (uint8 i = 0; i < 41; ++i)         {             AddWaypoint(i, Clintar_spirit_WP[i][0], Clintar_spirit_WP[i][1], Clintar_spirit_WP[i][2], (uint32)Clintar_spirit_WP[i][4]);         }         PlayerGUID = player->GetGUID();         Start(true, false, PlayerGUID);         me->SetDisplayId(me->GetCreatureTemplate()->Modelid1);         me->RemoveFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NOT_SELECTABLE);     }     return; }
开发者ID:boom8866,项目名称:MaddieCore,代码行数:15,


示例3: DofNaralexAI

    explicit DofNaralexAI(Creature* pCreature) : CreatureAIScript(pCreature)    {        Mutanus = nullptr;        for (uint8 i = 1; i < 39; ++i)        {            AddWaypoint(CreateWaypoint(i, 0, Movement::WP_MOVE_TYPE_RUN, ToNaralex[i]));        }        SetWaypointMoveType(Movement::WP_MOVEMENT_SCRIPT_NONE);        // Awakening Spell        Awakening = addAISpell(6271, 0.0f, TARGET_SELF);        Awakening->addEmote("Step back and be ready!, I'll try to Awake Naralex", CHAT_MSG_MONSTER_SAY, 0);        SpawnTimer = 0;    }
开发者ID:AscEmu,项目名称:AscEmu,代码行数:17,


示例4: TiXmlElement

GpxRootElement::GpxRootElement(const wxString &creator, GpxMetadataElement *metadata, ListOfGpxWpts *waypoints, ListOfGpxRoutes *routes, ListOfGpxTracks *tracks, GpxExtensionsElement *extensions) : TiXmlElement("gpx"){      my_extensions = NULL;      my_metadata = NULL;      first_waypoint = NULL;      last_waypoint = NULL;      first_route = NULL;      last_route = NULL;      first_track = NULL;      last_track = NULL;      SetAttribute ( "version", "1.1" );      SetAttribute ( "creator", creator.ToUTF8() );      SetAttribute( "xmlns:xsi", "http://www.w3.org/2001/XMLSchema-instance" );      SetAttribute( "xmlns", "http://www.topografix.com/GPX/1/1" );      SetAttribute( "xmlns:gpxx", "http://www.garmin.com/xmlschemas/GpxExtensions/v3" );      SetAttribute( "xsi:schemaLocation", "http://www.topografix.com/GPX/1/1 http://www.topografix.com/GPX/1/1/gpx.xsd" );      SetMetadata(metadata);      if (waypoints) {            wxListOfGpxWptsNode *waypoint = waypoints->GetFirst();            while (waypoint)            {                  AddWaypoint(waypoint->GetData());                  waypoint = waypoint->GetNext();            }      }      if (routes) {            wxListOfGpxRoutesNode *route = routes->GetFirst();            while (route)            {                  AddRoute(route->GetData());                  route = route->GetNext();            }      }      if (tracks) {            wxListOfGpxTracksNode *track = tracks->GetFirst();            while (track)            {                  AddTrack(track->GetData());                  track = track->GetNext();            }      }      SetExtensions(extensions);}
开发者ID:nohal,项目名称:OpenCPN-bak,代码行数:44,


示例5: The_Plains_Vision

        The_Plains_Vision(Creature* pCreature) : MoonScriptCreatureAI(pCreature)        {            auto area = _unit->GetArea();            switch (area->id)            {            case 222: // Mulgore            {                WPCount = 23;                WayPoints = WaypointPlainVision;                _unit->GetAIInterface()->SetAllowedToEnterCombat(false);            }            break;            }            for (int i = 1; i <= WPCount; ++i)            {                AddWaypoint(CreateWaypoint(i, 0, WayPoints[i].addition, WayPoints[i]));            }        }
开发者ID:treetrees,项目名称:AscEmu,代码行数:19,


示例6: FindOrAddWaypoint

int FindOrAddWaypoint(WAYPOINT *read_waypoint, bool look_for_airfield) {    read_waypoint->Name[NAME_SIZE-1] = 0; // prevent overrun if data is bogus    int waypoint_index=-1;    // Search for waypoint having same name AND same lat/lon/flags.    // If we are searching for airfield, search for waypoint having same name and    // lat/lon within 1km , and having flags set as airfieldsolid or grass.    // We dont look at anything else for matching.    if (look_for_airfield)        waypoint_index = FindMatchingAirfield(read_waypoint);    else        waypoint_index = FindMatchingWaypoint(read_waypoint);    if (waypoint_index == -1) { // waypoint not found, so add it!        WAYPOINT new_waypoint = {};        //        // Note: we dont save task waypoints inside WP files!        // SO WE DONT NEED TO USE COMMENTS and DETAILS. They are useless.        //        memcpy(&new_waypoint, read_waypoint, sizeof(WAYPOINT));        // this is  needed for avoid freeing twice ...        // ownership of allocated memory is transferred from "read_waypoint" to "new_waypoint"        read_waypoint->Comment = NULL;        #if TASK_DETAILS        read_waypoint->Details = NULL;        #else        new_waypoint.Details = NULL;        #endif        new_waypoint.FileNum=-1; // HERE WE SET THE FLAG FOR "DO NOT SAVE TO WAYPOINT FILE"        if(AddWaypoint(new_waypoint)) {            waypoint_index = WayPointList.size() -1;        }    }    return waypoint_index;}
开发者ID:LK8000,项目名称:LK8000,代码行数:40,


示例7: UpdateAI

        void UpdateAI(uint32 diff)        {            if (instance && instance->GetData(DATA_MAIN_EVENT_PHASE) != IN_PROGRESS)                me->CastStop();            npc_escortAI::UpdateAI(diff);            if (!bHasGotMovingPoints)            {                bHasGotMovingPoints = true;                switch (uiBoss)                {                    case 1:                        for (int i=0;i<3;i++)                            AddWaypoint(i, SaboteurFinalPos1[i][0], SaboteurFinalPos1[i][1], SaboteurFinalPos1[i][2], 0);                        me->SetHomePosition(SaboteurFinalPos1[2][0], SaboteurFinalPos1[2][1], SaboteurFinalPos1[2][2], 4.762346f);                        break;                    case 2:                        for (int i=0;i<3;i++)                            AddWaypoint(i, SaboteurFinalPos2[i][0], SaboteurFinalPos2[i][1], SaboteurFinalPos2[i][2], 0);                        me->SetHomePosition(SaboteurFinalPos2[2][0], SaboteurFinalPos2[2][1], SaboteurFinalPos2[2][2], 1.862674f);                        break;                    case 3:                        for (int i=0;i<2;i++)                            AddWaypoint(i, SaboteurFinalPos3[i][0], SaboteurFinalPos3[i][1], SaboteurFinalPos3[i][2], 0);                        me->SetHomePosition(SaboteurFinalPos3[1][0], SaboteurFinalPos3[1][1], SaboteurFinalPos3[1][2], 5.500638f);                        break;                    case 4:                        AddWaypoint(0, SaboteurFinalPos4[0], SaboteurFinalPos4[1], SaboteurFinalPos4[2], 0);                        me->SetHomePosition(SaboteurFinalPos4[0], SaboteurFinalPos4[1], SaboteurFinalPos4[2], 3.991108f);                        break;                    case 5:                        AddWaypoint(0, SaboteurFinalPos5[0], SaboteurFinalPos5[1], SaboteurFinalPos5[2], 0);                        me->SetHomePosition(SaboteurFinalPos5[0], SaboteurFinalPos5[1], SaboteurFinalPos5[2], 1.100841f);                        break;                    case 6:                        for (int i=0;i<5;i++)                            AddWaypoint(i, SaboteurFinalPos6[i][0], SaboteurFinalPos6[i][1], SaboteurFinalPos6[i][2], 0);                        me->SetHomePosition(SaboteurFinalPos6[4][0], SaboteurFinalPos6[4][1], SaboteurFinalPos6[4][2], 0.983031f);                        break;                }                SetDespawnAtEnd(false);                Start(true, true);            }        }
开发者ID:profPlum,项目名称:TrinityCore,代码行数:46,


示例8: SetData

        void SetData(uint32 uiType, uint32 uiData)        {            switch(uiType)            {                case 1:                    AddWaypoint(0, 746.45f, 647.03f, 411.57f);                    AddWaypoint(1, 771.434f, 642.606f, 411.9f);                    AddWaypoint(2, 779.807f, 617.535f, 411.716f);                    AddWaypoint(3, 771.098f, 594.635f, 411.625f);                    AddWaypoint(4, 746.887f, 583.425f, 411.668f);                    AddWaypoint(5, 715.176f, 583.782f, 412.394f);                    AddWaypoint(6, 720.719f, 591.141f, 411.737f);                    uiWaypointPath = 1;                    break;                case 2:                    AddWaypoint(0, 746.45f, 647.03f, 411.57f);                    AddWaypoint(1, 771.434f, 642.606f, 411.9f);                    AddWaypoint(2, 779.807f, 617.535f, 411.716f);                    AddWaypoint(3, 771.098f, 594.635f, 411.625f);                    AddWaypoint(4, 746.887f, 583.425f, 411.668f);                    AddWaypoint(5, 746.16f, 571.678f, 412.389f);                    AddWaypoint(6, 746.887f, 583.425f, 411.668f);                    uiWaypointPath = 2;                    break;                case 3:                    AddWaypoint(0, 746.45f, 647.03f, 411.57f);                    AddWaypoint(1, 771.434f, 642.606f, 411.9f);                    AddWaypoint(2, 779.807f, 617.535f, 411.716f);                    AddWaypoint(3, 771.098f, 594.635f, 411.625f);                    AddWaypoint(4, 777.759f, 584.577f, 412.393f);                    AddWaypoint(5, 772.48f, 592.99f, 411.68f);                    uiWaypointPath = 3;                    break;            }            if (uiType <= 3)                Start(false, true, 0, NULL);        }
开发者ID:H4D3S,项目名称:DarkmoonCore-Cataclysm,代码行数:38,


示例9: StartEscort

    void StartEscort (Player* player, uint8 Parts)    {        Part = Parts;        switch (Parts)        {            case 1:                AddWaypoint(0, 2230.91, 118.765, 82.2947, 2000),                AddWaypoint(1, 2230.33, 114.980, 82.2946, 0);                AddWaypoint(2, 2233.36, 111.057, 82.2996, 0);                AddWaypoint(3, 2231.17, 108.486, 82.6624, 0);                AddWaypoint(4, 2220.22, 114.605, 89.4264, 0);                AddWaypoint(5, 2215.23, 115.990, 89.4549, 0);                AddWaypoint(6, 2207.97, 105.351, 89.4549, 0);                AddWaypoint(7, 2202.53, 106.922, 89.4549, 0);                AddWaypoint(8, 2192.26, 112.618, 89.4549, 2000);                AddWaypoint(9, 2182.96, 117.850, 89.4548, 2000);                AddWaypoint(10, 2182.11, 120.328, 89.4548, 5000);                AddWaypoint(11, 2182.11, 120.329, 89.4548, 5000);                AddWaypoint(12, 2182.11, 120.330, 89.4548, 3000);                AddWaypoint(13, 2189.44, 113.922, 89.4549, 0);                 AddWaypoint(14, 2195.63, 110.584, 89.4549, 0);                AddWaypoint(15, 2201.09, 115.115, 89.4549, 0);                AddWaypoint(16, 2204.34, 121.036, 89.4355, 0);                AddWaypoint(17, 2208.66, 129.127, 87.9560, 0);                AddWaypoint(18, 2193.09, 137.940, 88.2164, 0);                AddWaypoint(19, 2173.39, 149.064, 87.9227, 0);                AddWaypoint(20, 2164.25, 137.965, 85.0595, 0);                AddWaypoint(21, 2149.31, 125.645, 77.0858, 0);                AddWaypoint(22, 2142.78, 127.173, 75.5954, 0);                AddWaypoint(23, 2139.28, 133.952, 73.6386, 0);                AddWaypoint(24, 2139.54, 155.235, 67.1269, 0);                AddWaypoint(25, 2145.38, 167.551, 64.8974, 0);                AddWaypoint(26, 2134.28, 175.304, 67.9446, 0);                AddWaypoint(27, 2118.08, 187.387, 68.8141, 0);                AddWaypoint(28, 2105.88, 195.461, 65.1854, 0);                AddWaypoint(29, 2096.77, 196.939, 65.2117, 0);                AddWaypoint(30, 2083.90, 209.395, 64.8736, 0);                AddWaypoint(31, 2063.40, 229.509, 64.4883, 25000);                AddWaypoint(32, 2063.40, 229.510, 64.4883, 0);                AddWaypoint(33, 2063.40, 229.512, 64.4883, 0);                ((npc_escortAI*)(me->AI()))->SetClearWaypoints(true);                ((npc_escortAI*)(me->AI()))->SetDespawnAtEnd(false);                ((npc_escortAI*)(me->AI()))->SetDespawnAtFar(false);                Start(true, true, player->GetGUID());                break;            case 2:                AddWaypoint(0, 2046.70, 251.941, 62.7851, 4000);                AddWaypoint(1, 2046.70, 251.942, 62.7851, 3000);                AddWaypoint(2, 2011.77, 278.478, 65.3388, 0);                AddWaypoint(3, 2005.08, 289.676, 66.1179, 0);                AddWaypoint(4, 2033.11, 337.450, 66.0948, 0);                AddWaypoint(5, 2070.30, 416.208, 66.0893, 0);                AddWaypoint(6, 2086.76, 469.768, 65.9182, 0);                AddWaypoint(7, 2101.70, 497.955, 61.7881, 0);                AddWaypoint(8, 2133.39, 530.933, 55.3700, 0);                AddWaypoint(9, 2157.91, 559.635, 48.5157, 0);                AddWaypoint(10, 2167.34, 586.191, 42.4394, 0);                AddWaypoint(11, 2174.17, 637.643, 33.9002, 0);                AddWaypoint(12, 2179.31, 656.053, 34.723, 0);                AddWaypoint(13, 2183.65, 670.941, 34.0318, 0);                AddWaypoint(14, 2201.50, 668.616, 36.1236, 0);                AddWaypoint(15, 2221.56, 652.747, 36.6153, 0);                AddWaypoint(16, 2238.97, 640.125, 37.2214, 0);                AddWaypoint(17, 2251.17, 620.574, 40.1473, 0);                AddWaypoint(18, 2261.98, 595.303, 41.4117, 0);                AddWaypoint(19, 2278.67, 560.172, 38.9090, 0);                AddWaypoint(20, 2336.72, 528.327, 40.9369, 0);                AddWaypoint(21, 2381.04, 519.612, 37.7312, 0);                AddWaypoint(22, 2412.20, 515.425, 39.2068, 0);                AddWaypoint(23, 2452.39, 516.174, 42.9387, 0);                AddWaypoint(24, 2467.38, 539.389, 47.4992, 0);                AddWaypoint(25, 2470.70, 554.333, 46.6668, 0);                AddWaypoint(26, 2478.07, 575.321, 55.4549, 0);                AddWaypoint(27, 2480.00, 585.408, 56.6921, 0);                AddWaypoint(28, 2482.67, 608.817, 55.6643, 0);                AddWaypoint(29, 2485.62, 626.061, 58.0132, 2000);                AddWaypoint(30, 2486.91, 626.356, 58.0761, 2000);                AddWaypoint(31, 2486.91, 626.357, 58.0761, 0);                ((npc_escortAI*)(me->AI()))->SetClearWaypoints(true);                ((npc_escortAI*)(me->AI()))->SetDespawnAtEnd(false);                ((npc_escortAI*)(me->AI()))->SetDespawnAtFar(false);                Start(true, false, player->GetGUID());                break;            case 3:                AddWaypoint(0, 2488.58, 660.940, 57.3913, 0);                AddWaypoint(1, 2502.56, 686.059, 55.6252, 0);                AddWaypoint(2, 2502.08, 694.360, 55.5083, 0);                AddWaypoint(3, 2491.46, 694.321, 55.7163, 0);                AddWaypoint(4, 2491.10, 703.300, 55.7630, 0);                AddWaypoint(5, 2485.64, 702.992, 55.7917, 0);                AddWaypoint(6, 2479.63, 696.521, 55.7901, 0);                AddWaypoint(7, 2476.24, 696.204, 55.8093, 0);                AddWaypoint(8, 2475.39, 695.983, 55.8146, 0);                AddWaypoint(9, 2477.75, 694.473, 55.7945, 0);                AddWaypoint(10, 2481.27, 697.747, 55.7910, 0);                AddWaypoint(11, 2486.31, 703.131, 55.7861, 0);                AddWaypoint(12, 2490.76, 703.511, 55.7662, 0);                AddWaypoint(13, 2491.30, 694.792, 55.7195, 0);                AddWaypoint(14, 2502.08, 694.360, 55.5083, 0);//.........这里部分代码省略.........
开发者ID:Dolmero,项目名称:L4G_Core,代码行数:101,


示例10: InitWaypoint

    void InitWaypoint()    {        AddWaypoint(1, 2389.03,     -5902.74,     109.014, 5000);        AddWaypoint(2, 2341.812012, -5900.484863, 102.619743);        AddWaypoint(3, 2306.561279, -5901.738281, 91.792419);        AddWaypoint(4, 2300.098389, -5912.618652, 86.014885);        AddWaypoint(5, 2294.142090, -5927.274414, 75.316849);        AddWaypoint(6, 2286.984375, -5944.955566, 63.714966);        AddWaypoint(7, 2280.001709, -5961.186035, 54.228283);        AddWaypoint(8, 2259.389648, -5974.197754, 42.359348);        AddWaypoint(9, 2242.882812, -5984.642578, 32.827850);        AddWaypoint(10, 2217.265625, -6028.959473, 7.675705);        AddWaypoint(11, 2202.595947, -6061.325684, 5.882018);        AddWaypoint(12, 2188.974609, -6080.866699, 3.370027);        if (urand(0,1))        {            AddWaypoint(13, 2176.483887, -6110.407227, 1.855181);            AddWaypoint(14, 2172.516602, -6146.752441, 1.074235);            AddWaypoint(15, 2138.918457, -6158.920898, 1.342926);            AddWaypoint(16, 2129.866699, -6174.107910, 4.380779);            AddWaypoint(17, 2117.709473, -6193.830078, 13.3542, 10000);        }        else        {            AddWaypoint(13, 2184.190186, -6166.447266, 0.968877);            AddWaypoint(14, 2234.265625, -6163.741211, 0.916021);            AddWaypoint(15, 2268.071777, -6158.750977, 1.822252);            AddWaypoint(16, 2270.028320, -6176.505859, 6.340538);            AddWaypoint(17, 2271.739014, -6195.401855, 13.3542, 10000);        }    }
开发者ID:Asandru,项目名称:Script-Land,代码行数:32,


示例11: WP_command

void WP_command( int argc ){        char    cmd_command[1024];        if( argc < 3)                return;                trap_CmdArgv( 2, cmd_command, sizeof( cmd_command ) );        if(!strcmp(cmd_command, "add"))        {                waypoint_t wp;                if( argc < 7 )                        return;                memset(&wp, 0 ,sizeof(wp));                trap_CmdArgv( 3, cmd_command, sizeof( cmd_command ) );                wp.index = atoi( cmd_command );                trap_CmdArgv( 4, cmd_command, sizeof( cmd_command ) );                wp.origin[0] = atof( cmd_command );                trap_CmdArgv( 5, cmd_command, sizeof( cmd_command ) );                wp.origin[1] = atof( cmd_command );                trap_CmdArgv( 6, cmd_command, sizeof( cmd_command ) );                wp.origin[2] = atof( cmd_command );                wp.teams = 15 ;// (1<<0)+(1<<1)+(1<<2)+(1<<3);                if( argc > 7 )                {                        trap_CmdArgv( 7, cmd_command, sizeof( cmd_command ) );                        wp.flags = atoi( cmd_command );                                        }                if( argc > 8 )                {                        trap_CmdArgv( 8, cmd_command, sizeof( cmd_command ) );                        wp.teams = atoi( cmd_command );                }                if( argc > 9 )                {                        trap_CmdArgv( 9, cmd_command, sizeof( cmd_command ) );                        wp.radius = atof( cmd_command );                                        }                AddWaypoint(&wp);                return;        }        if(!strcmp(cmd_command, "link"))        {                wp_link_t link;                int i1,i2;                if( argc < 5 )                        return;                memset(&link, 0 ,sizeof(link));                trap_CmdArgv( 3, cmd_command, sizeof( cmd_command ) );                i1 = atoi( cmd_command );                trap_CmdArgv( 4, cmd_command, sizeof( cmd_command ) );                i2 = atoi( cmd_command );                link.teams = 15;                if( argc > 5 )                {                        trap_CmdArgv( 5, cmd_command, sizeof( cmd_command ) );                        link.flags = atoi( cmd_command );                }                if( argc > 6 )                {                        trap_CmdArgv( 6, cmd_command, sizeof( cmd_command ) );                        link.teams = atoi( cmd_command );                }                if( argc > 7 )                {                        trap_CmdArgv( 7, cmd_command, sizeof( cmd_command ) );                        link.req_velocity = atof( cmd_command );                                        }                AddLink( i1, i2, &link);                return;        }        if(!strcmp(cmd_command, "dlink"))        {                wp_link_t link;                int i1,i2;                if( argc < 5 )                        return;                memset(&link, 0 ,sizeof(link));                trap_CmdArgv( 3, cmd_command, sizeof( cmd_command ) );                i1 = atoi( cmd_command );                trap_CmdArgv( 4, cmd_command, sizeof( cmd_command ) );                i2 = atoi( cmd_command );                link.teams = 15;                if( argc > 5 )                {                        trap_CmdArgv( 5, cmd_command, sizeof( cmd_command ) );                        link.flags = atoi( cmd_command );                }                if( argc > 6 )//.........这里部分代码省略.........
开发者ID:stayoutEE,项目名称:TF2003-qvm,代码行数:101,


示例12: Visit

 void Visit(const Waypoint& way_point) {   AddWaypoint(way_point, false); }
开发者ID:rjsikarwar,项目名称:XCSoar,代码行数:5,


示例13: UpdateAI

    void UpdateAI(const uint32 diff)    {        if (IsEvent)        {            //Must update npc_escortAI            npc_escortAI::UpdateAI(diff);            if(!go)            {                go = true;                if(pInstance)                {                    AddWaypoint(0, 5492.91,    -2404.61,    1462.63);                    AddWaypoint(1, 5531.76,    -2460.87,    1469.55);                    AddWaypoint(2, 5554.58,    -2514.66,    1476.12);                    AddWaypoint(3, 5554.16,    -2567.23,    1479.90);                    AddWaypoint(4, 5540.67,    -2625.99,    1480.89);                    AddWaypoint(5, 5508.16,    -2659.2,    1480.15);                    AddWaypoint(6, 5489.62,    -2704.05,    1482.18);                    AddWaypoint(7, 5457.04,    -2726.26,    1485.10);                    Start(false, true);                    SetDespawnAtEnd(false);                }            }        }        //Return since we have no target        if (!UpdateVictim() )            return;        if(CheckTimer < diff)        {            DoZoneInCombat();            m_creature->SetSpeed(MOVE_RUN, 3.0);            CheckTimer = 3000;        }        else            CheckTimer -= diff;        if(CleaveTimer < diff)        {            DoCast(m_creature->getVictim(), SPELL_CLEAVE);            CleaveTimer = urand(6000, 21000);        }        else            CleaveTimer -= diff;        if(WarStompTimer < diff)        {            DoCast(m_creature, SPELL_WARSTOMP);            WarStompTimer = urand(15000, 25000);        }        else            WarStompTimer -= diff;        if(CrippleTimer < diff)        {            if(Unit *target = SelectUnit(SELECT_TARGET_RANDOM, 1, 20, true))                DoCast(target, SPELL_CRIPPLE);            CrippleTimer = urand(10000, 12000);        }        else            CrippleTimer -= diff;        if(MarkTimer < diff)        {            m_creature->CastSpell(m_creature, SPELL_MARK, false);            MarkTimerBase -= 5000;            if(MarkTimerBase <= 5500)                MarkTimerBase = 10500;            MarkTimer = MarkTimerBase;            switch(rand()%3)            {                case 0:                    DoPlaySoundToSet(m_creature, SOUND_MARK1);                    DoYell(SAY_MARK1, LANG_UNIVERSAL, NULL);                    break;                case 1:                    DoPlaySoundToSet(m_creature, SOUND_MARK2);                    DoYell(SAY_MARK2, LANG_UNIVERSAL, NULL);                    break;            }        }        else            MarkTimer -= diff;        DoMeleeAttackIfReady();    }
开发者ID:Looking4Group,项目名称:L4G_Core,代码行数:91,


示例14: WriteWithChecksum

boolEWDevice::DeclareInner(const struct Declaration &declaration,                       OperationEnvironment &env){  char sTmp[72];  ewDecelTpIndex = 0;  if (!TryConnect(env))    return false;  // send SetPilotInfo  WriteWithChecksum(port, "#SPI");  env.Sleep(50);  char sPilot[13], sGliderType[9], sGliderID[9];  convert_string(sPilot, sizeof(sPilot), declaration.pilot_name);  convert_string(sGliderType, sizeof(sGliderType), declaration.aircraft_type);  convert_string(sGliderID, sizeof(sGliderID), declaration.aircraft_registration);  // build string (field 4-5 are GPS info, no idea what to write)  sprintf(sTmp, "%-12s%-8s%-8s%-12s%-12s%-6s/r", sPilot, sGliderType, sGliderID,          "" /* GPS Model */, "" /* GPS Serial No. */, "" /* Flight Date */          /* format unknown, left blank (GPS has a RTC) */);  port.Write(sTmp);  if (!port.ExpectString("OK/r", env))    return false;  /*  sprintf(sTmp, "#SUI%02d", 0);           // send pilot name  WriteWithChecksum(port, sTmp);  env.Sleep(50);  port.Write(PilotsName);  port.Write('/r');  if (!port.ExpectString("OK/r"))    return false;  sprintf(sTmp, "#SUI%02d", 1);           // send type of aircraft  WriteWithChecksum(port, sTmp);  env.Sleep(50);  port.Write(Class);  port.Write('/r');  if (!port.ExpectString("OK/r"))    nDeclErrorCode = 1;  sprintf(sTmp, "#SUI%02d", 2);           // send aircraft ID  WriteWithChecksum(port, sTmp);  env.Sleep(50);  port.Write(ID);  port.Write('/r');  if (!port.ExpectString("OK/r"))    return false;  */  // clear all 6 TP's  for (int i = 0; i < 6; i++) {    sprintf(sTmp, "#CTP%02d", i);    WriteWithChecksum(port, sTmp);    if (!port.ExpectString("OK/r", env))      return false;  }  for (unsigned j = 0; j < declaration.Size(); ++j)    if (!AddWaypoint(declaration.GetWaypoint(j), env))      return false;  return true;}
开发者ID:DRIZO,项目名称:xcsoar,代码行数:72,


示例15: UpdateAI

        void UpdateAI(const uint32 diff)        {            if (IsEvent)            {                //Must update npc_escortAI                npc_escortAI::UpdateAI(diff);                if (!go)                {                    go = true;                    if (instance)                    {                        AddWaypoint(0, 5492.91f,    -2404.61f,    1462.63f);                        AddWaypoint(1, 5531.76f,    -2460.87f,    1469.55f);                        AddWaypoint(2, 5554.58f,    -2514.66f,    1476.12f);                        AddWaypoint(3, 5554.16f,    -2567.23f,    1479.90f);                        AddWaypoint(4, 5540.67f,    -2625.99f,    1480.89f);                        AddWaypoint(5, 5508.16f,    -2659.2f,    1480.15f);                        AddWaypoint(6, 5489.62f,    -2704.05f,    1482.18f);                        AddWaypoint(7, 5457.04f,    -2726.26f,    1485.10f);                        Start(false, true);                        SetDespawnAtEnd(false);                    }                }            }            //Return since we have no target            if (!UpdateVictim())                return;            if (CleaveTimer <= diff)            {                DoCast(me, SPELL_CLEAVE);                CleaveTimer = 6000+rand()%15000;            } else CleaveTimer -= diff;            if (WarStompTimer <= diff)            {                DoCast(me, SPELL_WARSTOMP);                WarStompTimer = 60000;            } else WarStompTimer -= diff;            if (MarkTimer <= diff)            {                DoCastAOE(SPELL_MARK);                MarkTimerBase -= 5000;                if (MarkTimerBase < 5500)                    MarkTimerBase = 5500;                MarkTimer = MarkTimerBase;                switch (urand(0, 2))                {                    case 0:                        DoPlaySoundToSet(me, SOUND_MARK1);                        me->MonsterYell(SAY_MARK1, LANG_UNIVERSAL, 0);                        break;                    case 1:                        DoPlaySoundToSet(me, SOUND_MARK2);                        me->MonsterYell(SAY_MARK2, LANG_UNIVERSAL, 0);                        break;                }            } else MarkTimer -= diff;            DoMeleeAttackIfReady();        }
开发者ID:Board18,项目名称:TrinityCore,代码行数:64,


示例16: UpdateAI

        void UpdateAI(const uint32 diff)        {            if (IsEvent)            {                //Must update npc_escortAI                npc_escortAI::UpdateAI(diff);                if (!go)                {                    go = true;                    if (instance)                    {                        AddWaypoint(0, 5492.91f,    -2404.61f,    1462.63f);                        AddWaypoint(1, 5531.76f,    -2460.87f,    1469.55f);                        AddWaypoint(2, 5554.58f,    -2514.66f,    1476.12f);                        AddWaypoint(3, 5554.16f,    -2567.23f,    1479.90f);                        AddWaypoint(4, 5540.67f,    -2625.99f,    1480.89f);                        AddWaypoint(5, 5508.16f,    -2659.2f,    1480.15f);                        AddWaypoint(6, 5489.62f,    -2704.05f,    1482.18f);                        AddWaypoint(7, 5457.04f,    -2726.26f,    1485.10f);                        Start(false, true);                        SetDespawnAtEnd(false);                    }                }            }            //Return since we have no target            if (!UpdateVictim())                return;            if (RainTimer <= diff)            {                DoCast(SelectTarget(SELECT_TARGET_RANDOM, 0, 30, true), SPELL_RAIN_OF_FIRE);                RainTimer = 20000+rand()%15000;            } else RainTimer -= diff;            if (DoomTimer <= diff)            {                DoCast(SelectTarget(SELECT_TARGET_RANDOM, 1, 100, true), SPELL_DOOM);//never on tank                DoomTimer = 45000+rand()%5000;            } else DoomTimer -= diff;            if (HowlTimer <= diff)            {                DoCast(me, SPELL_HOWL_OF_AZGALOR);                HowlTimer = 30000;            } else HowlTimer -= diff;            if (CleaveTimer <= diff)            {                DoCast(me->getVictim(), SPELL_CLEAVE);                CleaveTimer = 10000+rand()%5000;            } else CleaveTimer -= diff;            if (EnrageTimer < diff && !enraged)            {                me->InterruptNonMeleeSpells(false);                DoCast(me, SPELL_BERSERK, true);                enraged = true;                EnrageTimer = 600000;            } else EnrageTimer -= diff;            DoMeleeAttackIfReady();        }
开发者ID:4m1g0,项目名称:TrinityCore,代码行数:63,


示例17: switch

void violet_hold_invaderAI::UpdateEscortAI(const uint32 diff){    if (!WaypointSet)    {        uint8 i=0;        switch (PortalNumber)        {        case 1:            for (i=0;i<7;i++)            {                AddWaypoint(i, portal1WP[i][0], portal1WP[i][1], portal1WP[i][2]);            }            SetDespawnAtEnd(true);            Start(true);            WaypointSet=true;            break;        case 2:            for (i=0;i<5;i++)            {                AddWaypoint(i, portal2WP[i][0], portal2WP[i][1], portal2WP[i][2]);            }            SetDespawnAtEnd(true);            Start(true);            WaypointSet=true;               break;        case 3:            for (i=0;i<5;i++)            {                AddWaypoint(i, portal3WP[i][0], portal3WP[i][1], portal3WP[i][2]);            }            SetDespawnAtEnd(true);            Start(true);            WaypointSet=true;            break;        case 4:            for (i=0;i<3;i++)            {                AddWaypoint(i, portal4WP[i][0], portal4WP[i][1], portal4WP[i][2]);            }            SetDespawnAtEnd(true);            Start(true);            WaypointSet=true;            break;        case 5:            for (i=0;i<3;i++)            {                AddWaypoint(i, portal5WP[i][0], portal5WP[i][1], portal5WP[i][2]);            }            SetDespawnAtEnd(true);            Start(true);            WaypointSet=true;            break;        case 6:            for (i=0;i<3;i++)            {                AddWaypoint(i, portal6WP[i][0], portal6WP[i][1], portal6WP[i][2]);            }            SetDespawnAtEnd(true);            Start(true);            WaypointSet=true;            break;        case 7:            for (i=0;i<8;i++)            {                AddWaypoint(i, portal7WP[i][0], portal7WP[i][1], portal7WP[i][2]);            }            SetDespawnAtEnd(true);            Start(true);            WaypointSet=true;            break;        case 8:            for (i=0;i<8;i++)            {                AddWaypoint(i, portal8WP[i][0], portal8WP[i][1], portal8WP[i][2]);            }            SetDespawnAtEnd(true);            Start(true);            WaypointSet=true;            break;        }        float modx,mody;        modx=urand(28,39);        modx=modx/2;        mody=sqrt(380-pow(modx,2));        if (m_instance)        {            Creature* tDoor=m_creature->GetMap()->GetCreature(m_instance->GetData64(DOOR_GUID));            if (rand()%2)                                    AddWaypoint(i, tDoor->GetPositionX()+modx,tDoor->GetPositionY()+mody,44.019f);            else                AddWaypoint(i, tDoor->GetPositionX()+modx,tDoor->GetPositionY()-mody,44.019f);            AddWaypoint(i+1, finishWP[0][0],finishWP[0][1],finishWP[0][2]);            AddWaypoint(i+2, finishWP[1][0],finishWP[1][1],finishWP[1][2]);        }    }    if (AttackingDoor)    {        if (AttackingDoorTimer<diff)        {//.........这里部分代码省略.........
开发者ID:Danstahr,项目名称:ScriptDev2,代码行数:101,


示例18: UpdateAI

    void UpdateAI(const uint32 diff)    {        if (IsEvent)        {            //Must update npc_escortAI            npc_escortAI::UpdateAI(diff);            if(!go)            {                go = true;                if(pInstance)                {                    AddWaypoint(0, 4896.08,    -1576.35,    1333.65);                    AddWaypoint(1, 4898.68,    -1615.02,    1329.48);                    AddWaypoint(2, 4907.12,    -1667.08,    1321.00);                    AddWaypoint(3, 4963.18,    -1699.35,    1340.51);                    AddWaypoint(4, 4989.16,    -1716.67,    1335.74);                    AddWaypoint(5, 5026.27,    -1736.89,    1323.02);                    AddWaypoint(6, 5037.77,    -1770.56,    1324.36);                    AddWaypoint(7, 5067.23,    -1789.95,    1321.17);                    Start(false, true);                    SetDespawnAtEnd(false);                }            }        }        //back to victim target facing        if (!UpdateVictim())            return;        if(CheckTimer < diff)        {            DoZoneInCombat();            if(!m_creature->IsNonMeleeSpellCasted(true))            {                if(m_creature->GetSelection() != m_creature->getVictimGUID())                    m_creature->SetSelection(m_creature->getVictimGUID());            }            m_creature->SetSpeed(MOVE_RUN, 3.0);            CheckTimer = 2000;        }        else            CheckTimer -= diff;        if(SwarmTimer < diff)        {            if(Unit* target = SelectUnit(SELECT_TARGET_RANDOM,0,65,true))            {                AddSpellToCast(target, SPELL_CARRION_SWARM, false, true);                SwarmTimer = 12000+rand()%6000;                switch(rand()%2)                {                    case 0:                        DoPlaySoundToSet(m_creature, SOUND_SWARM1);                        DoYell(SAY_SWARM1, LANG_UNIVERSAL, NULL);                    break;                    case 1:                        DoPlaySoundToSet(m_creature, SOUND_SWARM2);                        DoYell(SAY_SWARM2, LANG_UNIVERSAL, NULL);                    break;                }            }        }        else            SwarmTimer -= diff;        if(SleepTimer < diff)        {            DoCast(m_creature, SPELL_SLEEP, true);            SleepTimer = 60000;            switch(rand()%2)            {                case 0:                    DoPlaySoundToSet(m_creature, SOUND_SLEEP1);                    DoYell(SAY_SLEEP1, LANG_UNIVERSAL, NULL);                    break;                case 1:                    DoPlaySoundToSet(m_creature, SOUND_SLEEP2);                    DoYell(SAY_SLEEP2, LANG_UNIVERSAL, NULL);                    break;            }        }        else            SleepTimer -= diff;        if(InfernoTimer < diff)        {            if(Unit *target = SelectUnit(SELECT_TARGET_RANDOM,0,200,true))            {                m_creature->CastStop();                AddSpellToCast(target, SPELL_INFERNO, false, true);                switch(rand()%2)                {                    case 0:                        DoPlaySoundToSet(m_creature, SOUND_INFERNO1);                        DoYell(SAY_INFERNO1, LANG_UNIVERSAL, NULL);                    break;//.........这里部分代码省略.........
开发者ID:Dolmero,项目名称:L4G_Core,代码行数:101,


示例19: Visit

 void Visit(const WaypointPtr &way_point) override {   AddWaypoint(way_point, false); }
开发者ID:Advi42,项目名称:XCSoar,代码行数:3,


示例20: UpdateAI

    void UpdateAI(const uint32 diff)    {        if (IsEvent)        {            //Must update npc_escortAI            npc_escortAI::UpdateAI(diff);            if(!go)            {                go = true;                if(pInstance)                {                    AddWaypoint(0, 4896.08,    -1576.35,    1333.65);                    AddWaypoint(1, 4898.68,    -1615.02,    1329.48);                    AddWaypoint(2, 4907.12,    -1667.08,    1321.00);                    AddWaypoint(3, 4963.18,    -1699.35,    1340.51);                    AddWaypoint(4, 4989.16,    -1716.67,    1335.74);                    AddWaypoint(5, 5026.27,    -1736.89,    1323.02);                    AddWaypoint(6, 5037.77,    -1770.56,    1324.36);                    AddWaypoint(7, 5067.23,    -1789.95,    1321.17);                    Start(false, true);                    SetDespawnAtEnd(false);                }            }        }        //Return since we have no target        if (!UpdateVictim() )            return;        if(SwarmTimer < diff)        {            Unit* target = SelectUnit(SELECT_TARGET_RANDOM,0,100,true);            if(target)                DoCast(target,SPELL_CARRION_SWARM);            SwarmTimer = 45000+rand()%15000;            switch(rand()%2)            {                case 0:                    DoPlaySoundToSet(m_creature, SOUND_SWARM1);                    DoYell(SAY_SWARM1, LANG_UNIVERSAL, NULL);                    break;                case 1:                    DoPlaySoundToSet(m_creature, SOUND_SWARM2);                    DoYell(SAY_SWARM2, LANG_UNIVERSAL, NULL);                    break;            }        }else SwarmTimer -= diff;        if(SleepTimer < diff)        {            for(uint8 i=0;i<3;++i)            {                Unit* target = SelectUnit(SELECT_TARGET_RANDOM,0,100,true);                if(target)                    target->CastSpell(target,SPELL_SLEEP,true);            }            SleepTimer = 60000;            switch(rand()%2)            {                case 0:                    DoPlaySoundToSet(m_creature, SOUND_SLEEP1);                    DoYell(SAY_SLEEP1, LANG_UNIVERSAL, NULL);                    break;                case 1:                    DoPlaySoundToSet(m_creature, SOUND_SLEEP2);                    DoYell(SAY_SLEEP2, LANG_UNIVERSAL, NULL);                    break;            }        }else SleepTimer -= diff;        if(AuraTimer < diff)        {            DoCast(m_creature, SPELL_VAMPIRIC_AURA,true);            AuraTimer = 10000+rand()%10000;        }else AuraTimer -= diff;        if(InfernoTimer < diff)        {            DoCast(SelectUnit(SELECT_TARGET_RANDOM,0,100,true), SPELL_INFERNO);            InfernoTimer = 45000;            switch(rand()%2)            {                case 0:                    DoPlaySoundToSet(m_creature, SOUND_INFERNO1);                    DoYell(SAY_INFERNO1, LANG_UNIVERSAL, NULL);                    break;                case 1:                    DoPlaySoundToSet(m_creature, SOUND_INFERNO2);                    DoYell(SAY_INFERNO2, LANG_UNIVERSAL, NULL);                    break;            }        }else InfernoTimer -= diff;        DoMeleeAttackIfReady();    }
开发者ID:Bootz,项目名称:TC-One,代码行数:94,


示例21: InitWaypoint

        void InitWaypoint()        {            AddWaypoint(1, 2389.03f,     -5902.74f,     109.014f, 5000);            AddWaypoint(2, 2341.812012f, -5900.484863f, 102.619743f);            AddWaypoint(3, 2306.561279f, -5901.738281f, 91.792419f);            AddWaypoint(4, 2300.098389f, -5912.618652f, 86.014885f);            AddWaypoint(5, 2294.142090f, -5927.274414f, 75.316849f);            AddWaypoint(6, 2286.984375f, -5944.955566f, 63.714966f);            AddWaypoint(7, 2280.001709f, -5961.186035f, 54.228283f);            AddWaypoint(8, 2259.389648f, -5974.197754f, 42.359348f);            AddWaypoint(9, 2242.882812f, -5984.642578f, 32.827850f);            AddWaypoint(10, 2217.265625f, -6028.959473f, 7.675705f);            AddWaypoint(11, 2202.595947f, -6061.325684f, 5.882018f);            AddWaypoint(12, 2188.974609f, -6080.866699f, 3.370027f);            if (urand(0,1))            {                AddWaypoint(13, 2176.483887f, -6110.407227f, 1.855181f);                AddWaypoint(14, 2172.516602f, -6146.752441f, 1.074235f);                AddWaypoint(15, 2138.918457f, -6158.920898f, 1.342926f);                AddWaypoint(16, 2129.866699f, -6174.107910f, 4.380779f);                AddWaypoint(17, 2117.709473f, -6193.830078f, 13.3542f, 10000);            }            else            {                AddWaypoint(13, 2184.190186f, -6166.447266f, 0.968877f);                AddWaypoint(14, 2234.265625f, -6163.741211f, 0.916021f);                AddWaypoint(15, 2268.071777f, -6158.750977f, 1.822252f);                AddWaypoint(16, 2270.028320f, -6176.505859f, 6.340538f);                AddWaypoint(17, 2271.739014f, -6195.401855f, 13.3542f, 10000);            }        }
开发者ID:1024wow,项目名称:TrinityCore,代码行数:32,


示例22: UpdateAI

        void UpdateAI(uint32 diff)        {            npc_escortAI::UpdateAI(diff);            if(!bAddedWPs)            {                bAddedWPs = true;                switch(uiBoss)                {                    case 1:                        for(int i=0;i<3;i++)                            AddWaypoint(i, SaboteurFinalPos1[i][0], SaboteurFinalPos1[i][1], SaboteurFinalPos1[i][2], 0);                        me->SetHomePosition(SaboteurFinalPos1[2][0], SaboteurFinalPos1[2][1], SaboteurFinalPos1[2][2], 4.762346f);                        break;                    case 2:                        for(int i=0;i<3;i++)                            AddWaypoint(i, SaboteurFinalPos2[i][0], SaboteurFinalPos2[i][1], SaboteurFinalPos2[i][2], 0);                        me->SetHomePosition(SaboteurFinalPos2[2][0], SaboteurFinalPos2[2][1], SaboteurFinalPos2[2][2], 1.862674f);                        break;                    case 3:                        for(int i=0;i<2;i++)                            AddWaypoint(i, SaboteurFinalPos3[i][0], SaboteurFinalPos3[i][1], SaboteurFinalPos3[i][2], 0);                        me->SetHomePosition(SaboteurFinalPos3[1][0], SaboteurFinalPos3[1][1], SaboteurFinalPos3[1][2], 5.500638f);                        break;                    case 4:                        AddWaypoint(0, SaboteurFinalPos4[0], SaboteurFinalPos4[1], SaboteurFinalPos4[2], 0);                        me->SetHomePosition(SaboteurFinalPos4[0], SaboteurFinalPos4[1], SaboteurFinalPos4[2], 3.991108f);                        break;                    case 5:                        AddWaypoint(0, SaboteurFinalPos5[0], SaboteurFinalPos5[1], SaboteurFinalPos5[2], 0);                        me->SetHomePosition(SaboteurFinalPos5[0], SaboteurFinalPos5[1], SaboteurFinalPos5[2], 1.100841f);                        break;                    case 6:                        for(int i=0;i<5;i++)                            AddWaypoint(i, SaboteurFinalPos6[i][0], SaboteurFinalPos6[i][1], SaboteurFinalPos6[i][2], 0);                        me->SetHomePosition(SaboteurFinalPos6[4][0], SaboteurFinalPos6[4][1], SaboteurFinalPos6[4][2], 0.983031f);                        break;                }                SetDespawnAtEnd(false);                Start(true, true);            }            if (bOpening)            {                if (timer <= diff)                {                    if (count < 2)                    {                        me->CastSpell(me, SABOTEUR_SHIELD_DISRUPTION, false);                        timer = 1000;                    }                    else if (count == 2)                    {                        me->CastSpell(me, SABOTEUR_SHIELD_DISRUPTION, false);                        if (pInstance)                            pInstance->SetData(DATA_RELEASE_BOSS, 0);                        timer = 500;                    }                    else                    {                        bOpening = false;                        me->SetFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NOT_SELECTABLE);                        me->SetDisplayId(11686);                        me->CastSpell(me, SPELL_TELEPORT_VISUAL, true);                        me->DespawnOrUnsummon(1000);                    }                    ++count;                }                else timer -= diff;            }        }
开发者ID:Helias,项目名称:azerothcore-wotlk,代码行数:71,


示例23: SetData

        void SetData(uint32 uiType, uint32 uiData)        {            switch(me->GetEntry())            {                case NPC_ARGENT_LIGHWIELDER:                    switch(uiType)                    {                        case 0:                            AddWaypoint(0, 737.14f,655.42f,412.88f);                            AddWaypoint(1, 712.14f,628.42f,411.88f);                            break;                        case 1:                            AddWaypoint(0, 742.44f, 650.29f, 411.79f);                            break;                        case 2:                            AddWaypoint(0, 756.14f, 655.42f, 411.88f);                            AddWaypoint(1, 775.912f, 639.033f, 411.907f);                            break;                    }                    break;                case NPC_ARGENT_MONK:                    switch(uiType)                    {                        case 0:                            AddWaypoint(0, 737.14f, 655.42f, 412.88f);                            AddWaypoint(1, 713.12f, 632.97f, 411.90f);                            break;                        case 1:                            AddWaypoint(0, 746.73f, 650.24f, 411.56f);                            break;                        case 2:                            AddWaypoint(0, 756.14f, 655.42f, 411.88f);                            AddWaypoint(1, 784.817f, 629.883f, 411.908f);                            break;                    }                    break;                case NPC_PRIESTESS:                    switch(uiType)                    {                        case 0:                            AddWaypoint(0, 737.14f, 655.42f, 412.88f);                            AddWaypoint(1, 715.06f, 637.07f, 411.91f);                            break;                        case 1:                            AddWaypoint(0, 750.72f, 650.20f, 411.77f);                            break;                        case 2:                            AddWaypoint(0, 756.14f, 655.42f, 411.88f);                            AddWaypoint(1, 779.942f, 634.061f, 411.905f);                            break;                    }                    break;            }            Start(false,true,0);            uiWaypoint = uiType;        }
开发者ID:mynew3,项目名称:Trinity-Core,代码行数:57,


示例24: StartEvent

 void StartEvent(Player* player, const Quest* pQuest) {     switch (CalculateWaypointID())     {     case 1:         AddWaypoint(0, -4108.25, 3032.18, 344.799, 3000);         AddWaypoint(1, -4114.41, 3036.73, 344.039);         AddWaypoint(2, -4126.41, 3026.07, 344.156);         AddWaypoint(3, -4145.17, 3029.69, 337.423);         AddWaypoint(4, -4173.69, 3035.72, 343.346);         AddWaypoint(5, -4173.70, 3047.37, 343.888);         AddWaypoint(6, -4183.47, 3060.62, 344.157, 3000);         AddWaypoint(7, -4179.13, 3090.20, 323.971, 30000);         Start(false, false, player->GetGUID(), pQuest);         break;     case 2:         AddWaypoint(0, -3718.81, 3787.24, 302.890, 3000);         AddWaypoint(1, -3714.44, 3780.35, 302.075);         AddWaypoint(2, -3698.33, 3788.04, 302.171);         AddWaypoint(3, -3679.36, 3780.25, 295.077);         AddWaypoint(4, -3654.82, 3770.43, 301.291);         AddWaypoint(5, -3656.07, 3757.31, 301.985);         AddWaypoint(6, -3648.83, 3743.07, 302.173, 3000);         AddWaypoint(7, -3659.16, 3714.94, 281.576, 30000);         Start(false, false, player->GetGUID(), pQuest);         break;     case 3:         AddWaypoint(0, -3671.51, 3385.36, 312.956, 3000);         AddWaypoint(1, -3677.74, 3379.05, 312.136);         AddWaypoint(2, -3667.52, 3366.45, 312.233);         AddWaypoint(3, -3672.87, 3343.52, 304.994);         AddWaypoint(4, -3679.35, 3319.01, 311.419);         AddWaypoint(5, -3692.93, 3318.69, 312.081);         AddWaypoint(6, -3704.08, 3309.56, 312.233, 3000);         AddWaypoint(7, -3733.99, 3315.77, 292.093, 30000);         Start(false, false, player->GetGUID(), pQuest);         break;     }     return; }
开发者ID:Bootz,项目名称:SF1,代码行数:40,


示例25: LoadWaypoints

    void LoadWaypoints()    {        AddWaypoint(0, 2354.0f, -5906.375977f, 104.940987f);        AddWaypoint(1, 2306.066895f, -5906.791992f, 89.610298f);        AddWaypoint(2, 2278.72876f, -5959.347656f, 54.58366f);        AddWaypoint(3, 2235.88501f, -5992.0f, 28.422256f);        AddWaypoint(4, 2237.030518f, -5992.619141f, 28.341301f);        AddWaypoint(5, 2223.199951f, -6018.459473f, 10.012696f);        AddWaypoint(6, 2190.214844f, -6080.208496f, 3.315653f);        AddWaypoint(7, 2168.917236f, -6160.133301f, 1.424436f);        if (urand(0,1))        {            AddWaypoint(8, 2135.743164f, -6165.421875f, 0.716511f);            AddWaypoint(9, 2128.039551f, -6177.420898f, 6.740788f);            AddWaypoint(10, 2122.394531f, -6186.128418f, 14.043964f);            AddWaypoint(11, 2116.232422f, -6195.810547f, 14.336172f);        }        else        {            AddWaypoint(8, 2267.669434f, -6165.244629f, 1.631780f);            AddWaypoint(9, 2269.951660f, -6175.877441f, 5.924870f);            AddWaypoint(10, 2271.001953f, -6187.146484f, 14.016878f);            AddWaypoint(11, 2273.009766f, -6200.994629f, 14.222438f);        }    }
开发者ID:finomen,项目名称:scriptdev2,代码行数:26,


示例26: UpdateAI

    void UpdateAI(const uint32 diff)    {        if (IsEvent)        {            //Must update npc_escortAI            npc_escortAI::UpdateAI(diff);            if (!pGo)            {                pGo = true;                if (pInstance)                {                    AddWaypoint(0, 4896.08f,    -1576.35f,    1333.65f);                    AddWaypoint(1, 4898.68f,    -1615.02f,    1329.48f);                    AddWaypoint(2, 4907.12f,    -1667.08f,    1321.00f);                    AddWaypoint(3, 4963.18f,    -1699.35f,    1340.51f);                    AddWaypoint(4, 4989.16f,    -1716.67f,    1335.74f);                    AddWaypoint(5, 5026.27f,    -1736.89f,    1323.02f);                    AddWaypoint(6, 5037.77f,    -1770.56f,    1324.36f);                    AddWaypoint(7, 5067.23f,    -1789.95f,    1321.17f);                    Start(false, true);                    SetDespawnAtEnd(false);                }            }        }        //Return since we have no target        if (!UpdateVictim())            return;        if (FrostArmorTimer <= diff)        {            DoCast(me, SPELL_FROST_ARMOR);            FrostArmorTimer = 40000+rand()%20000;        } else FrostArmorTimer -= diff;        if (DecayTimer <= diff)        {            DoCast(me->getVictim(), SPELL_DEATH_AND_DECAY);            DecayTimer = 60000+rand()%20000;            switch (urand(0,1))            {                case 0:                    DoPlaySoundToSet(me, SOUND_DECAY1);                    me->MonsterYell(SAY_DECAY1, LANG_UNIVERSAL, NULL);                    break;                case 1:                    DoPlaySoundToSet(me, SOUND_DECAY2);                    me->MonsterYell(SAY_DECAY2, LANG_UNIVERSAL, NULL);                    break;            }        } else DecayTimer -= diff;        if (NovaTimer <= diff)        {            DoCast(me->getVictim(), SPELL_FROST_NOVA);            NovaTimer = 30000+rand()%15000;            switch (urand(0,1))            {                case 0:                    DoPlaySoundToSet(me, SOUND_NOVA1);                    me->MonsterYell(SAY_NOVA1, LANG_UNIVERSAL, NULL);                    break;                case 1:                    DoPlaySoundToSet(me, SOUND_NOVA2);                    me->MonsterYell(SAY_NOVA2, LANG_UNIVERSAL, NULL);                    break;            }        } else NovaTimer -= diff;        if (IceboltTimer <= diff)        {            DoCast(SelectTarget(SELECT_TARGET_RANDOM,0,40,true), SPELL_ICEBOLT);            IceboltTimer = 11000+rand()%20000;        } else IceboltTimer -= diff;        DoMeleeAttackIfReady();    }
开发者ID:Agustin1010,项目名称:Oregon-Core,代码行数:74,


示例27: SetData

    void SetData(uint32 uiType, uint32 uiData)    {        switch(me->GetEntry())        {            case NPC_ARGENT_LIGHWIELDER:                switch(uiType)                {                    case 0:					    AddWaypoint(0,737.14,655.42,412.88);                        AddWaypoint(1,712.14,628.42,411.88);                        break;                    case 1:                        AddWaypoint(0,742.44,650.29,411.79);                        break;                    case 2:					    AddWaypoint(0,756.14,655.42,411.88);                        AddWaypoint(1,781.626, 629.383, 411.892);                        break;                }                break;            case NPC_ARGENT_MONK:                switch(uiType)                {                    case 0:					    AddWaypoint(0,737.14,655.42,412.88);                        AddWaypoint(1,713.12,632.97,411.90);                        break;                    case 1:                        AddWaypoint(0,746.73,650.24,411.56);                        break;                    case 2:					    AddWaypoint(0,756.14,655.42,411.88);                        AddWaypoint(1,781.351, 633.146, 411.907);                        break;                }                break;            case NPC_PRIESTESS:                switch(uiType)                {                    case 0:					    AddWaypoint(0,737.14,655.42,412.88);                        AddWaypoint(1,715.06,637.07,411.91);                        break;                    case 1:                        AddWaypoint(0,750.72,650.20,411.77);                        break;                    case 2:					    AddWaypoint(0,756.14,655.42,411.88);                        AddWaypoint(1,780.439, 636.681, 411.918);                        break;                }                break;        }        Start(false,true,0);        uiWaypoint = uiType;    }
开发者ID:Archives,项目名称:ro_core,代码行数:57,



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


C++ AddWidget函数代码示例
C++ AddVertex函数代码示例
万事OK自学网:51自学网_软件自学网_CAD自学网自学excel、自学PS、自学CAD、自学C语言、自学css3实例,是一个通过网络自主学习工作技能的自学平台,网友喜欢的软件自学网站。