万智牌2014安卓中文版5/2014安卓汉化,谢谢,我知道安卓端貌似没有,但我还是想试一下。

程序写累了,就来玩玩酷跑小游戏吧,嘿嘿。
雨松MOMO送你一首歌曲,嘿嘿。
Unity3D研究院之IOS Android支持中文与本地文件的读取写入(二十七)
Unity3D研究院之IOS Android支持中文与本地文件的读取写入(二十七)
围观100693次
编辑日期: 字体:
前几天有个朋友问我为什么在IOS平台中可以正常的读写文件可是在Android平台中就无法正常的读写。当时因为在上班所以我没时间来帮他解决,晚上回家后我就拿起安卓手机真机调试很快就定位问题所在,原来是他文件的路径写错了。开发中往往一道很难的问题解开的时候发现原来真的非常的简单,哇咔咔。
刚好在MOMO的书中也有涉及到文件的读取与写入,那么本节我将书中的部分内容搬到博客中为大家讲解一下。废话我就不多说了咱直奔主题,创建Text.cs脚本,直接挂在摄像机中。代码中包括:创建文件、读取文件、删除文件。
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110
using UnityEngine;using System.Collections;using System.IO;using System.Collections.Generic;using System;&public class Text : MonoBehaviour { //文本中每行的内容 ArrayList infoall; //皮肤资源,这里用于显示中文 public GUISkin skin; void Start () {&
//删除文件
DeleteFile(Application.persistentDataPath,"FileName.txt");&
//创建文件,共写入3次数据
CreateFile(Application.persistentDataPath,"FileName.txt","宣雨松MOMO");
CreateFile(Application.persistentDataPath,"FileName.txt","宣雨松MOMO");
CreateFile(Application.persistentDataPath ,"FileName.txt","宣雨松MOMO");
//得到文本中每一行的内容
infoall = LoadFile(Application.persistentDataPath,"FileName.txt");& }&&& /**&& * path:文件创建目录&& * name:文件的名称&& *&&info:写入的内容&& */&& void CreateFile(string path,string name,string info)&& {&&
&&//文件流信息&&&&&&StreamWriter sw;&&&&&&FileInfo t = new FileInfo(path+"//"+ name);&&&&&&if(!t.Exists)&&&&&&{&&&&&& //如果此文件不存在则创建&&&&&& sw = t.CreateText();&&&&&&} &&else &&{ && //如果此文件存在则打开
sw = t.AppendText(); &&} &&//以行的形式写入信息&&&&&&sw.WriteLine(info);&&&&&&//关闭流&&&&&&sw.Close();&&&&&&//销毁流&&&&&&sw.Dispose();&& }&&&&&/**&& * path:读取文件的路径&& * name:读取文件的名称&& */&& ArrayList LoadFile(string path,string name)&& {&&
//使用流的形式读取&&&&&&&&StreamReader sr =null;
sr = File.OpenText(path+"//"+ name);
}catch(Exception e)
//路径与名称未找到文件则直接返回空
return null;
string line;
ArrayList arrlist = new ArrayList();&&&&
while ((line = sr.ReadLine()) != null)
//一行一行的读取
//将每一行的内容存入数组链表容器中&&
arrlist.Add(line);
sr.Close();&&
//销毁流&&
sr.Dispose();
//将数组链表容器返回
return arrlist;&& }&& &&&/**&& * path:删除文件的路径&& * name:删除文件的名称&& */&&& void DeleteFile(string path,string name)&& {&&
File.Delete(path+"//"+ name);&&& }&&& void OnGUI()&& {&&
//用新的皮肤资源,显示中文&&
GUI.skin = skin;&&
&&&&//读取文件中的所有内容&&
foreach(string str in infoall)
//绘制在屏幕当中,哇咔咔!
GUILayout.Label(str);
代码中头文件需要注意一下,涉及到IO读取文件。创建文件、删除文件、读取文件的方法我也已经封装好,Start方法中为了避免上次保存文件的残留首先删除原来的文件,然后创建文件FileName.txt ,我们也可修改文件的类型的后缀名。这里我写的是.txt ,为了完整的让中文出现在IOS与Android中所以这里给文件中写的数据是”宣雨松MOMO”,最后在OnGUI中将读取文件的文本信息显示在屏幕中,脚本保存格式为UTF-16。
代码中我们保存文件的路径是Application.persistentDataPath。 如果你写的路径是 Application.dataPath在编辑器中是可以正常读取,但是在IOS与Android中是无法读取的,昨天问我的那个朋友就是因为这里路径写的有问题没能成功的写入文件。 Application.persistentDataPath路径就是将文件保存在手机的沙盒中,如果在编辑器中运行本程序文件将保存在Finder-》 资源库-》Caches-》你的工程-》保存的文件 。本例的路径就是 Finder-&资源库-& Caches -& txt-&FileName.txt。
OK 截至到这里,运行游戏后在编辑器中是可以正常的看到“宣雨松MOMO”出现在Game视图中,但是如果你编译在IOS或者Android上将只显示”MOMO”,原因很简单”宣雨松”三个字无法在Unity默认字体中找到,所以无法显示。而默认字体只有字母和数字、字符。我们为了在移动平台中正常的显示中文,需要自制中文字体包。下面我们开始制作一个简单的字体包,mac机的话大家可以在 资源库 -》 fonts中 找一个.ttf的字体,或者在网络中下载一个.ttf字体。MOMO比较喜欢微软雅黑字体,大家如果也喜欢微软雅黑可以在后面下载这个工程的源码,嘿嘿。如下图所示, Project视图中的”yh”就是MOMO在网络中下载的微软雅黑字体。
FontSize:字体的大小,这里我设置呈50,为了让大家在IPAD中能看的更清楚。
FontColor:字体颜色。
Character:这里选择Custom set,因为这里需要配置我们需要的字体。
CustomChars:这里输入需要制作的字体。Unity默认的字体包含数字符号字母,为了让移动设备支持中文,这里我输入”宣雨松”它将生成一个包含“宣雨松”的材质与贴图,也就是说将我们需要在移动设备中显示的任何字符串在这里配置一下就OK啦。
最后点击又小角的Apply按钮即可完成字体配置。
将字符赋值给创建的皮肤文件然后应用在程序当中即可,如下图所示这是IPAD中截图的效果,大家应该会问上面代码中明明写入的是”宣雨松MOMO”为什么这里没能显示MOMO呢?蛤蛤 原因很简单,上图中在Custom Chars中我们只配置了 “宣雨松” 所以这里就只能显示”宣雨松”无法显示MOMO啦。。大家可根据自己需要显示的字符串添加进去即可。在程序中我们可能会写入很多的中文,但是同样的文字又没必要重复出现,那么如何来制作这个字体包呢?制作的细节大家可以参照威哥的博客:
他已经写得很清楚啦。
最后本文的程序MOMO已经打成包,雨松MOMO希望和大家一起学习,一起进步加油哇咔咔,拉拉~~
下载地址:
补充:假设你的程序中已经预先将2进制文件做好,如下图所示,你需要把二进制文件放在StreamingAssets这个文件夹中,一定要放在这里。
举个例子,放在StreamingAssets中二进制文件打包后,Unity会将这些二进制文件放置在对应平台下的路径下。所以根据不同平台,访问的路径是不一样的。切记,你的二进制文件一定要放在StreamingAssets !!!!!!
12345678910
#if UNITY_EDITOR
string filepath = Application.dataPath +"/StreamingAssets"+"/my.xml";&#elif UNITY_IPHONE &&string filepath = Application.dataPath +"/Raw"+"/my.xml";&#elif UNITY_ANDROID &&string filepath = "jar:file://" + Application.dataPath + "!/assets/"+"/my.xml;&#endif
本文固定链接:
转载请注明:
雨松MOMO提醒您:亲,如果您觉得本文不错,快快将这篇文章分享出去吧 。另外请点击网站顶部彩色广告或者捐赠支持本站发展,谢谢!
作者:雨松MOMO
专注移动互联网,Unity3D游戏开发
如果您愿意花10块钱请我喝一杯咖啡的话,请用手机扫描二维码即可通过支付宝直接向我捐款哦。
您可能还会对这些文章感兴趣!大家都在找:
当前位置:&&&万智牌2015安卓版
电脑玩手游稳定顺畅|极速多开|完美兼容
进入多人游戏模式和随机对手或Game Center的好友作战,测试你的套牌和技能!
万智牌2015安卓版更新说明
畅玩万智牌2015~鹏洛客对决,体验世界最棒的策略性集换式卡牌游戏(TCG)!
在这场全新的冒险中追觅更强敌手。在有史以来最刺激的万智牌游戏中,号令强大的生物并施展毁灭性咒语来击败对手!
学习万智牌:学习如何玩万智牌的最佳途径!详细的游戏导览让你快速开始畅玩世界最佳策略集换式卡牌游戏。
征战时空:穿越多重宇宙各时空,一路征战并磨练技能,挑战强敌。在依尼翠、塞洛斯、拉尼卡和其他更多时空与传奇鹏洛客面对面。
构组套牌:从数百张卡牌中选择并构组你的终极套牌!打开补充包以充实你的牌张收藏,增强威力。
万智牌2015安卓版官方介绍
畅玩万智牌2015~鹏洛客对决,体验世界最棒的策略性集换式游戏(TCG)!
在这场全新的冒险中追觅更强敌手。在有史以来最刺激的万智牌游戏中,号令强大的生物并施展毁灭性咒语来击败对手!
万智牌:学习如何玩万智牌的最佳途径!详细的游戏导览让你快速开始畅玩世界最佳策略集换式卡牌游戏。
征战时空:穿越多重宇宙各时空,一路征战并磨练技能,挑战强敌。在依尼翠、塞洛斯、拉尼卡和其他更多时空与传奇鹏洛客面对面。
构组套牌:从数百张卡牌中选择并构组你的终极套牌!打开补充包以充实你的牌张收藏,增强威力。
万智牌2015安卓版截图
万智牌2015下载地址
安卓手机版
官网版本:1.4.4959APK大小:14.74MB
万智牌2015安卓版评论
又是谷歌play搞好了google play但还是进不去好不容易安装好了google play和其它相关组件,居然一点进去就闪退。差评!!!最开始玩的是电脑版的2014的。就喜欢的不得了,没想到手机也有这个游戏!赞赞赞!!!刚刚接触万智牌。steam上玩了那个免费的版本,这个也不错 就是没中文略坑
发现该APP下载安装使用错误或恶意扣费携带病毒,请
万智牌2015 app相关搜索
版权所有 京ICP备号-5
京公网安备 50 备

我要回帖

更多关于 万智牌2015汉化补丁 的文章

 

随机推荐