亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? mapeditdoc.cpp

?? 超級瑪麗經典小游戲源碼,供大家參考學習.
?? CPP
字號:
// MapEditDoc.cpp : implementation of the CMapEditDoc class
//

#include "stdafx.h"
#include "MapEdit.h"

#include "MapEditDoc.h"

#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif

/////////////////////////////////////////////////////////////////////////////
// CMapEditDoc

IMPLEMENT_DYNCREATE(CMapEditDoc, CDocument)

BEGIN_MESSAGE_MAP(CMapEditDoc, CDocument)
	//{{AFX_MSG_MAP(CMapEditDoc)
		// NOTE - the ClassWizard will add and remove mapping macros here.
		//    DO NOT EDIT what you see in these blocks of generated code!
	//}}AFX_MSG_MAP
END_MESSAGE_MAP()

/////////////////////////////////////////////////////////////////////////////
// CMapEditDoc construction/destruction

CMapEditDoc::CMapEditDoc()
{
	m_width = 40;
	m_height = 15;
	m_darken = FALSE;
	m_tiles = NULL;
	m_surface = NULL;
}

CMapEditDoc::~CMapEditDoc()
{
	if( m_tiles )
		delete []m_tiles;
}

BOOL CMapEditDoc::OnNewDocument()
{
	if (!CDocument::OnNewDocument())
		return FALSE;

	m_darken = FALSE;

	if( m_tiles )
		delete []m_tiles;
	if( m_surface )
		delete []m_surface;
	
	int size = m_width * m_height;
	m_tiles = new char[size];
	m_surface = new char[size];
	memset( m_tiles, -1, size );
	memset( m_surface, -1, size );

	for( int i = 0; i < 3; i ++ )
		m_ghostlist[i].Destroy();

	return TRUE;
}


void CMapEditDoc::Resize( int width )
{
	char *old;
	int i, j;
	
	// resize tiles array
	old = new char[m_width * m_height];
	memcpy( old, m_tiles, m_width * m_height );
	
	delete []m_tiles;
	m_tiles = new char[width*m_height];

	for( i = 0; i < m_height; i ++ )
		for( j = 0; j < width; j ++ )
		{
			if( j < m_width )
				m_tiles[i*width+j] = old[i*m_width+j];
			else
				m_tiles[i*width+j] = -1;
		}
	delete []old;


	// resize surface array
	old = new char[m_width * m_height];
	memcpy( old, m_surface, m_width * m_height );
	
	delete []m_surface;
	m_surface = new char[width*m_height];

	for( i = 0; i < m_height; i ++ )
		for( j = 0; j < width; j ++ )
		{
			if( j < m_width )
				m_surface[i*width+j] = old[i*m_width+j];
			else
				m_surface[i*width+j] = -1;
		}
	delete []old;

	m_width = width;

	// refresh ghostlist
	for( i = 0; i < 3; i ++ )
		m_ghostlist[i].Refresh( m_width * 32 );

	SetModifiedFlag();
}


/////////////////////////////////////////////////////////////////////////////
// CMapEditDoc serialization

void CMapEditDoc::Serialize(CArchive& ar)
{
	if (ar.IsStoring())
	{
		// TODO: add storing code here
	}
	else
	{
		// TODO: add loading code here
	}
}

/////////////////////////////////////////////////////////////////////////////
// CMapEditDoc diagnostics

#ifdef _DEBUG
void CMapEditDoc::AssertValid() const
{
	CDocument::AssertValid();
}

void CMapEditDoc::Dump(CDumpContext& dc) const
{
	CDocument::Dump(dc);
}
#endif //_DEBUG

/////////////////////////////////////////////////////////////////////////////
// CMapEditDoc commands

BOOL CMapEditDoc::OnSaveDocument(LPCTSTR lpszPathName) 
{
	FILE *fp = fopen( lpszPathName, "wa" );
	if( !fp )
		return FALSE;

	m_darken = m_darken ? 1 : 0;
	fprintf( fp, "%d\n\n", m_darken );

	fprintf( fp, "%d\n", m_width );
	fprintf( fp, "%d\n\n", m_height );

	int k;
	
	// write tile data
	k = 0;
	for( int i = 0; i < m_height; i ++ )
	{
		for( int j = 0; j < m_width; j ++ )
		{
			fprintf( fp, "%-4d", (int)(m_tiles[k++] + 1) );
		}
		fprintf( fp, "\n" );
	}
	fprintf( fp, "\n\n" );
	
	// write surface data
	k = 0;
	for( i = 0; i < m_height; i ++ )
	{
		for( int j = 0; j < m_width; j ++ )
		{
			fprintf( fp, "%-4d", (int)(m_surface[k++] + 1) );
		}
		fprintf( fp, "\n" );
	}
	fprintf( fp, "\n" );


	// write ghosts data
	for( i = 0; i < 3; i ++ )
	{
		m_ghostlist[i].Write( fp );
		fprintf( fp, "\n" );
	}
	
	fclose( fp );
	SetModifiedFlag( FALSE );
	return TRUE;

//	return CDocument::OnSaveDocument(lpszPathName);
}

BOOL CMapEditDoc::OnOpenDocument(LPCTSTR lpszPathName) 
{
//	if (!CDocument::OnOpenDocument(lpszPathName))
//		return FALSE;

	FILE *fp = fopen( lpszPathName, "ra" );
	if( !fp )
		return FALSE;
	
	fscanf( fp, "%d", &m_darken );
	
	fscanf( fp, "%d", &m_width );
	fscanf( fp, "%d", &m_height );
	
	int len = m_width * m_height;
	int i, dummy;
	
	// resize array
	delete []m_tiles;
	delete []m_surface;
	m_tiles = new char[len];
	m_surface = new char[len];

	// read tile data
	for( i = 0; i < len; i ++ )
	{
		fscanf( fp, "%d", &dummy );
		m_tiles[i] = (char)dummy - 1;
	}

	// read surface data
	for( i = 0; i < len; i ++ )
	{
		fscanf( fp, "%d", &dummy );
		m_surface[i] = (char)dummy - 1;
	}

	// read ghost data
	for( i = 0; i < 3; i ++ )
	{
		int len;
		fscanf( fp, "%d", &len );
		m_ghostlist[i].Read( fp, len );
	}

	fclose( fp );
	SetModifiedFlag( FALSE );

	return TRUE;
}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧美日韩亚州综合| 国产成人精品一区二| 欧美日韩视频第一区| 午夜精品一区在线观看| 91精品免费观看| 麻豆精品一区二区三区| 欧美成人a∨高清免费观看| 国产成人av一区二区三区在线观看| 久久久精品日韩欧美| 成人免费电影视频| 亚洲精品欧美在线| 日韩一区二区电影| 高清不卡一区二区在线| 亚洲欧美日韩一区二区三区在线观看| 在线精品亚洲一区二区不卡| 日韩经典一区二区| 欧美激情一区在线观看| 在线一区二区视频| 美女精品一区二区| 国产精品麻豆久久久| 欧美久久一区二区| 国产成人av电影在线| 亚洲制服欧美中文字幕中文字幕| 日韩情涩欧美日韩视频| 成人av电影免费在线播放| 亚洲国产综合在线| 久久网站最新地址| 欧美伊人精品成人久久综合97| 久久成人免费电影| 亚洲美女区一区| 日韩精品一区二区三区视频播放 | 色婷婷久久99综合精品jk白丝| 视频在线观看一区二区三区| 国产三级精品在线| 欧美三级三级三级爽爽爽| 国产成人鲁色资源国产91色综| 亚洲资源在线观看| 国产精品美女久久久久久 | 欧美成人a视频| 91福利精品视频| 高清久久久久久| 人妖欧美一区二区| 亚洲激情图片一区| 国产亚洲婷婷免费| 欧美一区二区视频在线观看2020| www.在线成人| 国产一区二区调教| 天堂影院一区二区| 亚洲精品日韩一| 国产精品美女久久久久高潮| 精品卡一卡二卡三卡四在线| 欧美视频在线播放| 91网站最新网址| 丰满白嫩尤物一区二区| 精品亚洲成a人| 五月婷婷激情综合| 一区二区三区欧美久久| 国产精品免费免费| 欧美激情在线一区二区| 久久色视频免费观看| 日韩一区二区在线免费观看| 欧美日韩国产一区| 91九色最新地址| 成人av电影观看| 国产91综合网| 成人性生交大片免费看中文网站| 裸体歌舞表演一区二区| 亚洲成人激情社区| 亚洲国产成人porn| 亚洲国产一区二区三区青草影视 | 色就色 综合激情| 不卡一区在线观看| 成人av片在线观看| 99re视频这里只有精品| 波多野结衣欧美| 99视频精品免费视频| av亚洲精华国产精华精华 | 色综合一个色综合亚洲| 成人av高清在线| a在线欧美一区| 91在线视频网址| 91黄色激情网站| 在线视频中文字幕一区二区| 欧美做爰猛烈大尺度电影无法无天| 欧洲精品一区二区| 欧美乱妇20p| 欧美一区二区精品在线| 日韩免费观看高清完整版在线观看| 欧美一级高清片在线观看| 欧美电影精品一区二区| 欧美精品一区二区三区一线天视频 | 国产精品天天摸av网| 国产精品美女久久久久久| 亚洲男帅同性gay1069| 亚洲精品国产无套在线观| 亚洲国产人成综合网站| 日本欧美一区二区三区乱码| 精品无码三级在线观看视频| 国产美女视频91| 97成人超碰视| 欧美日韩一区三区| 精品美女在线播放| 国产精品乱码久久久久久| 一区二区三区四区高清精品免费观看| 亚洲成人激情社区| 国产一区二区电影| 色欧美日韩亚洲| 日韩欧美视频在线 | 国产精品成人午夜| 婷婷中文字幕综合| 国产成人精品在线看| 色婷婷久久99综合精品jk白丝| 777午夜精品视频在线播放| 精品国产乱码久久久久久老虎| 国产精品久久久久天堂| 亚洲成年人网站在线观看| 国产中文字幕一区| 色呦呦日韩精品| 久久欧美中文字幕| 一区二区三区 在线观看视频| 久色婷婷小香蕉久久| 91香蕉视频mp4| 精品福利av导航| 亚洲国产日韩在线一区模特| 国产精品一级片| 69久久夜色精品国产69蝌蚪网| 国产日产欧美一区二区视频| 亚洲成在人线免费| 99久久综合精品| 精品国产乱码久久久久久久久 | 亚洲黄色片在线观看| 精品在线观看视频| 欧美在线综合视频| 日本一区二区动态图| 蜜桃av一区二区在线观看| 色综合久久久久久久久久久| 久久亚洲一级片| 天天综合网天天综合色| 91在线免费视频观看| 久久综合成人精品亚洲另类欧美| 亚洲成年人影院| 91国模大尺度私拍在线视频| 日韩理论在线观看| 国内久久精品视频| 69堂精品视频| 午夜精品久久久久久久久久| 色呦呦一区二区三区| 国产精品美女久久久久久久网站| 美女网站色91| 欧美另类z0zxhd电影| 一区二区三区日韩在线观看| 风间由美中文字幕在线看视频国产欧美| 91精品国产免费| 香港成人在线视频| 在线观看视频91| 亚洲乱码国产乱码精品精的特点| 波多野结衣亚洲一区| 国产日产欧美精品一区二区三区| 韩国v欧美v日本v亚洲v| 日韩午夜在线播放| 日韩不卡一区二区| 在线播放国产精品二区一二区四区 | 在线精品视频免费播放| 亚洲精品少妇30p| 色综合激情久久| 亚洲综合久久久久| 色av综合在线| 亚洲国产精品天堂| 欧美日韩国产一区| 日日摸夜夜添夜夜添国产精品| 欧美日韩日日摸| 亚洲成人你懂的| 欧美一卡二卡在线| 久久国产精品色| 亚洲精品一区二区精华| 国产一本一道久久香蕉| 国产欧美日韩综合| www.色综合.com| 亚洲另类春色校园小说| 欧美伊人久久久久久久久影院 | 久久久午夜精品理论片中文字幕| 激情另类小说区图片区视频区| 精品99999| 岛国一区二区在线观看| 国产欧美一区二区精品忘忧草| 成人av网站在线观看| 亚洲综合在线免费观看| 欧美日韩成人一区| 国产制服丝袜一区| 国产精品久久久久久久久晋中| 色8久久人人97超碰香蕉987| 亚洲成a人v欧美综合天堂下载 | 午夜电影一区二区三区| 欧美一级高清片| 粉嫩一区二区三区在线看| 一区二区三区在线播放| 91精品国产综合久久香蕉麻豆| 韩国成人福利片在线播放| 亚洲欧美日韩国产综合在线| 欧美一级夜夜爽|