Unity3d热更新脚本Scorpio-CSharp介绍
Scorpio-CSharp是为了解决unity游戏各个平台热更新的问题 (亲测支持 PC Web Andoird IOS WP8 以及 Unity5.0.0b1下测试的 WebGL 平台)语法参照js语法(90%)具体使用方法参照ulua
首先奉上一张源码类架构图
hello world示例:
LoadLibary 函数同lua注册一些基础函数
GetStackInfo 如果出现代码错误可以输出当前执行的堆栈信息
脚本里调用c#函数示例:
String = import_type("System.String")
print(String.Format("{0}-{1}-{2}-{3}-{4}",1,2,3,4,5))
import_type可以直接注册一个c#类到脚本里面 类名必须是完整路径
import_type载入的类 必须要 先调用 script.PushAssembly 压入可以加载的程序集
更多示例请下载源码查看
与js语法区别:
Scorpio语句结尾可以不添加[;]
支持不支持
语法注释// /* */
基本语法不支持new关键字
不支持单引号字符串
声明变量var a = 0
声明Arrayvar a =
声明Tablevar a = {
1 = 1,
a = "a",
b : "b",
"c" :"c",
//此类声明函数不支持获取this 相当于静态函数
d : function() {print("d") },
//此种声明函数支持获取this 相当于内部函数
function e() {print("e") }
}不支持 单引号声明变量
a = { 'a' = 100 }
运算关系符同js 支持 + - * / %
支持自运算 += -=
支持 ++ -- 左右侧均支持
不支持位运算
> >= < <= == != && ||
!取反
支持三目运算符 ? :
循环for foreach while switch
支持 continue break
支持 lua单纯for循环
for (i=0,1000,1)
此语法标识 从0循环到1000(包含),每次+1循环数组和table请使用foreach
foreach (pair in pairs(array)) {
print("k = " + pair.key+ " v = " + pair.value)
}
QQ群:245199668
附上源码下载地址 :https://github.com/qingfeng346/Scorpio-CSharp
感谢楼主的无私分享!{:soso__11402694654016840197_7:} 请问为啥不用c#? 谢谢分享啊啊啊 cheer up~ cheer up~ cheer up~
不错 不错 不错 很不错 好帖就是要顶 顶顶多好 难得一见的好帖
页:
[1]