宠物游戏的核心是宠物的本身,即我们需要模拟一个宠物所需要的基本属性,不管是模拟人还是动物。

对于任何一个活生生的人或动物都需要吃,即我们需要一个 Eat 方法来控制饥饿值,而除了饥饿值以外,我们还需要一个 Play 方法来控制体力值,而心情的好坏直接被饥饿值与体力值所影响。

Pet.h

// Pet.h
#ifndef PET_H_
#define PET_H_class Pet
{
private:int Mood;   // 宠物的心情int Power;  // 宠物的体力int Hunger; // 宠物的饥饿程度int GetMood() const; // 获取宠物的心情void PassTime(int time = 1); // 表示时间的流逝
public:Pet(); // 构造函数,初始化~Pet(); // 析构函数,销毁对象时,调用void Menu(); // 宠物菜单void Talk(); // 宠物说话void Eat(int food = 4); // 宠物吃饭void Play(int fun = 4); // 宠物玩耍
};#endif

Bog.cpp

// Bog.cpp
#include <Windows.h>
#include <iostream>
#include "Pet.h"
using namespace std;
const int LMT = 3;Pet::Pet()
{SYSTEMTIME SysTime;GetLocalTime(&SysTime);int index = 0;const char *Now[LMT] ={"Good morning", "Good afternoon", "Good evening"};if (SysTime.wHour > 6 && SysTime.wHour <= 11)index = 0;else if (SysTime.wHour > 11 && SysTime.wHour <= 18)index = 1;elseindex = 2;cout << "Hi, Master ";cout << Now[index] << endl;Hunger = Power = 0;
}Pet::~Pet()
{cout << "Bye, I'll miss you ~" << endl;
}int Pet::GetMood() const
{return (Hunger + Power);
}void Pet::PassTime(int time)
{Hunger += time;Power += time;
}void Pet::Talk()
{Mood = GetMood();cout << Mood << endl;if (Mood > 15){cout << "I am very angry.\n";}else if (Mood > 10){cout << "I feel a sense of loss.\n";}else if (Mood > 5){cout << "I am fine.\n";}else{cout << "I am very happy.\n";}PassTime();
}void Pet::Eat(int food)
{Hunger -= food;if (Hunger < 0){Hunger = 0;}PassTime();
}void Pet::Play(int fun)
{Power -= fun;if (Power < 0){Power = 0;}PassTime();
}void Pet::Menu()
{cout << "Take care of your pet:\n";cout << "1) Talk your pet\n"<< "2) Feed your pet\n"<< "3) Play with your pet\n";cout << "Hi.Want? ";
}

Pet.cpp

// Pet.cpp
#include <iostream>
#include <string>
#include "Pet.h"
using namespace std;int main()
{Pet Bog;string Id;do{Bog.Menu();getline(cin, Id);if (Id == "1"){Bog.Talk();}else if (Id == "2"){Bog.Eat();}else if (Id == "3"){Bog.Play();}elsecout << "You eat the fart.\n";cout << '\n';} while (Id != "Bye");return 0;
}

