当前位置: 首页 > news >正文

植物明星大乱斗1


能帮到你的话,就给个赞吧 😘


文章目录

  • scene.h
  • menuScene.h
  • gameScene.h
  • main
  • scene.cpp
  • menuScene.cpp
  • gameScene.cpp

scene.h

#pragma once
#include <graphics.h>/*
场景菜单角色选择游戏
*/
class Scene {
public:virtual ~Scene() = 0;
public:virtual void onEnter() = 0;							//进入virtual void onInput(const ExMessage& msg) = 0;		//输入virtual void onUpdate() = 0;						//更新virtual void onDraw() = 0;							//渲染virtual void onExit() = 0;							//退出
};

menuScene.h

#pragma once
#include "scene.h"class MenuScene :public Scene {public:virtual void onEnter();							//进入virtual void onInput(const ExMessage& msg);		//输入virtual void onUpdate();						//更新virtual void onDraw();							//渲染virtual void onExit();							//退出
};

gameScene.h

#pragma once
#include "scene.h"class gameScene :public Scene {public:virtual void onEnter();							//进入virtual void onInput(const ExMessage& msg);		//输入virtual void onUpdate();						//更新virtual void onDraw();							//渲染virtual void onExit();							//退出
};

main

#include <Windows.h>	//windows要放在graphic之前
#include <graphics.h>
#include "menuScene.h"int main() {ExMessage msg;const int FPS = 1000 / 1000;auto menuScene = new MenuScene;initgraph(1280, 720, EW_SHOWCONSOLE);BeginBatchDraw();menuScene->onEnter();while (1) {	auto startTime = GetTickCount64();//读消息peekmessage(&msg);//处理消息menuScene->onInput(msg);//更新数据menuScene->onUpdate();//渲染cleardevice();menuScene->onDraw();FlushBatchDraw();//hertzauto excutionTime = GetTickCount64() - startTime;if (excutionTime < FPS)Sleep(FPS - excutionTime);}EndBatchDraw();delete menuScene;
}

scene.cpp

#include "scene.h"Scene::~Scene(){
}

menuScene.cpp

#include "menuScene.h"
#include <iostream>void MenuScene::onEnter(){std::cout << "菜单场景进入" << std::endl;
}void MenuScene::onInput(const ExMessage& msg){
}void MenuScene::onUpdate(){std::cout << "菜单场景正在运行..." << std::endl;
}void MenuScene::onDraw(){outtextxy(10, 10, _T("菜单渲染内容"));
}void MenuScene::onExit(){std::cout << "菜单场景退出" << std::endl;
}

gameScene.cpp

#include "gameScene.h"
#include <iostream>void gameScene::onEnter(){std::cout << "游戏场景进入" << std::endl;
}void gameScene::onInput(const ExMessage& msg){
}void gameScene::onUpdate(){std::cout << "游戏场景正在运行" << std::endl;
}void gameScene::onDraw(){outtextxy(10, 10, _T("游戏绘制内容"));
}void gameScene::onExit(){std::cout << "游戏场景退出" << std::endl;
}
http://www.lryc.cn/news/481458.html

相关文章:

  • 信息安全工程师(84)UNIX/Linux操作系统安全分析与防护
  • 全面解析 Python typing模块与静态类型注解:从基础到高级
  • Jekins篇(搭建/安装/配置)
  • 【工具变量】排污权交易政策试点DID(2000-2023)
  • Proteus中数码管动态扫描显示不全(已解决)
  • 证件照尺寸168宽240高,如何手机自拍更换蓝底
  • 力扣.167 两数之和 II two-sum-ii
  • ipconfig
  • Qt_day3_信号槽
  • 求从2开始的第n个素数
  • 【Android】View—基础知识,滑动,弹性滑动
  • MYSQL中的两种转义操作
  • 力扣题目解析--删除链表的倒数第n个节点
  • Knowledge Graph-Enhanced Large Language Models via Path Selection
  • Android 项目模型配置管理
  • 「QT」几何数据类 之 QSizeF 浮点型尺寸类
  • Essential Cell Biology--Fifth Edition--Chapter one(2)
  • 大语言模型LLMs在医学领域的最新进展总结
  • 云防护单节点2T抗攻击能力意味着什么?
  • IDEA在编译时: java: 找不到符号符号: 变量 log
  • HTML 基础架构:理解网页的骨架
  • FPGA学习笔记#5 Vitis HLS For循环的优化(1)
  • web实操4——servlet体系结构
  • Linux开发讲课48--- Linux 文件系统概览
  • Node.js 模块详解
  • 大厂面试真题-说说tomcat的优缺点
  • Linux系统编译boot后发现编译时间与Windows系统不一致的解决方案
  • WPS Office手机去广高级版
  • Python爬虫基础-正则表达式!
  • Python处理PDF组件使用及注意事项