stoneage8.5/石器时代8.5客户端最新源代码/石器源码/CharTitle.cpp

404 lines
11 KiB
C++
Raw Normal View History

2020-06-22 17:49:02 +08:00
#include "../systeminc/version.h"
#include "../systeminc/system.h"
#include "../systeminc/font.h"
#include "../systeminc/action.h"
#include "systeminc\sprdisp.h"
#include "systeminc\menu.h"
#include "systeminc\mouse.h"
#include "newproto\autil.h"
#include "newproto\protocol.h"
#ifdef _CHARTITLE_STR_
extern unsigned int sockfd;
typedef struct{
BOOL <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʾ;
BOOL ȷ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʾ;
int <EFBFBD><EFBFBD>ǰҳ<EFBFBD><EFBFBD>;
int ȷ<EFBFBD><EFBFBD>ͼ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>;
char <EFBFBD><EFBFBD><EFBFBD><EFBFBD>[100][32];
int <EFBFBD>ƺ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>[100];
TITLE_STR title;//<2F><>ǰ<EFBFBD>ƺ<EFBFBD>
TITLE_STR titledata[100];//<2F>ƺ<EFBFBD><C6BA><EFBFBD><EFBFBD><EFBFBD>
BOOL <EFBFBD>رմ<EFBFBD><EFBFBD><EFBFBD>;
}<EFBFBD>ƺ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݽ;
extern int play_se(int tone, int x, int y);
<EFBFBD>ƺ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݽ <EFBFBD>ƺ<EFBFBD>;
void <EFBFBD>򿪳ƺŴ<EFBFBD><EFBFBD>ڳ<EFBFBD>ʼ<EFBFBD><EFBFBD>()
{
if(<EFBFBD>ƺ<EFBFBD>.<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʾ){
<EFBFBD>ƺ<EFBFBD>.<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʾ=FALSE;
<EFBFBD>ƺ<EFBFBD>.ȷ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʾ=FALSE;
}else{
<EFBFBD>ƺ<EFBFBD>.<EFBFBD><EFBFBD>ǰҳ<EFBFBD><EFBFBD>=0;
<EFBFBD>ƺ<EFBFBD>.<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʾ=TRUE;
<EFBFBD>ƺ<EFBFBD>.ȷ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʾ=FALSE;
}
}
extern void PutTitleText(int x,int y,char fontPrio,TITLE_STR str,BOOL hitFlag);
BOOL <EFBFBD><EFBFBD>ȡ<EFBFBD>ƺ<EFBFBD>ȡ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>()
{
return <EFBFBD>ƺ<EFBFBD>.<EFBFBD>رմ<EFBFBD><EFBFBD><EFBFBD>;
}
void <EFBFBD><EFBFBD><EFBFBD>óƺ<EFBFBD>ȡ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>()
{
if(<EFBFBD>ƺ<EFBFBD>.<EFBFBD>رմ<EFBFBD><EFBFBD><EFBFBD>) <EFBFBD>ƺ<EFBFBD>.<EFBFBD>رմ<EFBFBD><EFBFBD><EFBFBD>=FALSE;
else <EFBFBD>ƺ<EFBFBD>.<EFBFBD>رմ<EFBFBD><EFBFBD><EFBFBD>=TRUE;
}
BOOL <EFBFBD><EFBFBD>ȡ<EFBFBD><EFBFBD>ǰ<EFBFBD>ƺ<EFBFBD><EFBFBD>Ƿ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>()
{
return <EFBFBD>ƺ<EFBFBD>.title.flg;
}
void <EFBFBD>ƺ<EFBFBD>չʾ()
{
if(<EFBFBD>ƺ<EFBFBD>.title.flg){
PutTitleText(78-<EFBFBD>ƺ<EFBFBD>.title.len/2,49,FONT_PRIO_FRONT,<EFBFBD>ƺ<EFBFBD>.title,0);
}
int bnt;
bnt = StockFontBuffer(18,49,1,FONT_PAL_GREEN," ",2);
if(mouse.onceState & MOUSE_LEFT_CRICK>0){
if(HitFontNo == bnt){
if(<EFBFBD>ƺ<EFBFBD>.<EFBFBD>رմ<EFBFBD><EFBFBD><EFBFBD>) <EFBFBD>ƺ<EFBFBD>.<EFBFBD>رմ<EFBFBD><EFBFBD><EFBFBD>=FALSE;
else <EFBFBD>ƺ<EFBFBD>.<EFBFBD>رմ<EFBFBD><EFBFBD><EFBFBD>=TRUE;
play_se(203, 320, 240);
}
}
}
BOOL <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ƺŴ<EFBFBD><EFBFBD><EFBFBD>(ACTION * pct)
{
int x,y;
x = pct->x;
y = pct->y + 133;
int <EFBFBD><EFBFBD>ť<EFBFBD><EFBFBD>=-1;
int <EFBFBD><EFBFBD>ť<EFBFBD><EFBFBD>=-1;
int <EFBFBD><EFBFBD>ť<EFBFBD>ر<EFBFBD>=-1;
int <EFBFBD><EFBFBD>ťID;
<EFBFBD><EFBFBD>ť<EFBFBD><EFBFBD> = StockDispBuffer( x -55, y + 7, DISP_PRIO_IME3, 55250, 2 );
<EFBFBD><EFBFBD>ť<EFBFBD><EFBFBD> = StockDispBuffer( x -20, y + 7, DISP_PRIO_IME3, 55251, 2 );
<EFBFBD><EFBFBD>ť<EFBFBD>ر<EFBFBD> = StockDispBuffer( x+40, y + 7, DISP_PRIO_IME3, 55252, 2 );
if( mouse.onceState & MOUSE_LEFT_CRICK ){
if(!<EFBFBD>ƺ<EFBFBD>.ȷ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʾ){
if(<EFBFBD><EFBFBD>ť<EFBFBD><EFBFBD> == HitDispNo){
if(<EFBFBD>ƺ<EFBFBD>.<EFBFBD><EFBFBD>ǰҳ<EFBFBD><EFBFBD>){
<EFBFBD>ƺ<EFBFBD>.<EFBFBD><EFBFBD>ǰҳ<EFBFBD><EFBFBD>--;
}
}
if(<EFBFBD><EFBFBD>ť<EFBFBD><EFBFBD> == HitDispNo){
if(<EFBFBD>ƺ<EFBFBD>.<EFBFBD><EFBFBD>ǰҳ<EFBFBD><EFBFBD>!=19 && <EFBFBD>ƺ<EFBFBD>.titledata[(<EFBFBD>ƺ<EFBFBD>.<EFBFBD><EFBFBD>ǰҳ<EFBFBD><EFBFBD>+1)*5].flg)
{
<EFBFBD>ƺ<EFBFBD>.<EFBFBD><EFBFBD>ǰҳ<EFBFBD><EFBFBD>++;
}
}
if(<EFBFBD><EFBFBD>ť<EFBFBD>ر<EFBFBD> == HitDispNo){
DeathAction(pct);
<EFBFBD>ƺ<EFBFBD>.<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʾ=FALSE;
<EFBFBD>ƺ<EFBFBD>.ȷ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʾ=FALSE;
return TRUE;
}
}
}
int i=0;
int <EFBFBD>ƺ<EFBFBD>ͼ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>;
for(;i<5;i++){
<EFBFBD>ƺ<EFBFBD>ͼ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> = <EFBFBD>ƺ<EFBFBD>.<EFBFBD><EFBFBD>ǰҳ<EFBFBD><EFBFBD>*5+i;
if(<EFBFBD>ƺ<EFBFBD>.titledata[<EFBFBD>ƺ<EFBFBD>ͼ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>].flg)
{
PutTitleText(380-<EFBFBD>ƺ<EFBFBD>.titledata[<EFBFBD>ƺ<EFBFBD>ͼ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>].len/2,43+i*0x20,FONT_PRIO_FRONT,<EFBFBD>ƺ<EFBFBD>.titledata[<EFBFBD>ƺ<EFBFBD>ͼ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>],0);
char <EFBFBD>ƺ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>[128];
sprintf_s(<EFBFBD>ƺ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,"%03d",<EFBFBD>ƺ<EFBFBD>ͼ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>+1);
StockFontBufferExt(0x130,0x2D+i*0x20,1,FONT_PAL_GREEN,<EFBFBD>ƺ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,0,19);
if(!<EFBFBD>ƺ<EFBFBD>.ȷ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʾ){
if(MakeHitBox(0x124,0x26+i*0x20,0x1B8,0x44+i*0x20,0x6D)==1){
StockFontBuffer(0x123,0xD1,2,0,<EFBFBD>ƺ<EFBFBD>.<EFBFBD><EFBFBD><EFBFBD><EFBFBD>[<EFBFBD>ƺ<EFBFBD>ͼ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>],0);
if(mouse.onceState & MOUSE_LEFT_CRICK>0){
<EFBFBD>ƺ<EFBFBD>.ȷ<EFBFBD><EFBFBD>ͼ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>=<EFBFBD>ƺ<EFBFBD>.<EFBFBD>ƺ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>[ <EFBFBD>ƺ<EFBFBD>ͼ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>];
<EFBFBD>ƺ<EFBFBD>.ȷ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʾ=TRUE;
}
}
}
}else break;
}
if(<EFBFBD>ƺ<EFBFBD>.ȷ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʾ){
StockFontBuffer(0x123,0xD1,2,0,<EFBFBD>ƺ<EFBFBD>.<EFBFBD><EFBFBD><EFBFBD><EFBFBD>[<EFBFBD>ƺ<EFBFBD>.ȷ<EFBFBD><EFBFBD>ͼ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>],0);
StockFontBuffer(0x130,0x118,2,0,"ȷ<EFBFBD><EFBFBD>ʹ<EFBFBD>øóƺ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>",0);
StockDispBuffer(0x16D,0x130,0x6C,55253,1);//ȷ<><C8B7><EFBFBD><EFBFBD><EFBFBD>ڵ<EFBFBD>ͼ
<EFBFBD><EFBFBD>ťID = StockDispBuffer(0x194,0x148,109,55252,2);//<2F>ر<EFBFBD>
if(mouse.onceState & MOUSE_LEFT_CRICK>0){
if(<EFBFBD><EFBFBD>ťID == HitDispNo){
<EFBFBD>ƺ<EFBFBD>.ȷ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʾ=FALSE;
<EFBFBD>ƺ<EFBFBD>.ȷ<EFBFBD><EFBFBD>ͼ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>=0;
}
}
<EFBFBD><EFBFBD>ťID = StockDispBuffer(0x148,0x148,109,55254,2);//ȷ<><C8B7>
if(mouse.onceState & MOUSE_LEFT_CRICK>0){
if(<EFBFBD><EFBFBD>ťID == HitDispNo){
int checksum=0;
char buf[1024*4];
memset(buf,0,1024*4);
checksum += util_mkint(buf, <EFBFBD>ƺ<EFBFBD>.ȷ<EFBFBD><EFBFBD>ͼ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>);
util_mkint(buf, checksum);
util_SendMesg(sockfd, LSSPROTO_CHARTITLE_SEND, buf);
<EFBFBD>ƺ<EFBFBD>.ȷ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʾ=FALSE;
<EFBFBD>ƺ<EFBFBD>.ȷ<EFBFBD><EFBFBD>ͼ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>=0;
}
}
}
return FALSE;
}
extern void getCharTitleSplit( char *str,TITLE_STR* title);
void <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ƺ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݸ<EFBFBD><EFBFBD><EFBFBD>(char *<EFBFBD><EFBFBD><EFBFBD><EFBFBD>)
{
char <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>[126],ͼ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>[1024],ͼ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>[1024],<EFBFBD><EFBFBD><EFBFBD>ݽ<EFBFBD><EFBFBD><EFBFBD>[4000],<EFBFBD><EFBFBD>ʱ[126];
memset(<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,0,126);
memset(ͼ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,0,1024);
memset(ͼ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,0,1024);
memset(<EFBFBD><EFBFBD><EFBFBD>ݽ<EFBFBD><EFBFBD><EFBFBD>,0,4000);
getStringFromIndexWithDelim_body((char *) <EFBFBD><EFBFBD><EFBFBD><EFBFBD>,(char *)"#@",1,<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,126);
getStringFromIndexWithDelim_body((char *) <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,(char *)"|",1,<EFBFBD><EFBFBD>ʱ,126);
int titleindex = atoi(<EFBFBD><EFBFBD>ʱ);
extern char* FreeGetTitleStr(int id);
if(titleindex>0) getCharTitleSplit(FreeGetTitleStr(titleindex),&<EFBFBD>ƺ<EFBFBD>.title);
else memset(&<EFBFBD>ƺ<EFBFBD>.title,0,sizeof(TITLE_STR));
getStringFromIndexWithDelim_body((char *) <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,(char *)"|",2,<EFBFBD><EFBFBD>ʱ,126);
int <EFBFBD><EFBFBD><EFBFBD><EFBFBD> = atoi(<EFBFBD><EFBFBD>ʱ);
if(<EFBFBD><EFBFBD><EFBFBD><EFBFBD>!=0){
memset(&<EFBFBD>ƺ<EFBFBD>.titledata,0,sizeof(<EFBFBD>ƺ<EFBFBD>.titledata[0])*100);
memset(&<EFBFBD>ƺ<EFBFBD>.<EFBFBD>ƺ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,0,sizeof(int)*100);
memset(&<EFBFBD>ƺ<EFBFBD>.<EFBFBD><EFBFBD><EFBFBD><EFBFBD>,0,32*100);
getStringFromIndexWithDelim_body((char *) <EFBFBD><EFBFBD><EFBFBD><EFBFBD>,(char *)"#@",2,ͼ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,1024);
getStringFromIndexWithDelim_body((char *) <EFBFBD><EFBFBD><EFBFBD><EFBFBD>,(char *)"#@",3,<EFBFBD><EFBFBD><EFBFBD>ݽ<EFBFBD><EFBFBD><EFBFBD>,4000);
getStringFromIndexWithDelim_body((char *) <EFBFBD><EFBFBD><EFBFBD><EFBFBD>,(char *)"#@",4,ͼ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,1024);
int i=0;
extern char* FreeGetTitleStr(int id);
for(i;i<<EFBFBD><EFBFBD><EFBFBD><EFBFBD>;i++){
getStringFromIndexWithDelim_body((char *)ͼ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,(char *)"|",i+1,<EFBFBD><EFBFBD>ʱ,126);
titleindex = atoi(<EFBFBD><EFBFBD>ʱ);
getCharTitleSplit(FreeGetTitleStr(titleindex),&<EFBFBD>ƺ<EFBFBD>.titledata[i]);
getStringFromIndexWithDelim_body((char *)ͼ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,(char *)"|",i+1,<EFBFBD><EFBFBD>ʱ,126);
<EFBFBD>ƺ<EFBFBD>.<EFBFBD>ƺ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>[i]=atoi(<EFBFBD><EFBFBD>ʱ);
getStringFromIndexWithDelim_body((char *)<EFBFBD><EFBFBD><EFBFBD>ݽ<EFBFBD><EFBFBD><EFBFBD>,(char *)"|",i+1,<EFBFBD><EFBFBD>ʱ,126);
sprintf_s(<EFBFBD>ƺ<EFBFBD>.<EFBFBD><EFBFBD><EFBFBD><EFBFBD>[i],32,"%s",<EFBFBD><EFBFBD>ʱ);
}
}
}
void <EFBFBD><EFBFBD>ʼ<EFBFBD><EFBFBD><EFBFBD>ƺŽ()
{
memset(&<EFBFBD>ƺ<EFBFBD>,0,sizeof(<EFBFBD>ƺ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݽ));
}
#endif
#ifdef _CHARTITLE_
extern unsigned int sockfd;
typedef struct{
int <EFBFBD>ƺŴ<EFBFBD><EFBFBD>ڽ;
ACTION *<EFBFBD>ƺŽ[5];
ACTION * <EFBFBD><EFBFBD>ǰ<EFBFBD>ƺŽ;
int <EFBFBD><EFBFBD>ǰ<EFBFBD>ƺ<EFBFBD>ͼ<EFBFBD><EFBFBD>;
BOOL <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʾ;
int ͼ<EFBFBD><EFBFBD>[100];
int <EFBFBD>ƺ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>[100];
char <EFBFBD><EFBFBD><EFBFBD><EFBFBD>[100][32];
int <EFBFBD><EFBFBD>ǰҳ<EFBFBD><EFBFBD>;
BOOL ȷ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʾ;
int ȷ<EFBFBD><EFBFBD>ͼ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>;
}<EFBFBD>ƺ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݽ;
<EFBFBD>ƺ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݽ <EFBFBD>ƺ<EFBFBD>;
void <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ƺ<EFBFBD>չʾ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>()
{
int i=0;
for(i;i<5;i++){
if(<EFBFBD>ƺ<EFBFBD>.<EFBFBD>ƺŽ[i]){
if(<EFBFBD>ƺ<EFBFBD>.<EFBFBD>ƺŽ[i]) DeathAction(<EFBFBD>ƺ<EFBFBD>.<EFBFBD>ƺŽ[i]);
<EFBFBD>ƺ<EFBFBD>.<EFBFBD>ƺŽ[i]=0;
}
}
}
void <EFBFBD>򿪳ƺŴ<EFBFBD><EFBFBD>ڳ<EFBFBD>ʼ<EFBFBD><EFBFBD>()
{
if(<EFBFBD>ƺ<EFBFBD>.<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʾ){
<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ƺ<EFBFBD>չʾ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>();
<EFBFBD>ƺ<EFBFBD>.<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʾ=FALSE;
<EFBFBD>ƺ<EFBFBD>.ȷ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʾ=FALSE;
}else{
<EFBFBD>ƺ<EFBFBD>.<EFBFBD><EFBFBD>ǰҳ<EFBFBD><EFBFBD>=0;
<EFBFBD>ƺ<EFBFBD>.<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʾ=TRUE;
<EFBFBD>ƺ<EFBFBD>.ȷ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʾ=FALSE;
}
}
void <EFBFBD>ƺ<EFBFBD>չʾ()
{
if(<EFBFBD>ƺ<EFBFBD>.<EFBFBD><EFBFBD>ǰ<EFBFBD>ƺ<EFBFBD>ͼ<EFBFBD><EFBFBD>)
if(!<EFBFBD>ƺ<EFBFBD>.<EFBFBD><EFBFBD>ǰ<EFBFBD>ƺŽ){
if(<EFBFBD>ƺ<EFBFBD>.<EFBFBD><EFBFBD>ǰ<EFBFBD>ƺ<EFBFBD>ͼ<EFBFBD><EFBFBD> < 100000){
<EFBFBD>ƺ<EFBFBD>.<EFBFBD><EFBFBD>ǰ<EFBFBD>ƺŽ = 0;
StockDispBuffer(0x7F,0x40,109,<EFBFBD>ƺ<EFBFBD>.<EFBFBD><EFBFBD>ǰ<EFBFBD>ƺ<EFBFBD>ͼ<EFBFBD><EFBFBD>,0);
}else{
<EFBFBD>ƺ<EFBFBD>.<EFBFBD><EFBFBD>ǰ<EFBFBD>ƺŽ = MakeAnimDisp(0x7F,0x59,<EFBFBD>ƺ<EFBFBD>.<EFBFBD><EFBFBD>ǰ<EFBFBD>ƺ<EFBFBD>ͼ<EFBFBD><EFBFBD>,0);
}
}else if(*(int *)(<EFBFBD>ƺ<EFBFBD>.<EFBFBD><EFBFBD>ǰ<EFBFBD>ƺŽ+0x140)!= <EFBFBD>ƺ<EFBFBD>.<EFBFBD><EFBFBD>ǰ<EFBFBD>ƺ<EFBFBD>ͼ<EFBFBD><EFBFBD>){
DeathAction(<EFBFBD>ƺ<EFBFBD>.<EFBFBD><EFBFBD>ǰ<EFBFBD>ƺŽ);
if(<EFBFBD>ƺ<EFBFBD>.<EFBFBD><EFBFBD>ǰ<EFBFBD>ƺ<EFBFBD>ͼ<EFBFBD><EFBFBD> < 100000){
<EFBFBD>ƺ<EFBFBD>.<EFBFBD><EFBFBD>ǰ<EFBFBD>ƺŽ = 0;
StockDispBuffer(0x7F,0x40,109,<EFBFBD>ƺ<EFBFBD>.<EFBFBD><EFBFBD>ǰ<EFBFBD>ƺ<EFBFBD>ͼ<EFBFBD><EFBFBD>,0);
}else{
<EFBFBD>ƺ<EFBFBD>.<EFBFBD><EFBFBD>ǰ<EFBFBD>ƺŽ = MakeAnimDisp(0x7F,0x59,<EFBFBD>ƺ<EFBFBD>.<EFBFBD><EFBFBD>ǰ<EFBFBD>ƺ<EFBFBD>ͼ<EFBFBD><EFBFBD>,0);
}
}
}
BOOL <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ƺŴ<EFBFBD><EFBFBD><EFBFBD>(ACTION * pct)
{
int x,y;
x = pct->x;
y = pct->y + 133;
int <EFBFBD><EFBFBD>ť<EFBFBD><EFBFBD>=-1;
int <EFBFBD><EFBFBD>ť<EFBFBD><EFBFBD>=-1;
int <EFBFBD><EFBFBD>ť<EFBFBD>ر<EFBFBD>=-1;
int <EFBFBD><EFBFBD>ťID;
<EFBFBD><EFBFBD>ť<EFBFBD><EFBFBD> = StockDispBuffer( x -55, y + 7, DISP_PRIO_IME3, 55250, 2 );
<EFBFBD><EFBFBD>ť<EFBFBD><EFBFBD> = StockDispBuffer( x -20, y + 7, DISP_PRIO_IME3, 55251, 2 );
<EFBFBD><EFBFBD>ť<EFBFBD>ر<EFBFBD> = StockDispBuffer( x+40, y + 7, DISP_PRIO_IME3, 55252, 2 );
if( mouse.onceState & MOUSE_LEFT_CRICK ){
if(!<EFBFBD>ƺ<EFBFBD>.ȷ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʾ){
if(<EFBFBD><EFBFBD>ť<EFBFBD><EFBFBD> == HitDispNo){
if(<EFBFBD>ƺ<EFBFBD>.<EFBFBD><EFBFBD>ǰҳ<EFBFBD><EFBFBD>){
<EFBFBD>ƺ<EFBFBD>.<EFBFBD><EFBFBD>ǰҳ<EFBFBD><EFBFBD>--;
<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ƺ<EFBFBD>չʾ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>();
}
}
if(<EFBFBD><EFBFBD>ť<EFBFBD><EFBFBD> == HitDispNo){
if(<EFBFBD>ƺ<EFBFBD>.<EFBFBD><EFBFBD>ǰҳ<EFBFBD><EFBFBD>!=19 && <EFBFBD>ƺ<EFBFBD>.ͼ<EFBFBD><EFBFBD>[(<EFBFBD>ƺ<EFBFBD>.<EFBFBD><EFBFBD>ǰҳ<EFBFBD><EFBFBD>+1)*5]){
<EFBFBD>ƺ<EFBFBD>.<EFBFBD><EFBFBD>ǰҳ<EFBFBD><EFBFBD>++;
<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ƺ<EFBFBD>չʾ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>();
}
}
if(<EFBFBD><EFBFBD>ť<EFBFBD>ر<EFBFBD> == HitDispNo){
DeathAction(pct);
<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ƺ<EFBFBD>չʾ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>();
<EFBFBD>ƺ<EFBFBD>.<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʾ=FALSE;
<EFBFBD>ƺ<EFBFBD>.ȷ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʾ=FALSE;
return TRUE;
}
}
}
int i=0;
int <EFBFBD>ƺ<EFBFBD>ͼ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>;
for(;i<5;i++){
<EFBFBD>ƺ<EFBFBD>ͼ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> = <EFBFBD>ƺ<EFBFBD>.<EFBFBD><EFBFBD>ǰҳ<EFBFBD><EFBFBD>*5+i;
if(<EFBFBD>ƺ<EFBFBD>.ͼ<EFBFBD><EFBFBD>[<EFBFBD>ƺ<EFBFBD>ͼ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>]){
if(!<EFBFBD>ƺ<EFBFBD>.<EFBFBD>ƺŽ[i]){
if(<EFBFBD>ƺ<EFBFBD>.ͼ<EFBFBD><EFBFBD>[<EFBFBD>ƺ<EFBFBD>ͼ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>] < 100000){
<EFBFBD>ƺ<EFBFBD>.<EFBFBD>ƺŽ[i] = 0;
StockDispBuffer(0x16D+20,0x35+i*0x20,109,<EFBFBD>ƺ<EFBFBD>.ͼ<EFBFBD><EFBFBD>[<EFBFBD>ƺ<EFBFBD>ͼ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>],0);
}else{
<EFBFBD>ƺ<EFBFBD>.<EFBFBD>ƺŽ[i] = MakeAnimDisp(0x16D+20,0x35+i*0x20,<EFBFBD>ƺ<EFBFBD>.ͼ<EFBFBD><EFBFBD>[<EFBFBD>ƺ<EFBFBD>ͼ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>],0);
}
}else if(<EFBFBD>ƺ<EFBFBD>.<EFBFBD><EFBFBD>ǰ<EFBFBD>ƺŽ==0) StockDispBuffer(0x16D,0x35+i*0x20,109,<EFBFBD>ƺ<EFBFBD>.ͼ<EFBFBD><EFBFBD>[<EFBFBD>ƺ<EFBFBD>ͼ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>],0);
char <EFBFBD>ƺ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>[128];
sprintf_s(<EFBFBD>ƺ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,"%03d",<EFBFBD>ƺ<EFBFBD>ͼ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>+1);
StockFontBufferExt(0x130,0x2D+i*0x20,1,FONT_PAL_GREEN,<EFBFBD>ƺ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,0,16);
if(!<EFBFBD>ƺ<EFBFBD>.ȷ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʾ){
if(MakeHitBox(0x124,0x26+i*0x20,0x1B8,0x44+i*0x20,0x6D)==1){
StockFontBuffer(0x123,0xD1,2,0,<EFBFBD>ƺ<EFBFBD>.<EFBFBD><EFBFBD><EFBFBD><EFBFBD>[<EFBFBD>ƺ<EFBFBD>ͼ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>],0);
if(mouse.onceState & MOUSE_LEFT_CRICK>0){
<EFBFBD>ƺ<EFBFBD>.ȷ<EFBFBD><EFBFBD>ͼ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>=<EFBFBD>ƺ<EFBFBD>.<EFBFBD>ƺ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>[ <EFBFBD>ƺ<EFBFBD>ͼ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>];
<EFBFBD>ƺ<EFBFBD>.ȷ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʾ=TRUE;
}
}
}
}else break;
}
if(<EFBFBD>ƺ<EFBFBD>.ȷ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʾ){
StockFontBuffer(0x123,0xD1,2,0,<EFBFBD>ƺ<EFBFBD>.<EFBFBD><EFBFBD><EFBFBD><EFBFBD>[<EFBFBD>ƺ<EFBFBD>.ȷ<EFBFBD><EFBFBD>ͼ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>],0);
StockFontBuffer(0x130,0x118,2,0,"ȷ<EFBFBD><EFBFBD>ʹ<EFBFBD>øóƺ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>",0);
StockDispBuffer(0x16D,0x130,0x6C,55253,1);//ȷ<><C8B7><EFBFBD><EFBFBD><EFBFBD>ڵ<EFBFBD>ͼ
<EFBFBD><EFBFBD>ťID = StockDispBuffer(0x194,0x148,109,55252,2);//<2F>ر<EFBFBD>
if(mouse.onceState & MOUSE_LEFT_CRICK>0){
if(<EFBFBD><EFBFBD>ťID == HitDispNo){
<EFBFBD>ƺ<EFBFBD>.ȷ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʾ=FALSE;
<EFBFBD>ƺ<EFBFBD>.ȷ<EFBFBD><EFBFBD>ͼ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>=0;
}
}
<EFBFBD><EFBFBD>ťID = StockDispBuffer(0x148,0x148,109,55254,2);//ȷ<><C8B7>
if(mouse.onceState & MOUSE_LEFT_CRICK>0){
if(<EFBFBD><EFBFBD>ťID == HitDispNo){
int checksum=0;
char buf[1024*4];
memset(buf,0,1024*4);
checksum += util_mkint(buf, <EFBFBD>ƺ<EFBFBD>.ȷ<EFBFBD><EFBFBD>ͼ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>);
util_mkint(buf, checksum);
util_SendMesg(sockfd, LSSPROTO_CHARTITLE_SEND, buf);
<EFBFBD>ƺ<EFBFBD>.ȷ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʾ=FALSE;
<EFBFBD>ƺ<EFBFBD>.ȷ<EFBFBD><EFBFBD>ͼ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>=0;
}
}
}
return FALSE;
}
void <EFBFBD><EFBFBD><EFBFBD>ڽ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(ACTION* ID)//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD>
{
<EFBFBD>ƺ<EFBFBD>.<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʾ=FALSE;
<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ƺ<EFBFBD>չʾ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>();
if(<EFBFBD>ƺ<EFBFBD>.<EFBFBD><EFBFBD>ǰ<EFBFBD>ƺŽ) DeathAction(<EFBFBD>ƺ<EFBFBD>.<EFBFBD><EFBFBD>ǰ<EFBFBD>ƺŽ);
<EFBFBD>ƺ<EFBFBD>.<EFBFBD><EFBFBD>ǰ<EFBFBD>ƺŽ=0;
DeathAction(ID);
}
void <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ƺ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݸ<EFBFBD><EFBFBD><EFBFBD>(char *<EFBFBD><EFBFBD><EFBFBD><EFBFBD>)
{
char <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>[126],ͼ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>[1024],ͼ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>[1024],<EFBFBD><EFBFBD><EFBFBD>ݽ<EFBFBD><EFBFBD><EFBFBD>[4000],<EFBFBD><EFBFBD>ʱ[126];
memset(<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,0,126);
memset(ͼ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,0,1024);
memset(ͼ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,0,1024);
memset(<EFBFBD><EFBFBD><EFBFBD>ݽ<EFBFBD><EFBFBD><EFBFBD>,0,4000);
getStringFromIndexWithDelim_body((char *) <EFBFBD><EFBFBD><EFBFBD><EFBFBD>,(char *)"#@",1,<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,126);
getStringFromIndexWithDelim_body((char *) <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,(char *)"|",1,<EFBFBD><EFBFBD>ʱ,126);
int ֵ = atoi(<EFBFBD><EFBFBD>ʱ);
if(ֵ) <EFBFBD>ƺ<EFBFBD>.<EFBFBD><EFBFBD>ǰ<EFBFBD>ƺ<EFBFBD>ͼ<EFBFBD><EFBFBD>=ֵ;
getStringFromIndexWithDelim_body((char *) <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,(char *)"|",2,<EFBFBD><EFBFBD>ʱ,126);
int <EFBFBD><EFBFBD><EFBFBD><EFBFBD> = atoi(<EFBFBD><EFBFBD>ʱ);
if(<EFBFBD><EFBFBD><EFBFBD><EFBFBD>!=0){
memset(&<EFBFBD>ƺ<EFBFBD>.ͼ<EFBFBD><EFBFBD>,0,sizeof(int)*100);
memset(&<EFBFBD>ƺ<EFBFBD>.<EFBFBD>ƺ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,0,sizeof(int)*100);
memset(&<EFBFBD>ƺ<EFBFBD>.<EFBFBD><EFBFBD><EFBFBD><EFBFBD>,0,32*100);
getStringFromIndexWithDelim_body((char *) <EFBFBD><EFBFBD><EFBFBD><EFBFBD>,(char *)"#@",2,ͼ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,1024);
getStringFromIndexWithDelim_body((char *) <EFBFBD><EFBFBD><EFBFBD><EFBFBD>,(char *)"#@",3,<EFBFBD><EFBFBD><EFBFBD>ݽ<EFBFBD><EFBFBD><EFBFBD>,4000);
getStringFromIndexWithDelim_body((char *) <EFBFBD><EFBFBD><EFBFBD><EFBFBD>,(char *)"#@",4,ͼ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,1024);
int i=0;
for(i;i<<EFBFBD><EFBFBD><EFBFBD><EFBFBD>;i++){
getStringFromIndexWithDelim_body((char *)ͼ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,(char *)"|",i+1,<EFBFBD><EFBFBD>ʱ,126);
<EFBFBD>ƺ<EFBFBD>.ͼ<EFBFBD><EFBFBD>[i]=atoi(<EFBFBD><EFBFBD>ʱ);
getStringFromIndexWithDelim_body((char *)ͼ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,(char *)"|",i+1,<EFBFBD><EFBFBD>ʱ,126);
<EFBFBD>ƺ<EFBFBD>.<EFBFBD>ƺ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>[i]=atoi(<EFBFBD><EFBFBD>ʱ);
getStringFromIndexWithDelim_body((char *)<EFBFBD><EFBFBD><EFBFBD>ݽ<EFBFBD><EFBFBD><EFBFBD>,(char *)"|",i+1,<EFBFBD><EFBFBD>ʱ,126);
sprintf_s(<EFBFBD>ƺ<EFBFBD>.<EFBFBD><EFBFBD><EFBFBD><EFBFBD>[i],32,"%s",<EFBFBD><EFBFBD>ʱ);
}
}
}
void <EFBFBD><EFBFBD>ʼ<EFBFBD><EFBFBD><EFBFBD>ƺŽ()
{
memset(&<EFBFBD>ƺ<EFBFBD>,0,sizeof(<EFBFBD>ƺ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݽ));
}
#endif