C++ 宠物游戏雏形相关推荐

  1. html游戏 养狗,养宠物游戏哪个好玩 手机上最火爆的十款养宠物游戏推荐

    养宠物游戏是一款养成类游戏,玩家通过养成自己喜欢的宠物,在游戏中你可以与自己的宠物进行互动,更有超多新的玩法,让你找到更多有趣的游戏放啊是,玩宠物游戏更加的简单,更有超多你喜欢的宠物陪你一起玩,玩家还 ...

  2. M8SDK教程-游戏开发心得(三):DDraw进阶教程-贴图,Alpha和Sprite动画,RPG游戏雏形

    M8SDK教程-游戏开发心得(三):DDraw进阶教程-贴图,Alpha和Sprite动画,RPG游戏雏形 引用: M8 SDK教程- 游戏开发心得(一): 游戏程序框架 http://bbs.mei ...

  3. 360旗下公司推出区块链宠物游戏“恋猫”,要和360区块猫竞争吗

    恋猫是一款基于区块链技术的在线收集养成类电子宠物应用. 恋猫 开发公司泰奇互动是神州泰岳与奇虎360合资联合成立的移动互联网公司(神州"泰"岳+"奇"虎360) ...

  4. 花了一个深夜,才用C语言写了一个2048游戏雏形

    12年我毕业的第二个月工资,我就买了一个IPAD,然后在IPAD上下了一个2048游戏,玩起来非常爽. 然后这几天看到好几个公众号都发了自己写这个游戏的代码,然后我自己也想试试,所以就有了这篇文章,写 ...

  5. pygame实现雷电游戏雏形开发

    本文实例为大家分享了pygame实现雷电游戏开发代码,供大家参考,具体内容如下 源代码: stars.py #-*- coding=utf-8 -*-#!/usr/bin/pythonimport p ...

  6. 宠物游戏代码 java

    用户包(User):(输出界面进行了优化) 主函数( Master.java): 用户注册 /*注册用户*/public void registeredUser(){ System.out.print ...

  7. 养宠物游戏java接口_接口--动物实例

    做一个饲养员给动物喂食物的例子体现JAVA中的面向对象思想,接口(抽象类)的用处 做一个饲养员给动物喂食物的例子体现JAVA中的面向对象思想,接口(抽象类)的用处 package com.softee ...

  8. 用wget下载Github仓库中的脚本等文件

    https://blog.csdn.net/weixin_38233274/article/details/80280222 一.比如说我们在gick这个仓库中下载shadowsocks.sh这个脚本 ...

  9. (NO.00002)iOS游戏精灵战争雏形(一)

    原本想做一个复杂点的平面动作游戏,可以觉得还是有点把握不了.还是先从简单的原型开始吧. 构思中的精灵战争(SpriteWar)是一个类似FC时代的小游戏,可以造兵,可以捕获敌兵.原本还想加上保卫老巢的 ...

最新文章

  1. Python图像处理介绍--彩色图像的直方图处理
  2. bzoj 2653 洛谷 P2839 [国家集训队] middle
  3. mysql mha好吗_MySQL高可用方案MHA的一些总结和思考
  4. 打印机修复工具_Windows10更新后打印机崩溃?速度安装修复补丁
  5. winform 中导入excel时提示“未在本地计算机上注册“microsoft.ACE.oledb.12.0”
  6. php对接海康视频教程_手把手教你php对接海康api
  7. MFC Date Time Picker的使用
  8. git clone 码云仓库项目报错fatal: Authentication failed for ‘https://gitee.com/...‘
  9. 刨根究底字符编码之五——简体汉字编码方案(GB2312、GBK等)以及全角、半角、CJK
  10. 2020 3月 月末总结(一个月的面试收获了什么)
  11. Cross Domain Person Re-Identification With Large Scale Attribute Annotated Datasets参考文献解读
  12. 为什么快手不能左右滑了_快手现在为什么不能滑动播放了
  13. [从头学数学] 第203节 坐标系与参数方程
  14. 拼多多一晚被薅千万,倒赚276亿:一次蓄意营销的阴谋?
  15. 南加利福尼亚大学计算机博士,斑马博士|南加州大学(USC) MSc Electronic Engineering (Computer Network)...
  16. 前端技能树,面试复习第 54 天—— 手写代码:情景题
  17. 2021年甘肃省安全员B证考试报名及甘肃省安全员B证新版试题
  18. 【总结】一些网络流量统计的网站及工具
  19. 现在学3D游戏建模还能找到高薪好工作吗?3d建模基础入门教程
  20. Facebook广告组如何复制到其他广告系列中

热门文章

  1. 美国之行第一天(r12笔记第51天)
  2. this和spuer的区别
  3. 2023最新CISP模拟考试题库及答案(一)
  4. Spring Boot java.sql.SQLSyntaxErrorException: Table ‘mydb.table_name‘ doesn‘t exist
  5. Could not initialize Logback logging from classpath:logback-spring.xml 错误解决
  6. AD20-net antenna:via
  7. 那些名校学霸毕业后都去了哪儿?
  8. 常用电子书文件格式介绍
  9. Arbitrum 的 Nitro 项目 Rollup 细节深入
  10. ViewPager滑动动画