📄 ltssupport.cpp
字号:
sprintf(MapServerConfigFileName,"%s/data/MapServerConfig.ini",NetworkDir); */// 030919 HK YGI
for (i=0;i<6;i++) // 唱扼锅龋
{
sprintf(tempString,"EventMap%dStartPointX",i);
g_StartPoint[i].x=(short)GetPrivateProfileInt("EventLocalWar",tempString,0,MapServerConfigFileName);
if (!g_StartPoint[i].x)
{
MyLog(0,"%s狼 [EventLocalWar], %s 汲沥捞 肋给登绢乐嚼聪促.",MapServerConfigFileName,tempString);
return false;
}
sprintf(tempString,"EventMap%dStartPointY",i);
g_StartPoint[i].y=(short)GetPrivateProfileInt("EventLocalWar",tempString,0,MapServerConfigFileName);
if (!g_StartPoint[i].y)
{
MyLog(0,"%s狼 [EventLocalWar], %s 汲沥捞 肋给登绢乐嚼聪促.",MapServerConfigFileName,tempString);
return false;
}
}
return true;
}
bool InitEventLocalWarSystem() // 020115 LTS // LTS BUG
{
// 030919 HK YGI
// char NetworkDir[MAX_PATH];
// char MapServerConfigFileName[MAX_PATH];
int EventLocalWarfieldPort=0;
int MapServerPort;
SERVER_DATA *pData=g_pServerTable->GetOwnServerData();
MapServerPort=pData->wPort;
/*
if (GetPrivateProfileString("Network","path","",NetworkDir,MAX_PATH,MAP_SERVER_INI_)<=0)
{
MyLog(0,"Mapserver.ini狼 Path汲沥捞 肋给登绢乐嚼聪促.");
return false;
}
sprintf(MapServerConfigFileName,"%s/data/MapServerConfig.ini",NetworkDir);*/
EventLocalWarfieldPort=(DWORD)GetPrivateProfileInt("EventLocalWar","EventLocalWarfieldPort",0,MapServerConfigFileName);
if (!EventLocalWarfieldPort)
{
MyLog(0,"%s狼 [EventLocalWar],EventLocalWarfieldPort狼 汲沥捞 肋给登绢乐嚼聪促.",MapServerConfigFileName);
return false;
}
if (MapServerPort==EventLocalWarfieldPort) // 捞亥飘 甘捞扼搁
{
g_isEventLocalWarServer=true;
g_pEventLocalWarfield=new cEventLocalWarfield;
g_EventMapPort=EventLocalWarfieldPort;
if (!g_pEventLocalWarfield->CheckLoadData())
{
JustMessage("捞亥飘 甘捞瘤父 券版颇老(MapseverConfig.ini)甫 佬瘤 给沁嚼聪促.");
}
}
else
{
g_EventMapPort=EventLocalWarfieldPort; // 瘤陛 捞亥飘 柳青吝牢啊? 犬牢矫 肚绰 曼啊 脚没 牢盔 颇厩.
if (!LoadStartUpPoint())
{
JustMessage("券版颇老(MapseverConfig.ini)狼 EventLocalWar甫 佬瘤 给沁嚼聪促.");
}
}
return true;
}
void CloseEventLocalWarSystem()
{
SAFE_DELETE(g_pEventLocalWarfield);
}
void UpdateEventLocalWarTime()
{
if (g_isEventLocalWarServer)
{
if(g_pEventLocalWarfield)
{
g_pEventLocalWarfield->UpdateEventLocalWarTime();
}
else
{
::MyLog(1,"WARNING!!! -- g_pEventLocalWarfield is Null -- WARNING!!!");
}
}
}
int GetNationIndex(int Nation)
{
switch (Nation)
{
case NW_BY : return 0;
case NW_ZY : return 1;
case NW_YL : return 2;
}
return 0;
}
int GetNationFromIndex(int NationIndex) // LTS NEW LOCALWAR
{
switch(NationIndex)
{
case 0 : return NW_BY;
case 1 : return NW_ZY;
case 2 : return NW_YL;
}
return 3;
}
void SendEventPoint(int UserID,int Point)
{
t_packet packet;
packet.h.header.type=CMD_EVENT_POINT_CHANGE;
packet.u.LocalWar.EventPoint.Point=Point;
packet.h.header.size=sizeof(t_EventPoint);
QueuePacket(connections,UserID,&packet,1);
}
void CheckEventLocalWarDeath(CHARLIST* Attacker,CHARLIST* Defencer)
{
if (!g_isEventLocalWarServer) return;
if (g_pEventLocalWarfield->GetEventStatus()!=3) return;
const int LevelGap = Defencer->GetLevel() - Attacker->GetLevel(); // CSD-030806
MyLog(0,"Event LocalWar Death_______");
MyLog(0," Attacker : %s, Level : %d, Defender : %s, Level : %d, Level Gap : %d",
Attacker->Name, Attacker->GetLevel(),
Defencer->Name, Defencer->GetLevel(),
Defencer->GetLevel() - Attacker->GetLevel()); // CSD-030806
MyLog(0," Attacker Old Event Poind : %d",Attacker->EventPoint);
if (LevelGap<=(-30)) { Attacker->EventPoint+=1; }
if ((LevelGap>=(-29))&&(LevelGap<=(-10))) { Attacker->EventPoint+=3; }
if ((LevelGap>=(-9))&&(LevelGap<=(0))) { Attacker->EventPoint+=5; }
if ((LevelGap>=(1))&&(LevelGap<=(20))) { Attacker->EventPoint+=10; }
if (LevelGap>=(21)) { Attacker->EventPoint+=15; }
MyLog(0," Attacker New Event Point : %d",Attacker->EventPoint);
SendEventPoint(Attacker->GetServerID(),Attacker->EventPoint);
}
bool CanUseRevivalPosion()
{
if(g_isEventLocalWarServer)
{
if( g_pEventLocalWarfield->GetEventStatus()==3 ) return false;
}
return true;
}
int CheckEventAttack()
{
if (!g_isEventLocalWarServer) return FALSE; // 捞亥飘 辑滚啊 酒聪搁 傍拜且荐 乐澜
if (g_pEventLocalWarfield->GetEventStatus()!=3) return TRUE; // 捞亥飘 辑滚捞绊 捞亥飘狼 惑怕啊 傈里矫累捞 酒聪搁 傍拜且荐 绝澜
return FALSE; //捞亥飘辑滚狼 傈里吝浚 傍拜且荐 乐澜
}
int CheckEventWarDoing()
{
if (!g_isEventLocalWarServer) return false;
if (g_pEventLocalWarfield->GetEventStatus()!=3) return false;
return true;
}
void ClearEventJoin(CHARLIST* ch,int EventNo)
{
t_packet packet;
packet.h.header.type=CMD_DELETE_EVENT_JOIN;
strcpy(packet.u.LocalWar.DeleteEventJoin.UserName,ch->Name);
packet.u.LocalWar.DeleteEventJoin.EventNo=EventNo;
packet.h.header.size=sizeof(t_DeleteEventJoin);
QueuePacket(connections, DB_DEMON, &packet, 1);
switch (EventNo)
{
case 1 : ch->EventJoin.Event1=0; break;
case 2 : ch->EventJoin.Event2=0; break;
case 3 : ch->EventJoin.Event3=0; break;
case 4 : ch->EventJoin.Event4=0; break;
case 5 : ch->EventJoin.Event5=0; break;
case 6 : ch->EventJoin.Event6=0; break;
case 7 : ch->EventJoin.Event7=0; break;
case 8 : ch->EventJoin.Event8=0; break;
}
}
int CheckEventJoin(CHARLIST* ch,int EventNo)
{
switch (EventNo)
{
case 1 : return ch->EventJoin.Event1;
case 2 : return ch->EventJoin.Event2;
case 3 : return ch->EventJoin.Event3;
case 4 : return ch->EventJoin.Event4;
case 5 : return ch->EventJoin.Event5;
case 6 : return ch->EventJoin.Event6;
case 7 : return ch->EventJoin.Event7;
default : return ch->EventJoin.Event8;
}
}
void ReLoadEventLocalWarData() // LTS BUG
{
if (!g_isEventLocalWarServer) return;
g_pEventLocalWarfield->LoadEventLocalWarfieldData();
}
cEventLocalWarfield::cEventLocalWarfield()
{
InitEventLocalWarfield();
LoadEventLocalWarfieldData();
}
cEventLocalWarfield::~cEventLocalWarfield()
{
}
void cEventLocalWarfield::InitEventLocalWarfield()
{
m_EventStep=0;
m_EventStatus=0;
m_EventEndTime=0;
m_CheckLoadData=1;
m_ManCount[0]=0;
m_ManCount[1]=0;
m_ManCount[2]=0;
memset(&m_tData,0,sizeof(m_tData));
}
void cEventLocalWarfield::LoadEventLocalWarfieldData() // LTS BUG
{
// 030919 HK YGI
// char NetworkDir[MAX_PATH];
// char MapServerConfigFileName[MAX_PATH];
int i,j;
char tempString[MAX_PATH],tempString2[MAX_PATH];
/*
if (GetPrivateProfileString("Network","path","",NetworkDir,MAX_PATH,MAP_SERVER_INI_)<=0)
{
MyLog(0,"Mapserver.ini狼 Path汲沥捞 肋给登绢乐嚼聪促.");
m_CheckLoadData=0;
return;
}
sprintf(MapServerConfigFileName,"%s/data/MapServerConfig.ini",NetworkDir);*/
m_tData.EventActive=(char)GetPrivateProfileInt("EventLocalWar","EventActive",4,MapServerConfigFileName);
if (m_tData.EventActive==4)
{
MyLog(0,"%s狼 [EventLocalWar],EventActive 汲沥捞 肋给登绢乐嚼聪促.",MapServerConfigFileName);
m_CheckLoadData=0;
return;
}
m_tData.EventStartTime=(char)GetPrivateProfileInt("EventLocalWar","EventStartTime",0,MapServerConfigFileName);
if (!m_tData.EventStartTime)
{
MyLog(0,"%s狼 [EventLocalWar],EventStartTime 汲沥捞 肋给登绢乐嚼聪促.",MapServerConfigFileName);
m_CheckLoadData=0;
return;
}
m_tData.EventRegTime=(char)GetPrivateProfileInt("EventLocalWar","EventRegTime",0,MapServerConfigFileName);
if (!m_tData.EventRegTime)
{
MyLog(0,"%s狼 [EventLocalWar],EventRegTime 汲沥捞 肋给登绢乐嚼聪促.",MapServerConfigFileName);
m_CheckLoadData=0;
return;
}
m_tData.EventMapMoveTime=(char)GetPrivateProfileInt("EventLocalWar","EventMapMoveTime",0,MapServerConfigFileName);
if (!m_tData.EventMapMoveTime)
{
MyLog(0,"%s狼 [EventLocalWar],EventMapMoveTime 汲沥捞 肋给登绢乐嚼聪促.",MapServerConfigFileName);
m_CheckLoadData=0;
return;
}
m_tData.EventTime=(char)GetPrivateProfileInt("EventLocalWar","EventTime",0,MapServerConfigFileName);
if (!m_tData.EventTime)
{
MyLog(0,"%s狼 [EventLocalWar],EventTime 汲沥捞 肋给登绢乐嚼聪促.",MapServerConfigFileName);
m_CheckLoadData=0;
return;
}
m_tData.EventDelayTime=(char)GetPrivateProfileInt("EventLocalWar","EventDelayTime",0,MapServerConfigFileName);
if (!m_tData.EventDelayTime)
{
MyLog(0,"%s狼 [EventLocalWar],EventDelayTime 汲沥捞 肋给登绢乐嚼聪促.",MapServerConfigFileName);
m_CheckLoadData=0;
return;
}
for (i=0;i<3;i++)
{
sprintf(tempString,"Event%dUserLevelMin",i);
m_tData.EventUserLevelMin[i]=(unsigned char)GetPrivateProfileInt("EventLocalWar",tempString,0,MapServerConfigFileName);
if (!m_tData.EventUserLevelMin[i])
{
MyLog(0,"%s狼 [EventLocalWar], %s 汲沥捞 肋给登绢乐嚼聪促.",MapServerConfigFileName,tempString);
m_CheckLoadData=0;
return;
}
sprintf(tempString,"Event%dUserLevelMax",i);
m_tData.EventUserLevelMax[i]=(unsigned char)GetPrivateProfileInt("EventLocalWar",tempString,0,MapServerConfigFileName);
if (!m_tData.EventUserLevelMax[i])
{
MyLog(0,"%s狼 [EventLocalWar], %s 汲沥捞 肋给登绢乐嚼聪促.",MapServerConfigFileName,tempString);
m_CheckLoadData=0;
return;
}
}
for (i=0;i<6;i++) // 唱扼锅龋
{
sprintf(tempString,"EventMap%dStartPointX",i);
m_tData.StartPoint[i].x=(short)GetPrivateProfileInt("EventLocalWar",tempString,0,MapServerConfigFileName);
if (!m_tData.StartPoint[i].x)
{
MyLog(0,"%s狼 [EventLocalWar], %s 汲沥捞 肋给登绢乐嚼聪促.",MapServerConfigFileName,tempString);
m_CheckLoadData=0;
return;
}
sprintf(tempString,"EventMap%dStartPointY",i);
m_tData.StartPoint[i].y=(short)GetPrivateProfileInt("EventLocalWar",tempString,0,MapServerConfigFileName);
if (!m_tData.StartPoint[i].y)
{
MyLog(0,"%s狼 [EventLocalWar], %s 汲沥捞 肋给登绢乐嚼聪促.",MapServerConfigFileName,tempString);
m_CheckLoadData=0;
return;
}
}
for (i=0;i<3;i++) // 唱扼锅龋
{
for (j=0;j<3;j++)
{
switch(j)
{
case 0 : sprintf(tempString2,"BY"); break;
case 1 : sprintf(tempString2,"ZY"); break;
case 2 : sprintf(tempString2,"YL"); break;
}
sprintf(tempString,"Event%dRegUser%sMAX",i,tempString2);
m_tData.EventRegMax[i][j]=(unsigned char)GetPrivateProfileInt("EventLocalWar",tempString,0,MapServerConfigFileName);
if (!m_tData.EventRegMax[i][j])
{
MyLog(0,"%s狼 [EventLocalWar], %s 汲沥捞 肋给登绢乐嚼聪促.",MapServerConfigFileName,tempString);
m_CheckLoadData=0;
return;
}
}
}
for (i=0;i<3;i++)
{
switch(i)
{
case 0 : sprintf(tempString2,"BY"); break;
case 1 : sprintf(tempString2,"ZY"); break;
case 2 : sprintf(tempString2,"YL"); break;
}
sprintf(tempString,"EventMap%sOutPointX",tempString2);
m_tData.OutPoint[i].x=(short)GetPrivateProfileInt("EventLocalWar",tempString,0,MapServerConfigFileName);
if (!m_tData.OutPoint[i].x)
{
MyLog(0,"%s狼 [EventLocalWar], %s 汲沥捞 肋给登绢乐嚼聪促.",MapServerConfigFileName,tempString);
m_CheckLoadData=0;
return;
}
sprintf(tempString,"EventMap%sOutPointY",tempString2);
m_tData.OutPoint[i].y=(short)GetPrivateProfileInt("EventLocalWar",tempString,0,MapServerConfigFileName);
if (!m_tData.OutPoint[i].y)
{
MyLog(0,"%s狼 [EventLocalWar], %s 汲沥捞 肋给登绢乐嚼聪促.",MapServerConfigFileName,tempString);
m_CheckLoadData=0;
return;
}
}
for (i=0;i<3;i++)
{
switch(i)
{
case 0 : sprintf(tempString2,"BY"); break;
case 1 : sprintf(tempString2,"ZY"); break;
case 2 : sprintf(tempString2,"YL"); break;
}
sprintf(tempString,"EventJoin%sLocationX",tempString2);
m_tData.EventJoinLocation[i].x=(short)GetPrivateProfileInt("EventLocalWar",tempString,0,MapServerConfigFileName);
if (!m_tData.EventJoinLocation[i].x)
{
MyLog(0,"%s狼 [EventLocalWar], %s 汲沥捞 肋给登绢乐嚼聪促.",MapServerConfigFileName,tempString);
m_CheckLoadData=0;
return;
}
sprintf(tempString,"EventJoin%sLocationY",tempString2);
m_tData.EventJoinLocation[i].y=(short)GetPrivateProfileInt("EventLocalWar",tempString,0,MapServerConfigFileName);
if (!m_tData.EventJoinLocation[i].y)
{
MyLog(0,"%s狼 [EventLo
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -