- Main Page
- Classes
- Files

- File List
- File Members

# E:/uas2/Server/SimpleAI.h

Go to the documentation of this file.

    00001 /*
    00002 * This file is part of UAS2.
    00003 *
    00004 * UAS2 is free software; you can redistribute it and/or modify
    00005 * it under the terms of the GNU General Public License as published by
    00006 * the Free Software Foundation; either version 2 of the License, or
    00007 * (at your option) any later version.
    00008 *
    00009 * UAS2 is distributed in the hope that it will be useful,
    00010 * but WITHOUT ANY WARRANTY; without even the implied warranty of
    00011 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
    00012 * GNU General Public License for more details.
    00013
    00014 * You should have received a copy of the GNU General Public License
    00015 * along with UASv1; if not, write to the Free Software
    00016 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
    00017 */
    00018
    00023 #if !defined(AFX_SIMPLEAI_H__33AB5540_9AF8_405E_9423_B2EC11F51808__INCLUDED_)
    00024 #define AFX_SIMPLEAI_H__33AB5540_9AF8_405E_9423_B2EC11F51808__INCLUDED_
    00025
    00026 #if _MSC_VER > 1000
    00027 #pragma once
    00028 #endif // _MSC_VER > 1000
    00029 #include <time.h>
    00030 #include "Shared.h"
    00031 #include "WorldManager.h"
    00032 #include "cMonsterServer.h"
    00033
    00034 class SimpleAI
    00035 {
    00036 public:
    00037         SimpleAI();
    00038         virtual ~SimpleAI();
    00039
    00040         static bool             AddMonster                      ( DWORD dwGUID );
    00041         static bool             AddPet                          ( DWORD dwGUID, DWORD dwOGUID );
    00042         static bool             RemoveMonster           ( DWORD dwGUID );
    00043         static void     ExecuteActions          ( );
    00044
    00045         static void             SetAction                       ( DWORD dwGUID, DWORD dwEvent, WORD wDelay );
    00046
    00047         static void             SetMoving                       ( DWORD dwGUID );
    00048         static void             SetMovingComplete       ( DWORD dwGUID );
    00049
    00050         static void             SetUnderAttack          ( DWORD dwGUID, DWORD dwTarget );
    00051         static void             SetAttackComplete       ( DWORD dwGUID );
    00052         static void             SetTargetKilled         ( DWORD dwTarget );
    00053         static void             SetAttackEvent          ( DWORD dwGUID, DWORD dwTarget, DWORD dwEvent, WORD wDelay );
    00054         static void             MoveMonsters            ( );
    00055
    00056         static DWORD    Monsters[MAX_MONSTERS][8];
    00057
    00058         static time_t   longtime;
    00059         static time_t   NextActionTime;
    00060 };
    00061
    00062 #endif // !defined(AFX_SIMPLEAI_H__33AB5540_9AF8_405E_9423_B2EC11F51808__INCLUDED_)