
lua
oncruise
这个作者很懒,什么都没留下…
展开
-
在lua中加载游戏资源时改变资源类型
用lua对unity的UI进行更新, 有一个需求是点击一下UI图片, 就改变该图片的sprite.在用lua写的时候, 如果直接用Resource.Load方法的返回值对image的sprite进行复制的话会报错, 因为Resource.Load方法的返回值类型是Terxture2D类型, 无法直接对sprite类型进行赋值.在C#中可以使用Resource.Load<Sprite&...原创 2019-07-03 09:21:42 · 474 阅读 · 0 评论 -
lua调用Unity中的Dropdown.options.Clear()方法(lua调用Unity组件对象的属性下的方法)
需要在lua中调用Dropdown.options.Clear()方法. 在C#中这样写即可:public Dropdown drpd; void Start(){ drpd.options.Clear(); Debug.Log(drpd);}由于Clear()方法是Dropdown对象的options属性下的一个方法, 所以在调用的时候不能通过点来调用, ...原创 2019-07-15 13:40:21 · 1318 阅读 · 4 评论 -
lua字符串操作方法之string.gmatch()
for s in string_gmatch(strLua, pattern) do --s为根据pattern匹配到的字符串 --可在此处对匹配到的字符串进行操作 end原创 2019-07-05 17:38:10 · 4326 阅读 · 0 评论 -
lua字符串操作方法之string.gsub()
https://www.jianshu.com/p/f141027e1ca4将字符串的某一个字符替换为另一个字符 local new_str = string.gsub(str,'/','.') --将'/'替换为'.'将匹配到的字符串插入到一个table中string_gsub(str,pattern,function(w) ta...原创 2019-07-05 17:27:17 · 4479 阅读 · 0 评论 -
在lua中加载游戏资源时改变资源类型(二)
之前写过如何在lua中加载游戏资源时改变资源类型,当时的做法是新建了一个C#脚本, 这样做不符合热更新的需求. 其实可以直接在lua中完成在加载游戏资源时对资源类型的改变.gameObject:GetComponent('Image').sprite = CS.UnityEngine.Resources.Load("资源路径", typeof(CS.UnityEngine.Sprite))...原创 2019-07-10 16:55:24 · 406 阅读 · 0 评论 -
lua调用C#协程
Unity的StartCoroutine方法不能在静态方法中调用, 而由于某些原因在lua中需要调用C#的静态方法.解决思路是将C#脚本写成一个单例, 将StartCoroutine方法在非静态方法中调用, 再在静态方法中调用这个非静态方法.public IEnumerator CoroutineName(){ //方法体 }private void _s...原创 2019-07-05 10:46:44 · 933 阅读 · 1 评论 -
lua调用unity中的SetActive方法
local go = CS.UnityEngine.Object.Instantiate(CS.UnityEngine.Resources.Load(path))go.gameObject:SetActive(true)注意是用冒号调用而不是用点调用原创 2019-07-10 09:48:12 · 1781 阅读 · 0 评论 -
lua调用C#静态方法和非静态方法
调用静态方法(用".")local ClassOne = CS.UnityEngine.ClassOneClassOne.FunctionOne()调用非静态方法(用":")local ClassTwo = CS.UnityEngine.ClassTwo()ClassTwo:FunctionTwo()原创 2019-07-04 17:10:14 · 2207 阅读 · 0 评论 -
lua中设置unity游戏物体的position
gameObject.transform.localPosition={x = 0, y = 100, z = 0};不能直接写作 gameObject.transform.localPosition={0, 100, 0};原创 2019-07-09 15:57:15 · 2517 阅读 · 0 评论 -
lua 中的":"(冒号)语法糖
定义一个模块local M = {}function M.MyFunc(self, a) --方法体endreturn M调用模块中的方法, 下面两种调用方式作用是一样的local M = require('M')M.MyFunc(M,a)local M = require('M')M:MyFunc(a)使用冒号调用模块里的方法时会将冒号前的自身作为参...原创 2019-07-09 11:31:30 · 6911 阅读 · 0 评论 -
lua 引入模块
package.path = package.path .. ';D:/UnityProject/kailash/Project/Assets/Resources/uGui/luaModule/?.lua.txt'local channel_scene = require("channel_scene")原创 2019-07-02 17:49:50 · 1760 阅读 · 0 评论 -
lua创建模块
local M = {} M.functionname = function () --方法体endreturn M原创 2019-07-03 08:56:26 · 244 阅读 · 0 评论 -
lua查找并获取子物体组件
gameObject.transform:Find("子物体路径"):GetComponent('组件名称')注意Find()和GetComponent()两个方法是用冒号调用.CS.UnityEngine.GameObject.Find("游戏物体名称")使用此方式查找是用点调用....原创 2019-07-16 13:57:20 · 4485 阅读 · 0 评论