⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 effect.cpp

📁 网络游戏龙族 完整的登陆器 C++ 源代码
💻 CPP
📖 第 1 页 / 共 5 页
字号:
#include "stdafx.h"

#include <windows.h>
#include <stdio.h>
#include <io.h>
#include <math.h>
#include <algorithm>

#include "dragon.h"
#include "hong_sprite.h"
#include "char.h"
#include "Map.h"
#include "item.h"
#include "directsound.h"
#include "Hong_Sub.h"
#include "gameProc.h"
#include "CharDataTable.h"
#include "effect.h"
#include "Hong_Light.h"
#include "Convert565to555.h"
#include "Hangul.h"
#include "Menu.h"
#include "network.h"
#include "Tool.h"
#include "itemtable.h"
#include "Npc_Pattern.h"
#include "SmallMenu.h"
#include "StrikeSys.h"
#include "MagicSys.h"
#include "CombatSys.h"
#include "NumberAniMgr.h"
#include "MergeData.h"	// 030821 kyo

CMergeData g_MergeData;	// 030821 kyo

using namespace battle;

#define	TILE_SIZE						32
#define M_PI							3.141592653589
#define LIGHT_TERMINATE					2					//攫力何磐 堡盔 Out 矫懦鳖?(醚橇饭烙狼 1/2)
#define FIRE_DELAY						800					//惯荤瘤楷矫埃 800剐府檬
#define FIRE_DELAY2						8					//惯荤瘤楷矫埃 8檬  // 010204 YGI
#define ARROW_SPEED						32

#define SN_CLOCKBELL					66
//RectImageOn->付过 劝己拳 钎矫 傈开函荐
TFileMgr<CEffectTbl, MAX_EFFECT_COUNT> g_lpET;
TFileMgr<CEffectListTbl, MAX_EFFECT_COUNT> EffList; // CSD-030123

LPCHARACTER		attacked_Char=NULL;
EFFSPRITE		Effspr[MAX_EFFECT_COUNT];
bool			EffsprLoaded[ MAX_EFFECT_COUNT];
int				effSpr_Count[MAX_EFFECT_COUNT];				//泅犁 焊咯瘤绊 乐绰 悼老茄 胶橇扼捞飘狼 肮荐
DWORD			g_LoadSpriteTime[MAX_EFFECT_COUNT];
TFileMgr<CMagicTbl, MAX_MAGIC> g_lpMT;
DWORD			g_FireTime;
MAGICLIST*	g_lpML = NULL;

TFileMgr<CEffectTbl2, MAX_EFFECT_COUNT> g_lpET2;		//020808 YGI 

extern void SaveEffectAnimationAll( char *);
extern bool LoadEffectAnimationAll();

extern int g_CurrCharStatus;
extern void DoLButtonDown();

extern CHARACTERLIST		g_CharacterList;
extern LPITEMGROUND ReturnMagicCheckedItem( bool range_Check, MAGICLIST* lpML, int x, int y, int fire_Height, int xl, int yl );

void CollisionEffect_Keeping(USEEFFECTLIST* lpEL, MAGICLIST*	lpML, const int nRan); // 030519 kyo
bool SaveEffectSpriteAll(); // 030821 kyo 


////////////////////// 0811 YJS ////////////////////
extern void Fight_Stone_End(void);

HRESULT	out_Result;				//胶橇扼捞飘 免仿 搬苞 

//						Down / LeftDown / Left / LeftUp /  Up   / RightUp / Right / RightDown 
int point_Modify[8][2]={{0,32},{-32,26},{-42,-6},{-32,-32},{0,-48},{32,-32},{42,-6},{32,26}};	//牢拱狼 8规氢俊 措茄 荐沥谅钎
//int point_Modify[8][2]={{0,24},{-36,0},{-52,-28},{36,-58},{0,-70},{36,-58},{52,-28},{36,0}};	//牢拱狼 8规氢俊 措茄 荐沥谅钎
int lightning_Point[20][2]={{0,1},{-1,1},{-1,0},{-1,-1},{0,-1},{1,-1},{1,0},{1,1},{0,2},{-1,2},{-2,1},{-2,0},{-2,-1},{-1,-2},{0,-2},{1,-2},{2,-1},{2,0},{2,1},{1,2}};	//瘤开 涵遏 免仿阑 困茄 抛捞喉
int fish_Point_Pattern1[14][2]={{0,-1},{-1,-2},{-2,-3},{-3,-5},{-3,-8},{-3,-11},{-4,-12},{-6,-13,},{-8,-11},{-9,-7},{-9,-4},{-10,1},{-10,0}};
int	fish_Point_Pattern2[14][2]={{0,-1},{1,-2},{2,-3},{3,-5},{3,-8},{3,-11},{4,-12},{6,-13,},{8,-11},{9,-7},{9,-4},{10,1},{10,0}};

