📄 ltssupport.h
字号:
#ifndef _LTS_SUPPORT_H_
#define _LTS_SUPPORT_H_
#define LOCALWAR_NATION_MAX 3 // 0 : BY, 1 : ZY, 3 : YL
#define ACTION_SITDOWN 17 // 011214 LTS
#define LOCALWAR_SEALSTONE_MAX 4 // LTS NEW LOCALWAR
enum eLF_TYPE//enum Log Fame
{
LF_DUAL =0, // 掂倔家厚
LF_LOCALWAR =1, // 惫瘤傈
LF_ITEMBUY =2, // 惫啊绊鞭酒捞袍
LF_DONATION =3, // 惫啊扁何
LF_NATIONWAR =4, // 惫啊傈
LF_SCRIPT =5 // 胶农赋飘
};
#include <list> // LTS DRAGONLORD
using namespace std;
struct LocalWarfield_Info // LTS NEW LOCALWAR
{
int Index; // 硅凯俊 甸绢哎 困摹
int Phase; // 甘俊辑 甘栏肺狼 困摹
char MapName[20];
int Port;
int SealNo[3][4];
};
struct SealStoneStatus
{
char SprNo;
short int ID;
char MapNumber;
short int X, Y;
char Status;
};
class cLocalWarfield
{
LocalWarfield_Info m_tLocalWarfieldInfo;
short m_ManCount[LOCALWAR_NATION_MAX];
// short m_LocalWarPoint[LOCALWAR_NATION_MAX];
int m_bisLocalWarActive;
int m_SealStoneNo[NW_NATION_COUNT][LOCALWAR_SEALSTONE_MAX]; // LTS NEW LOCALWAR
CHARLIST* m_SealStonePtr[NW_NATION_COUNT][LOCALWAR_SEALSTONE_MAX]; // LTS NEW LOCALWAR
public :
cLocalWarfield();
~cLocalWarfield() {}
LocalWarfield_Info GetLocalWarfieldInfo() { return m_tLocalWarfieldInfo; }
void SetLocalWarfieldInfo(LocalWarfield_Info LF);
int GetLocalWarfieldPhase() { return m_tLocalWarfieldInfo.Phase; }
int GetLocalWarfieldIndex() { return m_tLocalWarfieldInfo.Index; }
int ConvertNation2Index(int Nation);
short GetManCount(int NationIndex) { return m_ManCount[NationIndex]; }
void IncManCount(int NationIndex) { m_ManCount[NationIndex]++; }
void DecManCount(int NationIndex) { m_ManCount[NationIndex]--; }
void ClearManCount();
/* short GetPoint(int NationIndex) { return m_LocalWarPoint[NationIndex]; }
void IncPoint(int NationIndex,int Value) { m_LocalWarPoint[NationIndex]+=Value; }
void ClearPoint();*/
int GetLocalWarStatus() { return m_bisLocalWarActive; }
void SetLocalWarStatus(int Status) { m_bisLocalWarActive=Status; }
int CheckAllSealStonebroked(int NationIndex); // LTS NEW LOCALWAR
void CheckSealStonePtr(CHARLIST* ch); // LTS NEW LOCALWAR
void ClearSealStonePtr(); // LTS NEW LOCALWAR
CHARLIST* GetSealStonePtr( const int nNation, const int nStoneNum ); // 030506 kyo //秦寸 搬拌籍狼 器牢磐甫 府畔茄促.
void RecoveryAllSealStone(); // 030520 kyo
};
struct EventMapData // 020115 LTS // LTS BUG
{
char EventActive; // 捞亥飘 风橇狼 柳青 秦力
char EventStartTime; // 捞亥飘 风橇狼 柳青 矫累矫埃(概老)
char EventRegTime;
char EventMapMoveTime;
char EventTime;
char EventDelayTime; // 捞亥飘 荤捞狼 绒侥矫埃
unsigned short EventUserLevelMin[3]; // 捞亥飘 1,2,3狼 炼牢饭骇 MIN
unsigned short EventUserLevelMax[3]; // 捞亥飘 1,2,3狼 炼牢饭骇 MAX
POINTS StartPoint[6]; // 唱扼喊 2俺究 // LTS BUG
unsigned short EventRegMax[3][3]; // 唱扼喊, 捞亥飘 锅龋喊 曼咯牢盔 力茄
POINTS OutPoint[3]; // 唱扼喊 窍唱究
char EventMessageTime; //捞亥飘 矫累矫 皋技瘤 傈价 林扁
POINTS EventJoinLocation[3]; // 付阑喊 捞亥飘 立荐措 x,y
};
#define EVENT_NOTHING 0
#define EVENT_JOIN 1
#define EVENT_MOVE 2
#define EVENT_DOING 3
#define EVENT_REST 4
#define EVENT_1 0
#define EVENT_2 1
#define EVENT_3 2
class cEventLocalWarfield // 020115 LTS
{
int m_EventStep; // 1锅捞亥飘, 2锅捞亥飘, 3锅捞亥飘
int m_EventStatus; // 0 : 荤侩救窃 // 1 :曼咯 2 : 捞悼 // 3 : 矫累 //4 :绒侥
__int64 m_EventEndTime; // TimeUpdate 矫埃
EventMapData m_tData; // 捞亥飘 甘单捞鸥
int m_CheckLoadData; // 单捞磐 肺爹 捞惑绝唱 眉农
WORD m_ManCount[3];
public :
cEventLocalWarfield();
~cEventLocalWarfield();
void InitEventLocalWarfield();
void LoadEventLocalWarfieldData();
inline int CheckLoadData() { return m_CheckLoadData; }
void InitEvent();
void ClearUserCloth();
void SetEventLocalWarStatus(int Status);
void UpdateEventLocalWarTime();
void EventLocalWarMessage();
void SendEvent1Message(int Status);
void SendEvent2Message(int Status);
void SendEvent3Message(int Status);
void SendEventDoingMessage();
void ClearUserALL();
void LogJoinUser();
void LogVictoryUser();
int GetNationIndex(int Nation);
inline int GetEventStatus() { return m_EventStatus; }
inline bool CheckLevel(int Level);
inline bool IncManCount(int Nation);
inline void ClearManCount() { m_ManCount[0]=0;m_ManCount[1]=0;m_ManCount[2]=0; }
};
typedef list<int> MemberList;
typedef MemberList::iterator MemberListItor;
#define BLUETEAM 0
#define REDTEAM 1
#define NONE_ARMOR 0
#define BLUE_ARMOR 1
#define RED_ARMOR 2
#define WAR_NOT_END -2
#define WAR_RESULT_LOOSE_ALL -1
#define WAR_RESULT_BLUE_WIN 0
#define WAR_RESULT_RED_WIN 1
class cDragonLordWar // LTS DRAGONLORD
{
__int64 m_64Timer;
DWORD MessageTime;
bool m_bisActive;
char m_cResult;
int TeamCount[2];
MemberList TeamMemberList[2];
POINT KickPoint[3];
void (*DeActiveFunc)();
void (*MessageFunc)();
void SetTimer(DWORD WarTime);
void SetMessageTime(DWORD MsgTime);
void PushMember(int Type,int ID);
void ClearMemberList();
void ClearMemberCount();
void SetReturnFunc(void(*pFunc)());
void SetMessageFunc(void(*pMsgFunc)());
void CheckMemberCount();
void SetKickPoint(POINT* kPoint);
void SetWarResult(char Result);
int GetTeamMemberCount(int Type);
void PutArmor();
void RemoveArmor();
void KickTeamAll();
void KickTeam(int Type);
void KickUser(int ID);
void SendTeamChange(int ID,int TeamNo);
void CheckRemainTime();
public :
cDragonLordWar();
~cDragonLordWar();
DWORD GetRemainTime();
void ActiveWar(DWORD WarTime,void(*pFunc)(),DWORD MessageTime,void(*pMsgFunc)(),POINT* kPoint,int RedTeamCount,int* RedTeam,int BlueTeamCount,int* BlueTeam);
void DeActiveWar();
void SetTeamList(int Type,int Count,int* Member); // Type RED:0,BLUE:1
void FindAndDeleteMember(int ID,bool Kick=true);
void UpdateWarTimer();
bool GetWarStatus();
int ReturnWinMemberCount();
int GetWarResult();
void ReturnWinMemerList(int* Member);
};
extern cDragonLordWar g_pDragonLordWar; // LTS DRAGONLORD
extern void SaveChangeClassStep(CHARLIST* pTarget, int nPrevStep, int nNextStep); // CSD-TW-030606
extern void SaveChangeClassQuest(CHARLIST* pTarget, const char* pMsg, int nQuestNo, int nQcount, int nStart); // CSD-TW-030618
extern void SaveChangeFame( CHARLIST *ch, int old_fame, int new_fame, eLF_TYPE type );
extern void SaveScriptLog( CHARLIST *ch, const int nQuestNo, const int nQuestStep, const char* msg); // 030826 kyo
#endif
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -