Unity制作游戏中改名系统(第一次改名免费、改名提示、充值获得改名次数等 )
Unity游戏制作中UI界面名字修改
- 游戏名称修改
- 简单粗暴直接上代码
- 关于充值系统的概念
游戏名称修改
现在网络游戏中名字是标新立异、展示自己独一无二的个性的方式之一,名字越来越烧,操作越来越低,也是一种普遍现象;而且游戏机之中都保持着第一次改名免费的原则,以后如果想改名,只能通过游戏中的二游戏道具进行改名;所以这篇文章就是向大家介绍我近期写的一个改名字的代码;
简单粗暴直接上代码
////修改名字界面//第一次改名字public InputField m_changeName;//0为初始名字,其他数字则为已更改过名字public int m_isFirstName = 0;public static string m_changedName = null;public Text m_tips;// 非法字符private bool m_haveillegal;//充值可以改名/public void ChangeName(){if (m_isFirstName == 0){m_changeName.transform.GetComponent<InputField>().onEndEdit.AddListener(EndValue);//文本输入结束时会调用;//有非法字符 可以再次修改名字/没有特殊字符则可以改名成功if (m_haveillegal){m_isFirstName = 0;}else{m_isFirstName = 1;m_name.text = m_changedName;m_tips.text = TIPS.SUCCEFF_TIPS;}//游戏结束后上传信息}else{m_tips.text = TIPS.FAIL_TIPS;}}
//
//这个函数判断输入的字符中含有非法字符(!@#¥%……&*(均符合非法字符)[Obsolete]public void EndValue(string s){if (m_isFirstName == 0){s = m_changeName.transform.FindChild("Text").GetComponent<Text>().text;Regex rex = new Regex(@"^[\u4E00-\u9FA5A-Za-z0-9]+$");var result = rex.Match(s);if (!result.Success){m_tips.text = TIPS.ERROR_STR;m_haveillegal = true;return;}else{m_haveillegal = false;m_changedName = s;}}}
这里我插一句题外话,上端代码中类似TIPS.FAIL_TIPS、TIPS.SUCCEFF_TIPS等的string值为字符常量;我这样写是为了规范、修改时更加便捷和一路了然,大家也可以在本类中这样写。示例如下:
public class TIPS{public static string SUCCEFF_TIPS = "(Tips:Successfully renamed)";public static string FAIL_TIPS = "(Tips:No qualification to change name)";public static string FUNCTION_TIPS = "(Tips:Enter your new name)";public static string INPUTCHNAME = "(Change Your Name)";public static string INPUTNULL = null;public static string ERROR_STR = "(Tips:The nickname contains illegal characters)";}
关于充值系统的概念
目前我才用的是HTTP协议中的post服务器那边的数据,而实现方法就是用post返回的数据进行解析,得到m_isFirstName的值,如m_isFirstName=0;就证明这名玩家有改名的权限,其购买了改名道具;
下期我会把我做的通过Http协议获取账号、密码进行登录,并在游戏中给人物、道具赋值等等的关于网络协议的知识点总结;
Unity制作游戏中改名系统(第一次改名免费、改名提示、充值获得改名次数等 )相关推荐
- Unity制作游戏中的场景
Unity制作游戏中的场景 1.2.3 场景 在Unity中,场景(Scene)就是游戏开发者制作游戏时,所使用的游戏场景.它是一个三维空间,对应的三维坐标轴分别是X轴.Y轴和Z轴本文选自Unity ...
- unity制作游戏开始界面_开始使用Unity Playground制作游戏
unity制作游戏开始界面 We are super excited to announce the official launch of Unity Playground – the first o ...
- Unity实现游戏中坦克运动控制(一)
Unity实现游戏中坦克运动控制(一) 导入模型 控制上下左右移动 导入模型 导入坦克模型资源文件,一般包含fbx格式模型文件和tga格式的贴图文件.一般导入的模型由3dmax制作,与unity中单位 ...
- Andriod小程序——简单制作游戏中控制任务移动的轮盘
Andriod小程序--简单制作游戏中控制人物移动的轮盘 说明 自定义自己的view继承于View类 重写onDraw()方法 当我们看到这个控件的时候那个样子,如图 完善onDraw()方法 重写O ...
- 使用Unity制作游戏AI
本文由独立游戏工作室Synnaxium Studio介绍游戏AI的概念和开发方法.本文中所有内容都是他们在开发<Radiant Blade>游戏的原型阶段所积累的经验. 下面是<Ra ...
- 游戏中掉落系统的设计
我们在游戏中会采用不同的随机方式.而玩家感觉起来像随机的事件其实也不完全是按随机事件来设计的.下面我们来谈谈这些做法. 1.计数随机 在早期游戏中,有些道具的掉落是和怪物被击杀的次数相关的,通常在成千 ...
- [Unity基础]游戏中的数学
一.坐标系 1.世界坐标系:使用左手坐标系,即z轴方向跟人眼向前看的方向一致(右手坐标系z轴方向跟人眼向前看的方向相反) 2.本地坐标系 3.屏幕坐标系:左下为原点,右上为屏幕宽高 4.界面坐标系:左 ...
- 使用Render Texture制作游戏中的摄像头
Render Texture是什么呢? Render Texture是一种你可以在其上绘制,然后像使用其它精灵/纹理一样的纹理.其中,最酷的一件事就是你可以将它作为相机视图的目标--这样相机把它所看到 ...
- Unity - 2D游戏中掉帧严重问题解决
目的:解决unity2D中游戏掉帧严重问题 这个问题的出现一开始我并不知道什么原因,于是在unity-profiler中寻找答案. 一开始我发现这个问题 然后我在网站上搜索"Animator ...
最新文章
- Java处理excel根据某列的值查询,并将结果显示在其他列中
- python27安装教程-Python2和Python3安装教程
- C++ 基本的输入输出
- js中cookie的操作
- Android用户界面程序设计示例
- /etc/sudoers中的含义
- vue数据改变了,视图不更新不刷新问题
- Spring-ConfigurationClass类
- linux系统自动执行任务(转)
- 使用VC++6.0创建.cpp文件工程
- Java练习题_通过2月天数来判断平年闰年
- 阶段性总结(从软件工程到分层架构)
- wegame 取消直播提醒
- 【时光它会替我们记得】- 1024有奖征文
- 转:通信十年:前辈对通信行业的分析与经历
- 搜索和CTR预估入坑指南
- 处理射手网字幕,方便打印
- 辩证唯物论和唯物辩证法区别
- flutter 真机iOS字体偏小
- OpenHarmony之系统功能框架分析