bool array_Check[20]={0,};

int g_SkillNum=0;

static short FreeEffectSpriteFlagCount;						//捞棋飘 胶橇扼捞飘甫 Free窍扁 困茄 counter(朝妨具 瞪 胶橇扼捞飘 醚肮荐)
static short FreeEffectSpriteFlag[ MAX_EFFECT_COUNT*2 ];	//朝妨具瞪 胶橇扼捞飘狼 角力 锅龋甫 扁撅窍绊 乐绰 函荐(趣矫 悼矫俊 500捞惑阑 橇府秦具窍绰 版快啊 积变促搁? -> 弊贰辑 X2甫 沁瘤氛)
int g_Condition_Table[8][8];

////////////////////// SoundUp lkh 眠啊 ////////////////////////
BGESOUND	g_BGES[MAX_MAP_];





////////////////////// 琼荤 俊叼泼阑 矫档茄 
void	SendHexaEditing(short int type, short int id)
{
	
	return ;
	
	t_packet	packet;
	packet.h.header.type = CMD_HEXAEDITING;
	packet.h.header.size = sizeof(t_client_editing_table);
	packet.u.angra.client_editing_table.type	= type;
	packet.u.angra.client_editing_table.id		= id;
	
	QueuePacket( &packet, 1 );
}

//step 1
// 矫傈磊啊 唱牢 版快父 免仿登霸 贸府
////////////////////// SoundUp lkh 眠啊 ////////////////////////
int	ReturnRoonWord(LPCHARACTER caster, int magic_Num)
{
	//	if(caster!=Hero)	return 0;
	
	if( caster->id >= 10000 ) return 0;
	
	int wave = 0;
	
	
	if( caster->spell )
		//if(SCharacterData.nCharacterData[SPELL])	//己流磊牢 版快
	{
		
		if(caster->sex)		//巢磊
		{
			switch(rand()%3)
			{
			case 0:
				wave = 1803;
				break;
			case 1:
				wave = 1810;
				break;
			case 2:
				wave = 1811;
				break;
			}
		}
		else				//咯磊
		{
			switch(rand()%4)
			{
			case 0:
				wave = 1901;
				break;
			case 1:
				wave = 1909;
				break;
			case 2:
				wave = 1910;
				break;
			case 3:
				wave = 1911;
				break;
			}
		}
	}
	else										//付过荤牢 版快
	{
		switch(magic_Num)
		{
		case 1:
			{
				switch(rand()%2)
				{
				case 0:
					wave=1507;
					break;
				case 1:
					wave=1509;
					break;
				}
			}
			break;
		case 2:
			{
				switch(rand()%3)
				{
				case 0:
					wave = 1506;
					break;
				case 1:
					wave = 1512;
					break;
				case 2:
					wave = 1516;
					break;
				}
			}
			break;
		case 3:
			{
				switch(rand()%3)
				{
				case 0:
					wave = 1512;
					break;
				case 1:
					wave = 1516;
					break;
				case 2:
					wave = 1501;
					break;
				}
			}
			break;
		case 4:
			{
				switch(rand()%2)
				{
				case 0:
					wave = 1517;
					break;
				case 1:
					wave = 1501;
					break;
				}
			}
			break;
		case 5:
			{
				switch(rand()%2)
				{
				case 0:
					wave = 1507;
					break;
				case 1:
					wave = 1516;
					break;
				}
			}
			break;
		case 6:
			{
				switch(rand()%3)
				{
				case 0:
					wave = 1507;
					break;
				case 1:
					wave = 1516;
					break;
				case 2:
					wave = 1505;
					break;
				}
			}
			break;
		case 7:
			{
				switch(rand()%2)
				{
				case 0:
					wave = 1509;
					break;
				case 1:
					wave = 1517;
					break;
				}
			}
			break;
		case 10:
			{
				switch(rand()%2)
				{
				case 0:
					wave = 1503;
					break;
				case 1:
					wave = 1502;
					break;
				}
			}
			break;
		case 11:
			{
				switch(rand()%2)
				{
				case 0:
					wave = 1520;
					break;
				case 1:
					wave = 1502;
					break;
				}
			}
			break;
		case 12:
			{
				switch(rand()%2)
				{
				case 0:
					wave = 1517;
					break;
				case 1:
					wave = 1502;
					break;
				}
			}
			break;
		case 13:
			wave = 1503;
			break;
		case 14:
			{
				switch(rand()%2)
				{
				case 0:
					wave = 1503;
					break;
				case 1:
					wave = 1505;
					break;
				}
			}
			break;
		case 15:
			{
				switch(rand()%3)
				{
				case 0:
					wave = 1517;
					break;
				case 1:
					wave = 1519;
					break;
				case 2:
					wave = 1502;
					break;
				}
			}
			break;
		case 16:
			{
				switch(rand()%2)
				{
				case 0:
					wave = 1507;
					break;
				case 1:
					wave = 1502;
					break;
				}
			}
			break;
		case 17:
			wave = 1520;
			break;
		case 18:
			wave = 1502;
			break;
		case 19:
			{
				switch(rand()%2)
				{
				case 0:
					wave = 1503;
					break;
				case 1:
					wave = 1520;
					break;
				}
			}
			break;
		case 20:
			{
				switch(rand()%2)
				{
				case 0:
					wave = 1505;
					break;
				case 1:
					wave = 1520;
					break;
				}
			}
			break;
		case 21:
			{
				switch(rand()%2)
				{
				case 0:
					wave = 1507;
					break;
				case 1:
					wave = 1523;
					break;
				}
			}
			break;
		case 22:
			{
				switch(rand()%2)
				{
				case 0:
					wave = 1512;
					break;
				case 1:
					wave = 1513;
					break;
				}
			}
			break;
		case 23:
			{
				switch(rand()%2)
				{
				case 0:
					wave = 1508;
					break;
				case 1:
					wave = 1522;
					break;
				}
			}
			break;
		case 24:
			{
				switch(rand()%2)
				{
				case 0:
					wave = 1501;
					break;
				case 1:
					wave = 1517;
					break;
				}
			}
			break;
		case 25:
			wave = 1505;
			break;
		case 26:
			{
				switch(rand()%2)
				{
				case 0:
					wave = 1519;
					break;
				case 1:
					wave = 1522;
					break;
				}
			}
			break;
		case 27:
			{
				switch(rand()%2)
				{
				case 0:
					wave = 1512;
					break;
				case 1:
					wave = 1507;
					break;
				}
			}
			break;
		case 28:
			{
				switch(rand()%2)
				{
				case 0:
					wave = 1507;
					break;
				case 1:
					wave = 1506;
					break;
				}
			}
			break;
		case 29:
		case 30:
			{
				switch(rand()%2)
				{
				case 0:
					wave = 1507;
					break;
				case 1:
					wave = 1508;
					break;
				}
			}
			break;
		case 31:
			{
				switch(rand()%2)
				{
				case 0:
					wave = 1507;
					break;
				case 1:
					wave = 1510;
					break;
				}
			}
			break;
		case 32:
			{
				switch(rand()%2)
				{
				case 0:
					wave = 1507;
					break;
				case 1:
					wave = 1508;
					break;
				}
			}
			break;
		case 33:
			{
				switch(rand()%2)
				{
				case 0:
					wave = 1507;
					break;
				case 1:
					wave = 1519;
					break;
				}
			}
			break;
		case 34:
			{
				switch(rand()%2)
				{
				case 0:
					wave = 1507;
					break;
				case 1:
					wave = 1520;
					break;
				}
			}
			break;	
		case 35:
			{
				switch(rand()%3)
				{
				case 0:
					wave = 1507;
					break;
				case 1:

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -