上班划水,给男朋友做个数字炸弹游戏

简介: 用unity给男朋友做个游戏

上班划水,给男朋友做个数字炸弹游戏
上班划水的时候无意中看到了这篇文章:上班划水,给女朋友做个猜数字游戏。
作为一个有男朋友的女程序员,那我也不能落下,赶紧给自己的男朋友安排。

本游戏纯手工unity+C#制作,素材来源于情侣间的生活照。

游戏主界面

在这里插入图片描述

既然是给男朋友做的,那男朋友的排面肯定不能小,上美照。大大的美照布满了背景,每一个像素都透漏出这个男人的帅气
游戏主界面主要包括:目标值的范围区间提示;当前操作后的提示;用户输入框以及确定按钮。输入框有输入提示文本,主要是为了夸夸男朋友的英俊美貌。

开始界面

在这里插入图片描述

主界面和游戏界面差不多:展示区间范围,输入框,确认按钮,进度条。开始游戏后,男朋友需要输入一个爱我的数字,来表达对我的爱。

游戏界面

由于游戏背景太过帅气,下面我就先将背景隐藏了,留给自己偷偷看。
在这里插入图片描述

输入数字后点击确认按钮会提示当前猜想后,目标值的范围,通过输入确认来缩小范围,从而得到目标值。下面加个进度条进度条更友好的展示了距离目标的差距。
由于是数字游戏,所以我们必须得对创建的输入框InputField限制一下,只能输入整数
在这里插入图片描述

胜利界面

在这里插入图片描述

当我那帅气的男朋友终于猜中了的时候,屏幕上会有一个提示,这里当然是夸他聪明勇敢有力气了。

打包

先偷偷给男朋友发个消息,别人女朋友有的,我的男人也必须有,哈哈哈。
在这里插入图片描述

游戏完成了,接下来打包发给男朋友吧。
选一张优质照片当游戏icon
在这里插入图片描述
好了,打包完成,发给男朋友了,男朋友很开心~

代码展示

using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.UI;

public class GuessNumber : MonoBehaviour
{
    // Start is called before the first frame update
    private InputField inputTxt;
    private Text ruleTxt;
    private Text maxTxt;
    private Text minTxt;
    private Text desTxt;
    private Button sureBtn;
    private int targetNum;
    private Slider slider;
    void Start()
    {
        inputTxt = GameObject.Find("InputField").GetComponent<InputField>();
        ruleTxt = GameObject.Find("ruleTxt").GetComponent<Text>();
        maxTxt = GameObject.Find("min").GetComponent<Text>();
        minTxt = GameObject.Find("max").GetComponent<Text>();
        desTxt = GameObject.Find("des").GetComponent<Text>();
        sureBtn = GameObject.Find("sureBtn").GetComponent<Button>();
        sureBtn.onClick.AddListener (ClickSureBtn);
        slider = GameObject.Find("Slider").GetComponent<Slider>();
        // slider.onValueChanged.AddListener((float value)=>Change(value));
        InitData();
    }

    // Update is called once per frame
    void Update()
    {
        
    }

    // private void Change(float value)
    // {
    //     Debug.Log(value+"       lx");
    // }

    private void InitData()
    {    
        targetNum = Random.Range(1,101); //1-100随机
        Debug.Log(targetNum);
        desTxt.text = "";
        minTxt.text = "当前区间最小值:"+1;
        maxTxt.text = "当前区间最大值:"+100;
        inputTxt.text = "";
        slider.value = 0;
        CancelInvoke();//用于结束当前所有的Invoke委托
    }

    private void ClickSureBtn()
    {
        if (inputTxt.text == "")
        {
            desTxt.text = "你还没输入你的答案哦~";
            return;
        }
        else
        {
            Debug.Log(targetNum + "     targetNum");
            int num = int.Parse(inputTxt.text);
            if (num == targetNum)
            {
                desTxt.text = "小帅哥,恭喜你猜中,你怎么这么棒,再来一局吧";
                maxTxt.text =  "当前区间最大值:"+num;
                minTxt.text =  "当前区间最小值:"+num;
                Invoke("InitData", 2);
            }
            else if(num < targetNum)
            {
                desTxt.text = "值有点小哦,再加大一点试试!";
                minTxt.text =  "当前区间最小值:"+num;
            }
            else if(num > targetNum)
            {
                desTxt.text = "值太大了哦,换小一点的试试呢!";
                maxTxt.text =  "当前区间最大值:"+num;
            }
            string max = System.Text.RegularExpressions.Regex.Replace(maxTxt.text, @"[^0-9]+", "");
            string min = System.Text.RegularExpressions.Regex.Replace(minTxt.text, @"[^0-9]+", "");
            int a = int.Parse(max);
            int b = int.Parse(min);
            slider.value = 1-(float)(a-b)/(100-1);
        }
    }
}
相关文章
|
4月前
|
存储
leetcode-289:生命游戏
leetcode-289:生命游戏
25 0
|
5月前
|
算法 开发者
玩家在游戏中抽奖抽的停不下来,是因为这个?
玩家在游戏中抽奖抽的停不下来,是因为这个?
35 1
|
9月前
|
数据格式
教你一招,瞬间制作无数个座位牌!
先作好心理准备,真的很简单,不要有心理负担,请跟着我的步骤动手操作起来。
132 0
|
10月前
|
网络架构 Python
“罚点球”小游戏
用 score_you 表示你的得分,score_com 表示电脑得分。开始都为0,每进一球就加1。
|
12月前
在游戏中实现一场下雨效果
嗨!大家好,我是小蚂蚁。 不知道你喜不喜欢下雨天,我还是蛮喜欢的,尤其是在无所事事或者昏昏欲睡的时候,下雨天和午睡非常的搭。昏暗的天空,噼里啪啦的雨声,加上一张舒适的床,可以睡上一整个下午。 下雨天除了适合睡觉外,还有一种特别的作用,那就是让人安静和放松。可能是因为白噪声的缘故,安静的倾听下雨的声音能够让人戒骄戒躁,恢复内心的平静。
70 0
|
12月前
|
开发者
做的游戏没人玩,还要不要继续做下去了
初入一个新的领域,想着自己一下子就能把事情做得很好,这是一种贪婪的妄念。这怎么可能呢?即使是天才,也需要天赋加上日积月累的练习,最终才能够把一件事情做得很好,达到一定的高度。而你竟然认为自己做的第一款游戏就能够大受欢迎,就能做得很好。这样想是不是有点儿不切实际? 第一次写字,第一次画画,第一次骑自行车,第一次游泳……总会是笨拙不堪的,第一次做的游戏同样也是这样,所以,这个问题也就变成了一个很普适的问题。
72 0
|
存储
妈,旧电脑连加法都算错了,我要换新的
妈,旧电脑连加法都算错了,我要换新的
|
Java
Java锤子剪刀布大家应该都会玩“锤子剪刀布”的游戏: 现给出两人的交锋记录,请统计双方的胜、平、负次数,并且给出双方分别出什么手势的胜算最大。
Java锤子剪刀布大家应该都会玩“锤子剪刀布”的游戏: 现给出两人的交锋记录,请统计双方的胜、平、负次数,并且给出双方分别出什么手势的胜算最大。
145 0
|
消息中间件 存储 canal
赢了面子,输了里子,缓存就是个面子
使用缓存来加速应用程序的访问速度,是几乎所有高性能系统都会采用的方法。 但缓存真的那么好吗?架构师在构建高性能系统时,是不是必须增加缓存组件?缓存是不是多多益善? 《一代宗师》里本山大叔说过这样的一段话: “一门里,有人当面子,就得有人当里子。面子不能沾一点儿灰尘。流了血,里子得收着,收不住,漏到了面子上,就是毁派灭门的大事。”
238 0
赢了面子,输了里子,缓存就是个面子
想过七夕?->女朋友陪你玩游戏(C)(上)
三子棋 七夕到了,没有女朋友怎么办?没事~ 写一个小游戏,让女朋友陪你玩三子棋~
想过七夕?->女朋友陪你玩游戏(C)(上)