diff --git a/default_env.tres b/default_env.tres deleted file mode 100644 index 20207a4..0000000 --- a/default_env.tres +++ /dev/null @@ -1,7 +0,0 @@ -[gd_resource type="Environment" load_steps=2 format=2] - -[sub_resource type="ProceduralSky" id=1] - -[resource] -background_mode = 2 -background_sky = SubResource( 1 ) diff --git a/gdProtocol/ProtocolManager.gd b/gdProtocol/ProtocolManager.gd deleted file mode 100644 index 0e08f01..0000000 --- a/gdProtocol/ProtocolManager.gd +++ /dev/null @@ -1,33 +0,0 @@ -const ComplexObject = preload("res://gdProtocol/packet/ComplexObject.gd") -const NormalObject = preload("res://gdProtocol/packet/NormalObject.gd") -const ObjectA = preload("res://gdProtocol/packet/ObjectA.gd") -const ObjectB = preload("res://gdProtocol/packet/ObjectB.gd") -const SimpleObject = preload("res://gdProtocol/packet/SimpleObject.gd") - -const protocols = {} - -static func getProtocol(protocolId: int): - return protocols[protocolId] - -static func newInstance(protocolId: int): - var protocol = protocols[protocolId] - return protocol.new() - -static func write(buffer, packet): - var protocolId: int = packet.PROTOCOL_ID - buffer.writeShort(protocolId) - var protocol = protocols[protocolId] - protocol.write(buffer, packet) - -static func read(buffer): - var protocolId = buffer.readShort(); - var protocol = protocols[protocolId] - var packet = protocol.read(buffer); - return packet; - -static func initProtocol(): - protocols[100] = ComplexObject - protocols[101] = NormalObject - protocols[102] = ObjectA - protocols[103] = ObjectB - protocols[104] = SimpleObject diff --git a/gdProtocol/buffer/ByteBuffer.gd b/gdProtocol/buffer/ByteBuffer.gd deleted file mode 100644 index fea48a9..0000000 --- a/gdProtocol/buffer/ByteBuffer.gd +++ /dev/null @@ -1,664 +0,0 @@ -const ProtocolManager = preload("res://gdProtocol/ProtocolManager.gd") - -const EMPTY: String = "" - -var buffer = StreamPeerBuffer.new() - -var writeOffset: int = 0 setget setWriteOffset, getWriteOffset -var readOffset: int = 0 setget setReadOffset, getReadOffset - -func _init(): - buffer.big_endian = true - -# -------------------------------------------------get/set------------------------------------------------- -func setWriteOffset(writeIndex: int) -> void: - if (writeIndex > buffer.get_size()): - var template = "writeIndex[{}] out of bounds exception: readerIndex: {}, writerIndex: {} (expected: 0 <= readerIndex <= writerIndex <= capacity: {})" - printerr(template.format([writeIndex, readOffset, writeOffset, buffer.size()], "{}")) - return - writeOffset = writeIndex - -func getWriteOffset() -> int: - return writeOffset - -func setReadOffset(readIndex: int) -> void: - if (readIndex > writeOffset): - var template = "readIndex[{}] out of bounds exception: readerIndex: {}, writerIndex: {} (expected: 0 <= readerIndex <= writerIndex <= capacity: {})" - printerr(template.format([readIndex, readOffset, writeOffset, buffer.size()], "{}")) - return - readOffset = readIndex - -func getReadOffset() -> int: - return readOffset - -func isReadable() -> bool: - return writeOffset > readOffset - -# -------------------------------------------------write/read------------------------------------------------- -func writePoolByteArray(value: PoolByteArray): - var length = value.size() - buffer.put_partial_data(value) - writeOffset += length - -func writeBool(value: bool) -> void: - var byte = 0 - if (value): - byte = 1 - buffer.seek(writeOffset) - buffer.put_8(byte) - writeOffset += 1 - -func readBool() -> bool: - buffer.seek(readOffset) - var byte = buffer.get_8() - readOffset += 1 - return byte == 1 - -func writeByte(value: int) -> void: - buffer.seek(writeOffset) - buffer.put_8(value) - writeOffset += 1 - -func readByte() -> int: - buffer.seek(readOffset) - var value = buffer.get_8() - readOffset += 1 - return value - -func writeShort(value: int) -> void: - buffer.seek(writeOffset) - buffer.put_16(value) - writeOffset += 2 - -func readShort() -> int: - buffer.seek(readOffset) - var value = buffer.get_16() - readOffset += 2 - return value - -func writeInt(value) -> void: - writeLong(value) - -func readInt() -> int: - return readLong() - -func writeLong(longValue: int) -> void: - var value = (longValue << 1) ^ (longValue >> 63) - - if (value >> 7 == 0): - writeByte(value) - return - - if (value >> 14 == 0): - writeByte(value | 0x80) - writeByte(value >> 7) - return - - if (value >> 21 == 0): - writeByte(value | 0x80) - writeByte((value >> 7) | 0x80) - writeByte(value >> 14) - return - - if (value >> 28 == 0): - writeByte(value | 0x80) - writeByte((value >> 7) | 0x80) - writeByte((value >> 14) | 0x80) - writeByte(value >> 21) - return - - if (value >> 35 == 0): - writeByte(value | 0x80) - writeByte((value >> 7) | 0x80) - writeByte((value >> 14) | 0x80) - writeByte((value >> 21) | 0x80) - writeByte(value >> 28) - return - - if (value >> 42 == 0): - writeByte(value | 0x80) - writeByte((value >> 7) | 0x80) - writeByte((value >> 14) | 0x80) - writeByte((value >> 21) | 0x80) - writeByte((value >> 28) | 0x80) - writeByte(value >> 35) - return - - if (value >> 49 == 0): - writeByte(value | 0x80) - writeByte((value >> 7) | 0x80) - writeByte((value >> 14) | 0x80) - writeByte((value >> 21) | 0x80) - writeByte((value >> 28) | 0x80) - writeByte((value >> 35) | 0x80) - writeByte(value >> 42) - return - - if (value >> 56 == 0): - writeByte(value | 0x80) - writeByte((value >> 7) | 0x80) - writeByte((value >> 14) | 0x80) - writeByte((value >> 21) | 0x80) - writeByte((value >> 28) | 0x80) - writeByte((value >> 35) | 0x80) - writeByte((value >> 42) | 0x80) - writeByte(value >> 49) - return - - writeByte(value | 0x80) - writeByte((value >> 7) | 0x80) - writeByte((value >> 14) | 0x80) - writeByte((value >> 21) | 0x80) - writeByte((value >> 28) | 0x80) - writeByte((value >> 35) | 0x80) - writeByte((value >> 42) | 0x80) - writeByte((value >> 49) | 0x80) - writeByte(value >> 56) - -func readLong() -> int: - var byte: int = readByte() - var value: int = byte - if (byte < 0): - byte = readByte() - value = value & 0x00000000_0000007F | byte << 7 - if (byte < 0): - byte = readByte() - value = value & 0x00000000_00003FFF | byte << 14 - if (byte < 0): - byte = readByte() - value = value & 0x00000000_001FFFFF | byte << 21 - if (byte < 0): - byte = readByte() - value = value & 0x00000000_0FFFFFFF | byte << 28 - if (byte < 0): - byte = readByte() - value = value & 0x00000007_FFFFFFFF | byte << 35 - if (byte < 0): - byte = readByte() - value = value & 0x000003FF_FFFFFFFF | byte << 42 - if (byte < 0): - byte = readByte() - value = value & 0x0001FFFF_FFFFFFFF | byte << 49 - if (byte < 0): - byte = readByte() - value = value & 0x00FFFFFF_FFFFFFFF | byte << 56 - - var mask = value >> 1 - if (mask < 0): - mask = mask & 0x7FFFFFFF_FFFFFFFF - return mask ^ -(value & 1) - - -func writeFloat(value: float) -> void: - buffer.seek(writeOffset) - buffer.put_float(value) - writeOffset += 4 - -func readFloat() -> float: - buffer.seek(readOffset) - var value = buffer.get_float() - readOffset += 4 - return value - -func writeDouble(value: float) -> void: - buffer.seek(writeOffset) - buffer.put_double(value) - writeOffset += 8 - -func readDouble() -> float: - buffer.seek(readOffset) - var value = buffer.get_double() - readOffset += 8 - return value - - -func writeString(value: String) -> void: - if (value == null || value.length() ==0): - writeInt(0) - return - - buffer.seek(writeOffset) - - var strBytes = value.to_utf8() - var length = strBytes.size() - writeInt(length) - buffer.put_partial_data(strBytes) - writeOffset += length - -func readString() -> String: - var length = readInt() - if (length <= 0): - return EMPTY - - buffer.seek(readOffset) - var value = buffer.get_utf8_string(length) - var strBytes = value.to_utf8() - readOffset += length - return value - -func writeChar(value) -> void: - if (value == null || value.length() == 0): - writeString(EMPTY) - return - writeString(value[0]) - -func readChar() -> String: - return readString() - -func writePacketFlag(packet) -> bool: - var flag = (packet == null) - writeBool(!flag) - return flag - -func writePacket(packet, protocolId): - var protocolRegistration = ProtocolManager.getProtocol(protocolId) - protocolRegistration.write(self, packet) - -func readPacket(protocolId): - var protocolRegistration = ProtocolManager.getProtocol(protocolId) - return protocolRegistration.read(self) - -func newInstance(protocolId: int): - return ProtocolManager.newInstance(protocolId) - -func writeBooleanArray(array): - if (array == null): - writeInt(0) - else: - writeInt(array.size()); - for element in array: - writeBool(element) - -func readBooleanArray(): - var array = [] - var size = readInt() - if (size > 0): - for index in range(size): - array.append(readBool()) - return array - -func writeByteArray(array): - if (array == null): - writeInt(0) - else: - writeInt(array.size()); - for element in array: - writeByte(element) - -func readByteArray(): - var array = [] - var size = readInt() - if (size > 0): - for index in range(size): - array.append(readByte()) - return array - -func writeShortArray(array): - if (array == null): - writeInt(0) - else: - writeInt(array.size()); - for element in array: - writeShort(element) - -func readShortArray(): - var array = [] - var size = readInt() - if (size > 0): - for index in range(size): - array.append(readShort()) - return array - -func writeIntArray(array): - if (array == null): - writeInt(0) - else: - writeInt(array.size()); - for element in array: - writeInt(element) - -func readIntArray(): - var array = [] - var size = readInt() - if (size > 0): - for index in range(size): - array.append(readInt()) - return array - -func writeLongArray(array): - if (array == null): - writeInt(0) - else: - writeInt(array.size()); - for element in array: - writeLong(element) - -func readLongArray(): - var array = [] - var size = readInt() - if (size > 0): - for index in range(size): - array.append(readLong()) - return array - -func writeFloatArray(array): - if (array == null): - writeInt(0) - else: - writeInt(array.size()); - for element in array: - writeFloat(element) - -func readFloatArray(): - var array = [] - var size = readInt() - if (size > 0): - for index in range(size): - array.append(readFloat()) - return array - -func writeDoubleArray(array): - if (array == null): - writeInt(0) - else: - writeInt(array.size()); - for element in array: - writeDouble(element) - -func readDoubleArray(): - var array = [] - var size = readInt() - if (size > 0): - for index in range(size): - array.append(readDouble()) - return array - -func writeCharArray(array): - if (array == null): - writeInt(0) - else: - writeInt(array.size()); - for element in array: - writeChar(element) - -func readCharArray(): - var array = [] - var size = readInt() - if (size > 0): - for index in range(size): - array.append(readChar()) - return array - -func writeStringArray(array): - if (array == null): - writeInt(0) - else: - writeInt(array.size()); - for element in array: - writeString(element) - -func readStringArray(): - var array = [] - var size = readInt() - if (size > 0): - for index in range(size): - array.append(readString()) - return array - - -func writePacketArray(array, protocolId): - if (array == null): - writeInt(0) - else: - var protocolRegistration = ProtocolManager.getProtocol(protocolId) - writeInt(array.size()); - for element in array: - protocolRegistration.write(self, element) - -func readPacketArray(protocolId): - var array = [] - var size = readInt() - if (size > 0): - var protocolRegistration = ProtocolManager.getProtocol(protocolId) - for index in range(size): - array.append(protocolRegistration.read(self)) - return array - -func writeIntIntMap(map): - if (map == null): - writeInt(0) - else: - writeInt(map.size()) - for key in map: - writeInt(key) - writeInt(map[key]) - -func readIntIntMap(): - var map = {} - var size = readInt() - if (size > 0): - for index in range(size): - var key = readInt() - var value = readInt() - map[key] = value - return map - -func writeIntLongMap(map): - if (map == null): - writeInt(0) - else: - writeInt(map.size()) - for key in map: - writeInt(map) - writeLong(map[key]) - -func readIntLongMap(): - var map = {} - var size = readInt() - if (size > 0): - for index in range(size): - var key = readInt() - var value = readLong() - map[key] = value - return map - -func writeIntStringMap(map): - if (map == null): - writeInt(0) - else: - writeInt(map.size()) - for key in map: - writeInt(key) - writeString(map[key]) - -func readIntStringMap(): - var map = {} - var size = readInt() - if (size > 0): - for index in range(size): - var key = readInt() - var value = readString() - map[key] = value - return map - - -func writeIntPacketMap(map, protocolId): - if (map == null): - writeInt(0) - else: - var protocolRegistration = ProtocolManager.getProtocol(protocolId) - writeInt(map.size()) - for key in map: - writeInt(key) - protocolRegistration.write(self, map[key]) - -func readIntPacketMap(protocolId): - var map = {} - var size = readInt() - if (size > 0): - var protocolRegistration = ProtocolManager.getProtocol(protocolId) - for index in range(size): - var key = readInt() - var value = protocolRegistration.read(self) - map[key] = value - return map - - -func writeLongIntMap(map): - if (map == null): - writeInt(0) - else: - writeInt(map.size()) - for key in map: - writeLong(key) - writeInt(map[key]) - -func readLongIntMap(): - var map = {} - var size = readInt() - if (size > 0): - for index in range(size): - var key = readLong() - var value = readInt() - map[key] = value - return map - -func writeLongLongMap(map): - if (map == null): - writeInt(0) - else: - writeInt(map.size()) - for key in map: - writeLong(key) - writeLong(map[key]) - -func readLongLongMap(): - var map = {} - var size = readInt() - if (size > 0): - for index in range(size): - var key = readLong() - var value = readLong() - map[key] = value - return map - -func writeLongStringMap(map): - if (map == null): - writeInt(0) - else: - writeInt(map.size()) - for key in map: - writeLong(key) - writeString(map[key]) - -func readLongStringMap(): - var map = {} - var size = readInt() - if (size > 0): - for index in range(size): - var key = readLong() - var value = readString() - map[key] = value - return map - - -func writeLongPacketMap(map, protocolId): - if (map == null): - writeInt(0) - else: - var protocolRegistration = ProtocolManager.getProtocol(protocolId) - writeInt(map.size()) - for key in map: - writeLong(key) - protocolRegistration.write(self, map[key]) - -func readLongPacketMap(protocolId): - var map = {} - var size = readInt() - if (size > 0): - var protocolRegistration = ProtocolManager.getProtocol(protocolId) - for index in range(size): - var key = readLong() - var value = protocolRegistration.read(self) - map[key] = value - return map - - -func writeStringIntMap(map): - if (map == null): - writeInt(0) - else: - writeInt(map.size()) - for key in map: - writeString(key) - writeInt(map[key]) - -func readStringIntMap(): - var map = {} - var size = readInt() - if (size > 0): - for index in range(size): - var key = readString() - var value = readInt() - map[key] = value - return map - -func writeStringLongMap(map): - if (map == null): - writeInt(0) - else: - writeInt(map.size()) - for key in map: - writeString(key) - writeLong(map[key]) - -func readStringLongMap(): - var map = {} - var size = readInt() - if (size > 0): - for index in range(size): - var key = readString() - var value = readLong() - map[key] = value - return map - -func writeStringStringMap(map): - if (map == null): - writeInt(0) - else: - writeInt(map.size()) - for key in map: - writeString(key) - writeString(map[key]) - -func readStringStringMap(): - var map = {} - var size = readInt() - if (size > 0): - for index in range(size): - var key = readString() - var value = readString() - map[key] = value - return map - - -func writeStringPacketMap(map, protocolId): - if (map == null): - writeInt(0) - else: - var protocolRegistration = ProtocolManager.getProtocol(protocolId) - writeInt(map.size()) - for key in map: - writeString(key) - protocolRegistration.write(self, map[key]) - -func readStringPacketMap(protocolId): - var map = {} - var size = readInt() - if (size > 0): - var protocolRegistration = ProtocolManager.getProtocol(protocolId) - for index in range(size): - var key = readString() - var value = protocolRegistration.read(self) - map[key] = value - return map diff --git a/gdProtocol/packet/ComplexObject.gd b/gdProtocol/packet/ComplexObject.gd deleted file mode 100644 index 9ec6712..0000000 --- a/gdProtocol/packet/ComplexObject.gd +++ /dev/null @@ -1,409 +0,0 @@ -# 复杂的对象 -# 包括了各种复杂的结构,数组,List,Set,Map -# -# @author jaysunxiao -# @version 3.0 - -# byte类型,最简单的整形 -var a # byte -# byte的包装类型 -# 优先使用基础类型,包装类型会有装箱拆箱 -var aa # java.lang.Byte -# 数组类型 -var aaa # byte[] -var aaaa # java.lang.Byte[] -var b # short -var bb # java.lang.Short -var bbb # short[] -var bbbb # java.lang.Short[] -var c # int -var cc # java.lang.Integer -var ccc # int[] -var cccc # java.lang.Integer[] -var d # long -var dd # java.lang.Long -var ddd # long[] -var dddd # java.lang.Long[] -var e # float -var ee # java.lang.Float -var eee # float[] -var eeee # java.lang.Float[] -var f # double -var ff # java.lang.Double -var fff # double[] -var ffff # java.lang.Double[] -var g # boolean -var gg # java.lang.Boolean -var ggg # boolean[] -var gggg # java.lang.Boolean[] -var h # char -var hh # java.lang.Character -var hhh # char[] -var hhhh # java.lang.Character[] -var jj # java.lang.String -var jjj # java.lang.String[] -var kk # com.zfoo.protocol.packet.ObjectA -var kkk # com.zfoo.protocol.packet.ObjectA[] -var l # java.util.List -var ll # java.util.List>> -var lll # java.util.List> -var llll # java.util.List -var lllll # java.util.List> -var m # java.util.Map -var mm # java.util.Map -var mmm # java.util.Map> -var mmmm # java.util.Map>, java.util.List>>> -var mmmmm # java.util.Map>, java.util.Set>> -var s # java.util.Set -var ss # java.util.Set>> -var sss # java.util.Set> -var ssss # java.util.Set -var sssss # java.util.Set> -# 如果要修改协议并且兼容老协议,需要加上Compatible注解,按照增加的顺序添加order -var myCompatible # int -var myObject # com.zfoo.protocol.packet.ObjectA - -const PROTOCOL_ID = 100 - -static func write(buffer, packet): - if (buffer.writePacketFlag(packet)): - return - buffer.writeByte(packet.a) - buffer.writeByte(packet.aa) - buffer.writeByteArray(packet.aaa) - buffer.writeByteArray(packet.aaaa) - buffer.writeShort(packet.b) - buffer.writeShort(packet.bb) - buffer.writeShortArray(packet.bbb) - buffer.writeShortArray(packet.bbbb) - buffer.writeInt(packet.c) - buffer.writeInt(packet.cc) - buffer.writeIntArray(packet.ccc) - buffer.writeIntArray(packet.cccc) - buffer.writeLong(packet.d) - buffer.writeLong(packet.dd) - buffer.writeLongArray(packet.ddd) - buffer.writeLongArray(packet.dddd) - buffer.writeFloat(packet.e) - buffer.writeFloat(packet.ee) - buffer.writeFloatArray(packet.eee) - buffer.writeFloatArray(packet.eeee) - buffer.writeDouble(packet.f) - buffer.writeDouble(packet.ff) - buffer.writeDoubleArray(packet.fff) - buffer.writeDoubleArray(packet.ffff) - buffer.writeBool(packet.g) - buffer.writeBool(packet.gg) - buffer.writeBooleanArray(packet.ggg) - buffer.writeBooleanArray(packet.gggg) - buffer.writeChar(packet.h) - buffer.writeChar(packet.hh) - buffer.writeCharArray(packet.hhh) - buffer.writeCharArray(packet.hhhh) - buffer.writeString(packet.jj) - buffer.writeStringArray(packet.jjj) - buffer.writePacket(packet.kk, 102) - buffer.writePacketArray(packet.kkk, 102) - buffer.writeIntArray(packet.l) - if (packet.ll == null): - buffer.writeInt(0) - else: - buffer.writeInt(packet.ll.size()) - for element0 in packet.ll: - if (element0 == null): - buffer.writeInt(0) - else: - buffer.writeInt(element0.size()) - for element1 in element0: - buffer.writeIntArray(element1) - if (packet.lll == null): - buffer.writeInt(0) - else: - buffer.writeInt(packet.lll.size()) - for element2 in packet.lll: - buffer.writePacketArray(element2, 102) - buffer.writeStringArray(packet.llll) - if (packet.lllll == null): - buffer.writeInt(0) - else: - buffer.writeInt(packet.lllll.size()) - for element3 in packet.lllll: - buffer.writeIntStringMap(element3) - buffer.writeIntStringMap(packet.m) - buffer.writeIntPacketMap(packet.mm, 102) - if (packet.mmm == null): - buffer.writeInt(0) - else: - buffer.writeInt(packet.mmm.size()) - for key4 in packet.mmm: - var value5 = packet.mmm[key4] - buffer.writePacket(key4, 102) - buffer.writeIntArray(value5) - if (packet.mmmm == null): - buffer.writeInt(0) - else: - buffer.writeInt(packet.mmmm.size()) - for key6 in packet.mmmm: - var value7 = packet.mmmm[key6] - if (key6 == null): - buffer.writeInt(0) - else: - buffer.writeInt(key6.size()) - for element8 in key6: - buffer.writePacketArray(element8, 102) - if (value7 == null): - buffer.writeInt(0) - else: - buffer.writeInt(value7.size()) - for element9 in value7: - if (element9 == null): - buffer.writeInt(0) - else: - buffer.writeInt(element9.size()) - for element10 in element9: - buffer.writeIntArray(element10) - if (packet.mmmmm == null): - buffer.writeInt(0) - else: - buffer.writeInt(packet.mmmmm.size()) - for key11 in packet.mmmmm: - var value12 = packet.mmmmm[key11] - if (key11 == null): - buffer.writeInt(0) - else: - buffer.writeInt(key11.size()) - for element13 in key11: - buffer.writeIntStringMap(element13) - if (value12 == null): - buffer.writeInt(0) - else: - buffer.writeInt(value12.size()) - for element14 in value12: - buffer.writeIntStringMap(element14) - buffer.writeIntArray(packet.s) - if (packet.ss == null): - buffer.writeInt(0) - else: - buffer.writeInt(packet.ss.size()) - for element15 in packet.ss: - if (element15 == null): - buffer.writeInt(0) - else: - buffer.writeInt(element15.size()) - for element16 in element15: - buffer.writeIntArray(element16) - if (packet.sss == null): - buffer.writeInt(0) - else: - buffer.writeInt(packet.sss.size()) - for element17 in packet.sss: - buffer.writePacketArray(element17, 102) - buffer.writeStringArray(packet.ssss) - if (packet.sssss == null): - buffer.writeInt(0) - else: - buffer.writeInt(packet.sssss.size()) - for element18 in packet.sssss: - buffer.writeIntStringMap(element18) - buffer.writeInt(packet.myCompatible) - buffer.writePacket(packet.myObject, 102) - - -static func read(buffer): - if (!buffer.readBool()): - return null - var packet = buffer.newInstance(PROTOCOL_ID) - var result19 = buffer.readByte() - packet.a = result19 - var result20 = buffer.readByte() - packet.aa = result20 - var array21 = buffer.readByteArray() - packet.aaa = array21 - var array22 = buffer.readByteArray() - packet.aaaa = array22 - var result23 = buffer.readShort() - packet.b = result23 - var result24 = buffer.readShort() - packet.bb = result24 - var array25 = buffer.readShortArray() - packet.bbb = array25 - var array26 = buffer.readShortArray() - packet.bbbb = array26 - var result27 = buffer.readInt() - packet.c = result27 - var result28 = buffer.readInt() - packet.cc = result28 - var array29 = buffer.readIntArray() - packet.ccc = array29 - var array30 = buffer.readIntArray() - packet.cccc = array30 - var result31 = buffer.readLong() - packet.d = result31 - var result32 = buffer.readLong() - packet.dd = result32 - var array33 = buffer.readLongArray() - packet.ddd = array33 - var array34 = buffer.readLongArray() - packet.dddd = array34 - var result35 = buffer.readFloat() - packet.e = result35 - var result36 = buffer.readFloat() - packet.ee = result36 - var array37 = buffer.readFloatArray() - packet.eee = array37 - var array38 = buffer.readFloatArray() - packet.eeee = array38 - var result39 = buffer.readDouble() - packet.f = result39 - var result40 = buffer.readDouble() - packet.ff = result40 - var array41 = buffer.readDoubleArray() - packet.fff = array41 - var array42 = buffer.readDoubleArray() - packet.ffff = array42 - var result43 = buffer.readBool() - packet.g = result43 - var result44 = buffer.readBool() - packet.gg = result44 - var array45 = buffer.readBooleanArray() - packet.ggg = array45 - var array46 = buffer.readBooleanArray() - packet.gggg = array46 - var result47 = buffer.readChar() - packet.h = result47 - var result48 = buffer.readChar() - packet.hh = result48 - var array49 = buffer.readCharArray() - packet.hhh = array49 - var array50 = buffer.readCharArray() - packet.hhhh = array50 - var result51 = buffer.readString() - packet.jj = result51 - var array52 = buffer.readStringArray() - packet.jjj = array52 - var result53 = buffer.readPacket(102) - packet.kk = result53 - var array54 = buffer.readPacketArray(102) - packet.kkk = array54 - var list55 = buffer.readIntArray() - packet.l = list55 - var result56 = [] - var size58 = buffer.readInt() - if (size58 > 0): - for index57 in range(size58): - var result59 = [] - var size61 = buffer.readInt() - if (size61 > 0): - for index60 in range(size61): - var list62 = buffer.readIntArray() - result59.append(list62) - result56.append(result59) - packet.ll = result56 - var result63 = [] - var size65 = buffer.readInt() - if (size65 > 0): - for index64 in range(size65): - var list66 = buffer.readPacketArray(102) - result63.append(list66) - packet.lll = result63 - var list67 = buffer.readStringArray() - packet.llll = list67 - var result68 = [] - var size70 = buffer.readInt() - if (size70 > 0): - for index69 in range(size70): - var map71 = buffer.readIntStringMap() - result68.append(map71) - packet.lllll = result68 - var map72 = buffer.readIntStringMap() - packet.m = map72 - var map73 = buffer.readIntPacketMap(102) - packet.mm = map73 - var result74 = {} - var size75 = buffer.readInt() - if (size75 > 0): - for index76 in range(size75): - var result77 = buffer.readPacket(102) - var list78 = buffer.readIntArray() - result74[result77] = list78 - packet.mmm = result74 - var result79 = {} - var size80 = buffer.readInt() - if (size80 > 0): - for index81 in range(size80): - var result82 = [] - var size84 = buffer.readInt() - if (size84 > 0): - for index83 in range(size84): - var list85 = buffer.readPacketArray(102) - result82.append(list85) - var result86 = [] - var size88 = buffer.readInt() - if (size88 > 0): - for index87 in range(size88): - var result89 = [] - var size91 = buffer.readInt() - if (size91 > 0): - for index90 in range(size91): - var list92 = buffer.readIntArray() - result89.append(list92) - result86.append(result89) - result79[result82] = result86 - packet.mmmm = result79 - var result93 = {} - var size94 = buffer.readInt() - if (size94 > 0): - for index95 in range(size94): - var result96 = [] - var size98 = buffer.readInt() - if (size98 > 0): - for index97 in range(size98): - var map99 = buffer.readIntStringMap() - result96.append(map99) - var result100 = [] - var size102 = buffer.readInt() - if (size102 > 0): - for index101 in range(size102): - var map103 = buffer.readIntStringMap() - result100.append(map103) - result93[result96] = result100 - packet.mmmmm = result93 - var set104 = buffer.readIntArray() - packet.s = set104 - var result105 = [] - var size107 = buffer.readInt() - if (size107 > 0): - for index106 in range(size107): - var result108 = [] - var size110 = buffer.readInt() - if (size110 > 0): - for index109 in range(size110): - var list111 = buffer.readIntArray() - result108.append(list111) - result105.append(result108) - packet.ss = result105 - var result112 = [] - var size114 = buffer.readInt() - if (size114 > 0): - for index113 in range(size114): - var set115 = buffer.readPacketArray(102) - result112.append(set115) - packet.sss = result112 - var set116 = buffer.readStringArray() - packet.ssss = set116 - var result117 = [] - var size119 = buffer.readInt() - if (size119 > 0): - for index118 in range(size119): - var map120 = buffer.readIntStringMap() - result117.append(map120) - packet.sssss = result117 - if (!buffer.isReadable()): - return packet - var result121 = buffer.readInt() - packet.myCompatible = result121 - if (!buffer.isReadable()): - return packet - var result122 = buffer.readPacket(102) - packet.myObject = result122 - return packet diff --git a/gdProtocol/packet/NormalObject.gd b/gdProtocol/packet/NormalObject.gd deleted file mode 100644 index a9f4126..0000000 --- a/gdProtocol/packet/NormalObject.gd +++ /dev/null @@ -1,88 +0,0 @@ -# @author jaysunxiao -# @version 3.0 - -var a # byte -var aaa # byte[] -var b # short -var c # int -var d # long -var e # float -var f # double -var g # boolean -var jj # java.lang.String -var kk # com.zfoo.protocol.packet.ObjectA -var l # java.util.List -var ll # java.util.List -var lll # java.util.List -var llll # java.util.List -var m # java.util.Map -var mm # java.util.Map -var s # java.util.Set -var ssss # java.util.Set - -const PROTOCOL_ID = 101 - -static func write(buffer, packet): - if (buffer.writePacketFlag(packet)): - return - buffer.writeByte(packet.a) - buffer.writeByteArray(packet.aaa) - buffer.writeShort(packet.b) - buffer.writeInt(packet.c) - buffer.writeLong(packet.d) - buffer.writeFloat(packet.e) - buffer.writeDouble(packet.f) - buffer.writeBool(packet.g) - buffer.writeString(packet.jj) - buffer.writePacket(packet.kk, 102) - buffer.writeIntArray(packet.l) - buffer.writeLongArray(packet.ll) - buffer.writePacketArray(packet.lll, 102) - buffer.writeStringArray(packet.llll) - buffer.writeIntStringMap(packet.m) - buffer.writeIntPacketMap(packet.mm, 102) - buffer.writeIntArray(packet.s) - buffer.writeStringArray(packet.ssss) - - -static func read(buffer): - if (!buffer.readBool()): - return null - var packet = buffer.newInstance(PROTOCOL_ID) - var result0 = buffer.readByte() - packet.a = result0 - var array1 = buffer.readByteArray() - packet.aaa = array1 - var result2 = buffer.readShort() - packet.b = result2 - var result3 = buffer.readInt() - packet.c = result3 - var result4 = buffer.readLong() - packet.d = result4 - var result5 = buffer.readFloat() - packet.e = result5 - var result6 = buffer.readDouble() - packet.f = result6 - var result7 = buffer.readBool() - packet.g = result7 - var result8 = buffer.readString() - packet.jj = result8 - var result9 = buffer.readPacket(102) - packet.kk = result9 - var list10 = buffer.readIntArray() - packet.l = list10 - var list11 = buffer.readLongArray() - packet.ll = list11 - var list12 = buffer.readPacketArray(102) - packet.lll = list12 - var list13 = buffer.readStringArray() - packet.llll = list13 - var map14 = buffer.readIntStringMap() - packet.m = map14 - var map15 = buffer.readIntPacketMap(102) - packet.mm = map15 - var set16 = buffer.readIntArray() - packet.s = set16 - var set17 = buffer.readStringArray() - packet.ssss = set17 - return packet diff --git a/gdProtocol/packet/ObjectA.gd b/gdProtocol/packet/ObjectA.gd deleted file mode 100644 index c70ca38..0000000 --- a/gdProtocol/packet/ObjectA.gd +++ /dev/null @@ -1,28 +0,0 @@ -# @author jaysunxiao -# @version 3.0 - -var a # int -var m # java.util.Map -var objectB # com.zfoo.protocol.packet.ObjectB - -const PROTOCOL_ID = 102 - -static func write(buffer, packet): - if (buffer.writePacketFlag(packet)): - return - buffer.writeInt(packet.a) - buffer.writeIntStringMap(packet.m) - buffer.writePacket(packet.objectB, 103) - - -static func read(buffer): - if (!buffer.readBool()): - return null - var packet = buffer.newInstance(PROTOCOL_ID) - var result0 = buffer.readInt() - packet.a = result0 - var map1 = buffer.readIntStringMap() - packet.m = map1 - var result2 = buffer.readPacket(103) - packet.objectB = result2 - return packet diff --git a/gdProtocol/packet/ObjectB.gd b/gdProtocol/packet/ObjectB.gd deleted file mode 100644 index 136edc0..0000000 --- a/gdProtocol/packet/ObjectB.gd +++ /dev/null @@ -1,20 +0,0 @@ -# @author jaysunxiao -# @version 3.0 - -var flag # boolean - -const PROTOCOL_ID = 103 - -static func write(buffer, packet): - if (buffer.writePacketFlag(packet)): - return - buffer.writeBool(packet.flag) - - -static func read(buffer): - if (!buffer.readBool()): - return null - var packet = buffer.newInstance(PROTOCOL_ID) - var result0 = buffer.readBool() - packet.flag = result0 - return packet diff --git a/gdProtocol/packet/SimpleObject.gd b/gdProtocol/packet/SimpleObject.gd deleted file mode 100644 index 6ca8f5e..0000000 --- a/gdProtocol/packet/SimpleObject.gd +++ /dev/null @@ -1,24 +0,0 @@ -# @author jaysunxiao -# @version 3.0 - -var c # int -var g # boolean - -const PROTOCOL_ID = 104 - -static func write(buffer, packet): - if (buffer.writePacketFlag(packet)): - return - buffer.writeInt(packet.c) - buffer.writeBool(packet.g) - - -static func read(buffer): - if (!buffer.readBool()): - return null - var packet = buffer.newInstance(PROTOCOL_ID) - var result0 = buffer.readInt() - packet.c = result0 - var result1 = buffer.readBool() - packet.g = result1 - return packet diff --git a/gdTest/GdProtocolTest.gd b/gdTest/GdProtocolTest.gd deleted file mode 100644 index b00cb7d..0000000 --- a/gdTest/GdProtocolTest.gd +++ /dev/null @@ -1,104 +0,0 @@ -extends Node2D - - -const ProtocolManager = preload("res://gdProtocol/ProtocolManager.gd") -const ByteBuffer = preload("res://gdProtocol/buffer/ByteBuffer.gd") -const FileUtils = preload("res://zfoo/util/FileUtils.gd") - -func _ready(): - var buffer = ByteBuffer.new() - - buffer.writeBool(true) - buffer.writeBool(false) - assert(true == buffer.readBool()) - assert(false == buffer.readBool()) - - buffer.writeByte(-128) - buffer.writeByte(99) - buffer.writeByte(127) - assert(-128 == buffer.readByte()) - assert(99 == buffer.readByte()) - assert(127 == buffer.readByte()) - - buffer.writeShort(-32768) - buffer.writeShort(0) - buffer.writeShort(32767) - assert(-32768 == buffer.readShort()) - assert(0 == buffer.readShort()) - assert(32767 == buffer.readShort()) - - buffer.writeInt(-2147483648) - buffer.writeInt(-999999) - buffer.writeInt(0) - buffer.writeInt(999999) - buffer.writeInt(2147483647) - assert(-2147483648 == buffer.readInt()) - assert(-999999 == buffer.readInt()) - assert(0 == buffer.readInt()) - assert(999999 == buffer.readInt()) - assert(2147483647 == buffer.readInt()) - - var maxLong = int("9223372036854775807") - var minLong = int("-9223372036854775808") - buffer.writeLong(maxLong) - buffer.writeLong(9999999999999999) - buffer.writeLong(99999999) - buffer.writeLong(0) - buffer.writeLong(-99999999) - buffer.writeLong(-9999999999999999) - buffer.writeLong(minLong) - - assert(maxLong == buffer.readLong()) - assert(9999999999999999 == buffer.readLong()) - assert(99999999 == buffer.readLong()) - assert(0 == buffer.readLong()) - assert(-99999999 == buffer.readLong()) - assert(-9999999999999999 == buffer.readLong()) - assert(minLong == buffer.readLong()) - - buffer.writeFloat(-1234.5678) - buffer.writeFloat(0) - buffer.writeFloat(1234.5678) - assert(abs(-1234.5678 - buffer.readFloat()) < 0.001) - assert(0 == buffer.readFloat()) - assert(abs(1234.5678 - buffer.readFloat()) < 0.001) - - buffer.writeDouble(-1234.5678) - buffer.writeDouble(0) - buffer.writeDouble(1234.5678) - assert(abs(-1234.5678 - buffer.readDouble()) < 0.001) - assert(0 == buffer.readDouble()) - assert(abs(1234.5678 - buffer.readDouble()) < 0.001) - - var strValue = "你好 hello world" - buffer.writeString(strValue) - assert(strValue == buffer.readString()) - - buffer.writeChar(strValue) - assert(strValue[0] == buffer.readChar()) - buffer.writeChar("") - assert(ByteBuffer.EMPTY == buffer.readChar()) - test() - - -func test(): - ProtocolManager.initProtocol() - var buffer = ByteBuffer.new() - var poolByteArray = FileUtils.readFileToByteArray("user://ComplexObject.bytes") - buffer.writePoolByteArray(poolByteArray) - - var packet = ProtocolManager.read(buffer) - print(packet) - packet.myCompatible = 0 - var newByteBuffer = ByteBuffer.new() - ProtocolManager.write(newByteBuffer, packet); - print(newByteBuffer.getWriteOffset()) - - var newPacket = ProtocolManager.read(newByteBuffer); - print(newPacket) - - - - - - diff --git a/gdTest/protocolTest.tscn b/gdTest/protocolTest.tscn deleted file mode 100644 index 399f19f..0000000 --- a/gdTest/protocolTest.tscn +++ /dev/null @@ -1,6 +0,0 @@ -[gd_scene load_steps=2 format=2] - -[ext_resource path="res://gdTest/GdProtocolTest.gd" type="Script" id=1] - -[node name="Node2D" type="Node2D"] -script = ExtResource( 1 ) diff --git a/godot_resource_binary.bin.txt b/godot_resource_binary.bin.txt deleted file mode 100644 index f238f4f..0000000 Binary files a/godot_resource_binary.bin.txt and /dev/null differ diff --git a/icon.png b/icon.png deleted file mode 100644 index c98fbb6..0000000 Binary files a/icon.png and /dev/null differ diff --git a/icon.png.import b/icon.png.import deleted file mode 100644 index 96cbf46..0000000 --- a/icon.png.import +++ /dev/null @@ -1,34 +0,0 @@ -[remap] - -importer="texture" -type="StreamTexture" -path="res://.import/icon.png-487276ed1e3a0c39cad0279d744ee560.stex" -metadata={ -"vram_texture": false -} - -[deps] - -source_file="res://icon.png" -dest_files=[ "res://.import/icon.png-487276ed1e3a0c39cad0279d744ee560.stex" ] - -[params] - -compress/mode=0 -compress/lossy_quality=0.7 -compress/hdr_mode=0 -compress/bptc_ldr=0 -compress/normal_map=0 -flags/repeat=0 -flags/filter=true -flags/mipmaps=false -flags/anisotropic=false -flags/srgb=2 -process/fix_alpha_border=true -process/premult_alpha=false -process/HDR_as_SRGB=false -process/invert_color=false -stream=false -size_limit=0 -detect_3d=true -svg/scale=1.0 diff --git a/project.godot b/project.godot deleted file mode 100644 index 2808d31..0000000 --- a/project.godot +++ /dev/null @@ -1,73 +0,0 @@ -; Engine configuration file. -; It's best edited using the editor UI and not directly, -; since the parameters that go here are not all obvious. -; -; Format: -; [section] ; section goes between [] -; param=value ; assign values to parameters - -config_version=4 - -_global_script_classes=[ { -"base": "Node2D", -"class": "MyClass", -"language": "GDScript", -"path": "res://script/demo02_base/MyClass.gd" -} ] -_global_script_class_icons={ -"MyClass": "res://icon.png" -} - -[application] - -config/name="godot-start" -run/main_scene="res://scene/demo01_hello/hello_world.tscn" -config/icon="res://icon.png" - -[display] - -window/stretch/mode="2d" -window/stretch/aspect="keep" - -[input] - -move_left={ -"deadzone": 0.5, -"events": [ Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"pressed":false,"scancode":65,"unicode":0,"echo":false,"script":null) -, Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"pressed":false,"scancode":16777231,"unicode":0,"echo":false,"script":null) -, Object(InputEventJoypadButton,"resource_local_to_scene":false,"resource_name":"","device":0,"button_index":14,"pressure":0.0,"pressed":false,"script":null) -, Object(InputEventJoypadMotion,"resource_local_to_scene":false,"resource_name":"","device":0,"axis":0,"axis_value":-1.0,"script":null) - ] -} -move_right={ -"deadzone": 0.5, -"events": [ Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"pressed":false,"scancode":68,"unicode":0,"echo":false,"script":null) -, Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"pressed":false,"scancode":16777233,"unicode":0,"echo":false,"script":null) -, Object(InputEventJoypadButton,"resource_local_to_scene":false,"resource_name":"","device":0,"button_index":15,"pressure":0.0,"pressed":false,"script":null) -, Object(InputEventJoypadMotion,"resource_local_to_scene":false,"resource_name":"","device":0,"axis":0,"axis_value":1.0,"script":null) - ] -} -move_up={ -"deadzone": 0.5, -"events": [ Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"pressed":false,"scancode":87,"unicode":0,"echo":false,"script":null) -, Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"pressed":false,"scancode":16777232,"unicode":0,"echo":false,"script":null) -, Object(InputEventJoypadButton,"resource_local_to_scene":false,"resource_name":"","device":0,"button_index":12,"pressure":0.0,"pressed":false,"script":null) -, Object(InputEventJoypadMotion,"resource_local_to_scene":false,"resource_name":"","device":0,"axis":1,"axis_value":-1.0,"script":null) - ] -} -move_down={ -"deadzone": 0.5, -"events": [ Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"pressed":false,"scancode":83,"unicode":0,"echo":false,"script":null) -, Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"pressed":false,"scancode":16777234,"unicode":0,"echo":false,"script":null) -, Object(InputEventJoypadButton,"resource_local_to_scene":false,"resource_name":"","device":0,"button_index":13,"pressure":0.0,"pressed":false,"script":null) -, Object(InputEventJoypadMotion,"resource_local_to_scene":false,"resource_name":"","device":0,"axis":1,"axis_value":1.0,"script":null) - ] -} - -[physics] - -common/enable_pause_aware_picking=true - -[rendering] - -environment/default_environment="res://default_env.tres" diff --git a/scene/demo01_hello/hello_world.tscn b/scene/demo01_hello/hello_world.tscn deleted file mode 100644 index 7f58219..0000000 --- a/scene/demo01_hello/hello_world.tscn +++ /dev/null @@ -1,20 +0,0 @@ -[gd_scene load_steps=2 format=2] - -[ext_resource path="res://script/demo01_hello/hello_world.gd" type="Script" id=1] - -[node name="Node2D" type="Node2D"] -script = ExtResource( 1 ) - -[node name="Label" type="Label" parent="."] -margin_left = 359.408 -margin_top = 248.378 -margin_right = 595.408 -margin_bottom = 358.378 -rect_pivot_offset = Vector2( -0.558563, -0.7173 ) -text = "Hello World" -align = 1 -valign = 1 -max_lines_visible = 2 -__meta__ = { -"_edit_use_anchors_": false -} diff --git a/scene/demo02_base/base1.tscn b/scene/demo02_base/base1.tscn deleted file mode 100644 index 4d8b651..0000000 --- a/scene/demo02_base/base1.tscn +++ /dev/null @@ -1,7 +0,0 @@ -[gd_scene load_steps=2 format=2] - -[ext_resource path="res://script/demo02_base/base1.gd" type="Script" id=1] - -[node name="Node2D" type="Node2D"] -script = ExtResource( 1 ) -a = 9 diff --git a/scene/demo02_base/base2.tscn b/scene/demo02_base/base2.tscn deleted file mode 100644 index c624568..0000000 --- a/scene/demo02_base/base2.tscn +++ /dev/null @@ -1,6 +0,0 @@ -[gd_scene load_steps=2 format=2] - -[ext_resource path="res://script/demo02_base/base2.gd" type="Script" id=1] - -[node name="Node2D" type="Node2D"] -script = ExtResource( 1 ) diff --git a/scene/demo02_base/base3.tscn b/scene/demo02_base/base3.tscn deleted file mode 100644 index 535c212..0000000 --- a/scene/demo02_base/base3.tscn +++ /dev/null @@ -1,6 +0,0 @@ -[gd_scene load_steps=2 format=2] - -[ext_resource path="res://script/demo02_base/base3.gd" type="Script" id=1] - -[node name="Node2D" type="Node2D"] -script = ExtResource( 1 ) diff --git a/scene/demo02_base/base4.tscn b/scene/demo02_base/base4.tscn deleted file mode 100644 index 76abb7b..0000000 --- a/scene/demo02_base/base4.tscn +++ /dev/null @@ -1,6 +0,0 @@ -[gd_scene load_steps=2 format=2] - -[ext_resource path="res://script/demo02_base/base4.gd" type="Script" id=1] - -[node name="Node2D" type="Node2D"] -script = ExtResource( 1 ) diff --git a/scene/demo03_lifecycle/life_cycle.tscn b/scene/demo03_lifecycle/life_cycle.tscn deleted file mode 100644 index 0350f01..0000000 --- a/scene/demo03_lifecycle/life_cycle.tscn +++ /dev/null @@ -1,24 +0,0 @@ -[gd_scene load_steps=4 format=2] - -[ext_resource path="res://script/demo03_lifecycle/sub_node1.gd" type="Script" id=1] -[ext_resource path="res://script/demo03_lifecycle/sub_node2.gd" type="Script" id=2] -[ext_resource path="res://script/demo03_lifecycle/parent.gd" type="Script" id=3] - -[node name="Node2D" type="Node2D"] -script = ExtResource( 3 ) - -[node name="SubNode1" type="Node2D" parent="."] -script = ExtResource( 1 ) - -[node name="SubNode2" type="Node" parent="SubNode1"] -script = ExtResource( 2 ) - -[node name="DeleteButton" type="Button" parent="."] -margin_left = 400.0 -margin_top = 189.0 -margin_right = 589.0 -margin_bottom = 256.0 -text = "Delete SubNode1" -__meta__ = { -"_edit_use_anchors_": false -} diff --git a/scene/demo04_signal/signal.tscn b/scene/demo04_signal/signal.tscn deleted file mode 100644 index 84a8f0c..0000000 --- a/scene/demo04_signal/signal.tscn +++ /dev/null @@ -1,64 +0,0 @@ -[gd_scene load_steps=5 format=2] - -[ext_resource path="res://script/demo04_signal/signal.gd" type="Script" id=1] -[ext_resource path="res://script/demo04_signal/mySignal.gd" type="Script" id=2] -[ext_resource path="res://script/demo04_signal/yield.gd" type="Script" id=3] -[ext_resource path="res://script/demo04_signal/thread.gd" type="Script" id=4] - -[node name="Node2D" type="Node2D"] -script = ExtResource( 1 ) - -[node name="Button1" type="Button" parent="."] -margin_left = 322.927 -margin_top = 50.5072 -margin_right = 441.927 -margin_bottom = 90.5072 -text = "button1" -__meta__ = { -"_edit_use_anchors_": false -} - -[node name="Button2" type="Button" parent="."] -margin_left = 541.436 -margin_top = 44.0454 -margin_right = 661.436 -margin_bottom = 94.0454 -text = "button2" -__meta__ = { -"_edit_use_anchors_": false -} - -[node name="MySignal" type="Button" parent="."] -margin_left = 323.703 -margin_top = 148.643 -margin_right = 430.703 -margin_bottom = 192.643 -text = "mySignal" -script = ExtResource( 2 ) -__meta__ = { -"_edit_use_anchors_": false -} - -[node name="Yield" type="Button" parent="."] -margin_left = 322.941 -margin_top = 244.0 -margin_right = 433.941 -margin_bottom = 287.0 -text = "yield" -script = ExtResource( 3 ) -__meta__ = { -"_edit_use_anchors_": false -} - -[node name="Thread" type="Button" parent="."] -margin_left = 321.059 -margin_top = 331.0 -margin_right = 435.059 -margin_bottom = 374.0 -text = "thread" -script = ExtResource( 4 ) -__meta__ = { -"_edit_use_anchors_": false -} - -[connection signal="pressed" from="Button1" to="." method="_on_Button1_pressed"] diff --git a/scene/demo05_scene_node/scene_node.tscn b/scene/demo05_scene_node/scene_node.tscn deleted file mode 100644 index 7cc7874..0000000 --- a/scene/demo05_scene_node/scene_node.tscn +++ /dev/null @@ -1,12 +0,0 @@ -[gd_scene load_steps=3 format=2] - -[ext_resource path="res://script/demo05_scene_node/hero.gd" type="Script" id=1] -[ext_resource path="res://icon.png" type="Texture" id=2] - -[node name="Node2D" type="Node2D"] -position = Vector2( 100, 100 ) - -[node name="Hero" type="Sprite" parent="."] -position = Vector2( 400, 200 ) -texture = ExtResource( 2 ) -script = ExtResource( 1 ) diff --git a/scene/demo06_move/move.tscn b/scene/demo06_move/move.tscn deleted file mode 100644 index 07dcbf6..0000000 --- a/scene/demo06_move/move.tscn +++ /dev/null @@ -1,11 +0,0 @@ -[gd_scene load_steps=3 format=2] - -[ext_resource path="res://script/demo06_move/move_hero.gd" type="Script" id=1] -[ext_resource path="res://icon.png" type="Texture" id=2] - -[node name="Node2D" type="Node2D"] - -[node name="HeroMove" type="Sprite" parent="."] -position = Vector2( 552.42, 212.613 ) -texture = ExtResource( 2 ) -script = ExtResource( 1 ) diff --git a/scene/demo07_collision/collision.tscn b/scene/demo07_collision/collision.tscn deleted file mode 100644 index ad0b2e3..0000000 --- a/scene/demo07_collision/collision.tscn +++ /dev/null @@ -1,47 +0,0 @@ -[gd_scene load_steps=5 format=2] - -[ext_resource path="res://icon.png" type="Texture" id=1] -[ext_resource path="res://script/demo07_collision/kinematic_body_2d.gd" type="Script" id=2] - -[sub_resource type="RectangleShape2D" id=1] -extents = Vector2( 31.5644, 29.6976 ) - -[sub_resource type="RectangleShape2D" id=2] -extents = Vector2( 30.17, 29.3458 ) - -[node name="Node2D" type="Node2D"] - -[node name="StaticBody2D" type="StaticBody2D" parent="."] -position = Vector2( 64.5824, 547.095 ) - -[node name="Polygon2D" type="Polygon2D" parent="StaticBody2D"] -color = Color( 0.329412, 0.580392, 0.270588, 1 ) -polygon = PoolVector2Array( -23.2672, -184.708, -24.0164, 46.0308, 896.693, 51.2749, 897.443, -184.708, 653.968, 3.3291, 39.6617, 1.83081, 39.6617, -180.214 ) - -[node name="CollisionPolygon2D" type="CollisionPolygon2D" parent="StaticBody2D"] -polygon = PoolVector2Array( -25.5147, -183.959, -26.2638, 45.2817, 895.944, 52.024, 897.443, -184.708, 654.717, 4.07825, 38.1633, -2.66412, 38.9125, -183.21 ) - -[node name="RigidBody2D" type="RigidBody2D" parent="."] -position = Vector2( 880.023, 40.7525 ) -__meta__ = { -"_edit_group_": true -} - -[node name="CollisionShape2D" type="CollisionShape2D" parent="RigidBody2D"] -shape = SubResource( 1 ) - -[node name="Sprite" type="Sprite" parent="RigidBody2D"] -texture = ExtResource( 1 ) - -[node name="KinematicBody2D" type="KinematicBody2D" parent="."] -position = Vector2( 549.424, 338.422 ) -script = ExtResource( 2 ) -__meta__ = { -"_edit_group_": true -} - -[node name="CollisionShape2D" type="CollisionShape2D" parent="KinematicBody2D"] -shape = SubResource( 2 ) - -[node name="Sprite" type="Sprite" parent="KinematicBody2D"] -texture = ExtResource( 1 ) diff --git a/scene/demo08_path/image/Godette.png b/scene/demo08_path/image/Godette.png deleted file mode 100644 index c58f370..0000000 Binary files a/scene/demo08_path/image/Godette.png and /dev/null differ diff --git a/scene/demo08_path/image/Godette.png.import b/scene/demo08_path/image/Godette.png.import deleted file mode 100644 index 9391ed9..0000000 --- a/scene/demo08_path/image/Godette.png.import +++ /dev/null @@ -1,34 +0,0 @@ -[remap] - -importer="texture" -type="StreamTexture" -path="res://.import/Godette.png-04c1f254cac22071a0bc4b5ab76dab33.stex" -metadata={ -"vram_texture": false -} - -[deps] - -source_file="res://scene/demo08_path/image/Godette.png" -dest_files=[ "res://.import/Godette.png-04c1f254cac22071a0bc4b5ab76dab33.stex" ] - -[params] - -compress/mode=0 -compress/lossy_quality=0.7 -compress/hdr_mode=0 -compress/bptc_ldr=0 -compress/normal_map=0 -flags/repeat=0 -flags/filter=true -flags/mipmaps=false -flags/anisotropic=false -flags/srgb=2 -process/fix_alpha_border=true -process/premult_alpha=false -process/HDR_as_SRGB=false -process/invert_color=false -stream=false -size_limit=0 -detect_3d=true -svg/scale=1.0 diff --git a/scene/demo08_path/image/Grasslands.png b/scene/demo08_path/image/Grasslands.png deleted file mode 100644 index 74b28d1..0000000 Binary files a/scene/demo08_path/image/Grasslands.png and /dev/null differ diff --git a/scene/demo08_path/image/Grasslands.png.import b/scene/demo08_path/image/Grasslands.png.import deleted file mode 100644 index fe5150f..0000000 --- a/scene/demo08_path/image/Grasslands.png.import +++ /dev/null @@ -1,34 +0,0 @@ -[remap] - -importer="texture" -type="StreamTexture" -path="res://.import/Grasslands.png-0a6ab77180659e2e9d9a66e9712b5531.stex" -metadata={ -"vram_texture": false -} - -[deps] - -source_file="res://scene/demo08_path/image/Grasslands.png" -dest_files=[ "res://.import/Grasslands.png-0a6ab77180659e2e9d9a66e9712b5531.stex" ] - -[params] - -compress/mode=0 -compress/lossy_quality=0.7 -compress/hdr_mode=0 -compress/bptc_ldr=0 -compress/normal_map=0 -flags/repeat=0 -flags/filter=true -flags/mipmaps=false -flags/anisotropic=false -flags/srgb=2 -process/fix_alpha_border=true -process/premult_alpha=false -process/HDR_as_SRGB=false -process/invert_color=false -stream=false -size_limit=0 -detect_3d=true -svg/scale=1.0 diff --git a/scene/demo08_path/image/Interactive.png b/scene/demo08_path/image/Interactive.png deleted file mode 100644 index 532d9ac..0000000 Binary files a/scene/demo08_path/image/Interactive.png and /dev/null differ diff --git a/scene/demo08_path/image/Interactive.png.import b/scene/demo08_path/image/Interactive.png.import deleted file mode 100644 index f738cc9..0000000 --- a/scene/demo08_path/image/Interactive.png.import +++ /dev/null @@ -1,34 +0,0 @@ -[remap] - -importer="texture" -type="StreamTexture" -path="res://.import/Interactive.png-bebc87707c2e3c6e37be714ead0ebc3c.stex" -metadata={ -"vram_texture": false -} - -[deps] - -source_file="res://scene/demo08_path/image/Interactive.png" -dest_files=[ "res://.import/Interactive.png-bebc87707c2e3c6e37be714ead0ebc3c.stex" ] - -[params] - -compress/mode=0 -compress/lossy_quality=0.7 -compress/hdr_mode=0 -compress/bptc_ldr=0 -compress/normal_map=0 -flags/repeat=0 -flags/filter=true -flags/mipmaps=false -flags/anisotropic=false -flags/srgb=2 -process/fix_alpha_border=true -process/premult_alpha=false -process/HDR_as_SRGB=false -process/invert_color=false -stream=false -size_limit=0 -detect_3d=true -svg/scale=1.0 diff --git a/scene/demo08_path/image/Robi.png b/scene/demo08_path/image/Robi.png deleted file mode 100644 index 1d4e79c..0000000 Binary files a/scene/demo08_path/image/Robi.png and /dev/null differ diff --git a/scene/demo08_path/image/Robi.png.import b/scene/demo08_path/image/Robi.png.import deleted file mode 100644 index 69d4769..0000000 --- a/scene/demo08_path/image/Robi.png.import +++ /dev/null @@ -1,34 +0,0 @@ -[remap] - -importer="texture" -type="StreamTexture" -path="res://.import/Robi.png-6434141f148b69577a114e3ae4050d96.stex" -metadata={ -"vram_texture": false -} - -[deps] - -source_file="res://scene/demo08_path/image/Robi.png" -dest_files=[ "res://.import/Robi.png-6434141f148b69577a114e3ae4050d96.stex" ] - -[params] - -compress/mode=0 -compress/lossy_quality=0.7 -compress/hdr_mode=0 -compress/bptc_ldr=0 -compress/normal_map=0 -flags/repeat=0 -flags/filter=true -flags/mipmaps=false -flags/anisotropic=false -flags/srgb=2 -process/fix_alpha_border=true -process/premult_alpha=false -process/HDR_as_SRGB=false -process/invert_color=false -stream=false -size_limit=0 -detect_3d=true -svg/scale=1.0 diff --git a/scene/demo08_path/image/Shadow.png b/scene/demo08_path/image/Shadow.png deleted file mode 100644 index 2f0a03a..0000000 Binary files a/scene/demo08_path/image/Shadow.png and /dev/null differ diff --git a/scene/demo08_path/image/Shadow.png.import b/scene/demo08_path/image/Shadow.png.import deleted file mode 100644 index dc43549..0000000 --- a/scene/demo08_path/image/Shadow.png.import +++ /dev/null @@ -1,34 +0,0 @@ -[remap] - -importer="texture" -type="StreamTexture" -path="res://.import/Shadow.png-3c5663631c022915064bcf46dc6c73d5.stex" -metadata={ -"vram_texture": false -} - -[deps] - -source_file="res://scene/demo08_path/image/Shadow.png" -dest_files=[ "res://.import/Shadow.png-3c5663631c022915064bcf46dc6c73d5.stex" ] - -[params] - -compress/mode=0 -compress/lossy_quality=0.7 -compress/hdr_mode=0 -compress/bptc_ldr=0 -compress/normal_map=0 -flags/repeat=0 -flags/filter=true -flags/mipmaps=false -flags/anisotropic=false -flags/srgb=2 -process/fix_alpha_border=true -process/premult_alpha=false -process/HDR_as_SRGB=false -process/invert_color=false -stream=false -size_limit=0 -detect_3d=true -svg/scale=1.0 diff --git a/scene/demo08_path/line.tscn b/scene/demo08_path/line.tscn deleted file mode 100644 index 3c4a464..0000000 --- a/scene/demo08_path/line.tscn +++ /dev/null @@ -1,26 +0,0 @@ -[gd_scene load_steps=6 format=2] - -[ext_resource path="res://script/demo06_move/move_hero.gd" type="Script" id=1] -[ext_resource path="res://icon.png" type="Texture" id=2] -[ext_resource path="res://script/demo08_path/my_line.gd" type="Script" id=3] - -[sub_resource type="Curve" id=1] -_data = [ Vector2( 0, 0.0545454 ), 0.0, 0.0, 0, 0, Vector2( 0.155556, 0.3 ), 0.0, 0.0, 0, 0, Vector2( 0.361111, 0.572727 ), 0.0, 0.0, 0, 0, Vector2( 0.733333, 0.781818 ), 0.0, 0.0, 0, 0, Vector2( 0.916667, 1 ), 0.0, 0.0, 0, 0, Vector2( 1, 1 ), 0.0, 0.0, 0, 0 ] - -[sub_resource type="Gradient" id=2] -offsets = PoolRealArray( 0, 0.395973, 1 ) -colors = PoolColorArray( 0.133195, 0.308942, 0.362743, 1, 0.226219, 0.464389, 0.839305, 1, 0.0228882, 0.261307, 0.976563, 1 ) - -[node name="Node2D" type="Node2D"] - -[node name="Line2D" type="Line2D" parent="."] -width = 64.0 -width_curve = SubResource( 1 ) -default_color = Color( 0.4, 0.501961, 1, 1 ) -gradient = SubResource( 2 ) -script = ExtResource( 3 ) - -[node name="Player" type="Sprite" parent="."] -position = Vector2( 159.521, 163.844 ) -texture = ExtResource( 2 ) -script = ExtResource( 1 ) diff --git a/scene/demo08_path/path.tscn b/scene/demo08_path/path.tscn deleted file mode 100644 index 441166f..0000000 --- a/scene/demo08_path/path.tscn +++ /dev/null @@ -1,45 +0,0 @@ -[gd_scene load_steps=5 format=2] - -[ext_resource path="res://icon.png" type="Texture" id=1] -[ext_resource path="res://script/demo08_path/path.gd" type="Script" id=2] - -[sub_resource type="Curve2D" id=1] -_data = { -"points": PoolVector2Array( 0, 0, 0, 0, 65.9002, 246.547, 0, 0, 0, 0, 123.326, 218.878, 0, 0, 0, 0, 194.986, 195.578, 0, 0, 0, 0, 229.344, 131.988, 0, 0, 0, 0, 305.912, 274.216, 0, 0, 0, 0, 319.165, 361.592, 0, 0, 0, 0, 357.939, 411.105, 0, 0, 0, 0, 478.682, 369.359, 0, 0, 0, 0, 523.347, 214.509, 0, 0, 0, 0, 546.906, 144.609, 0, 0, 0, 0, 666.176, 175.676, 0, 0, 0, 0, 689.735, 337.807, 0, 0, 0, 0, 685.809, 389.261, 0, 0, 0, 0, 755.996, 418.872 ) -} - -[sub_resource type="Curve2D" id=2] -_data = { -"points": PoolVector2Array( 0, 0, 0, 0, 46.9502, 574.442, 0, 0, 0, 0, 80.1843, 548.279, 0, 0, 0, 0, 111.297, 535.551, 0, 0, 0, 0, 163.623, 539.087, 0, 0, 0, 0, 185.543, 556.765, 0, 0, 0, 0, 242.112, 587.17, 0, 0, 0, 0, 276.76, 580.806, 0, 0, 0, 0, 306.458, 575.149, 0, 0, 0, 0, 341.107, 558.886, 0, 0, 0, 0, 355.249, 551.815, 0, 0, 0, 0, 395.554, 548.279, 0, 0, 0, 0, 414.646, 548.279, 0, 0, 0, 0, 480.407, 550.401, 0, 0, 0, 0, 563.138, 576.564, 0, 0, 0, 0, 585.766, 581.513, 0, 0, 0, 0, 681.225, 572.321, 0, 0, 0, 0, 704.56, 559.593, 0, 0, 0, 0, 737.087, 545.451, 0, 0, 0, 0, 766.785, 538.38, 0, 0, 0, 0, 812.747, 543.33, 0, 0, 0, 0, 843.86, 556.765, 0, 0, 0, 0, 889.822, 565.25, 0, 0, 0, 0, 906.085, 565.25, 0, 0, 0, 0, 940.733, 548.279, 0, 0, 0, 0, 958.411, 533.43 ) -} - -[node name="Node2D" type="Node2D"] - -[node name="Path2D_1" type="Path2D" parent="."] -position = Vector2( 5.3012, -35.5921 ) -scale = Vector2( 1.14345, 1.15617 ) -curve = SubResource( 1 ) - -[node name="PathFollow2D" type="PathFollow2D" parent="Path2D_1"] -position = Vector2( 65.9002, 246.547 ) -rotation = -0.449003 -script = ExtResource( 2 ) - -[node name="Sprite" type="Sprite" parent="Path2D_1/PathFollow2D"] -texture = ExtResource( 1 ) - -[node name="Path2D_2" type="Path2D" parent="."] -curve = SubResource( 2 ) - -[node name="PathFollow2D" type="PathFollow2D" parent="Path2D_2"] -position = Vector2( 46.9502, 574.442 ) -rotation = -0.666908 -script = ExtResource( 2 ) - -[node name="RemoteTransform2D" type="RemoteTransform2D" parent="Path2D_2/PathFollow2D"] -remote_path = NodePath("../../../Sprite") - -[node name="Sprite" type="Sprite" parent="."] -position = Vector2( 46.9502, 574.442 ) -rotation = -0.666908 -texture = ExtResource( 1 ) diff --git a/scene/demo08_path/tile.tscn b/scene/demo08_path/tile.tscn deleted file mode 100644 index 6092fb0..0000000 --- a/scene/demo08_path/tile.tscn +++ /dev/null @@ -1,235 +0,0 @@ -[gd_scene load_steps=28 format=2] - -[ext_resource path="res://scene/demo08_path/image/Robi.png" type="Texture" id=1] -[ext_resource path="res://scene/demo08_path/image/Shadow.png" type="Texture" id=2] -[ext_resource path="res://script/demo08_path/my_tile.gd" type="Script" id=3] -[ext_resource path="res://script/demo08_path/my_player.gd" type="Script" id=4] -[ext_resource path="res://scene/demo08_path/image/Grasslands.png" type="Texture" id=5] - -[sub_resource type="NavigationPolygon" id=2] -vertices = PoolVector2Array( 0, 0, 80, 0, 80, 80, 0, 80 ) -polygons = [ PoolIntArray( 0, 1, 2, 3 ) ] - -[sub_resource type="ConvexPolygonShape2D" id=3] -points = PoolVector2Array( 0, 0, 80, 0, 80, 80, 0, 80 ) - -[sub_resource type="ConvexPolygonShape2D" id=4] -points = PoolVector2Array( 0, 0, 80, 0, 80, 80, 0, 80 ) - -[sub_resource type="ConvexPolygonShape2D" id=5] -points = PoolVector2Array( 0, 0, 80, 0, 80, 80, 0, 80 ) - -[sub_resource type="ConvexPolygonShape2D" id=6] -points = PoolVector2Array( 0, 0, 80, 0, 80, 80, 0, 80 ) - -[sub_resource type="NavigationPolygon" id=7] -vertices = PoolVector2Array( 0, 0, 80, 0, 80, 80, 0, 80 ) -polygons = [ PoolIntArray( 0, 1, 2, 3 ) ] - -[sub_resource type="NavigationPolygon" id=8] -vertices = PoolVector2Array( 0, 0, 80, 0, 80, 80, 0, 80 ) -polygons = [ PoolIntArray( 0, 1, 2, 3 ) ] - -[sub_resource type="NavigationPolygon" id=9] -vertices = PoolVector2Array( 0, 0, 80, 0, 80, 80, 0, 80 ) -polygons = [ PoolIntArray( 0, 1, 2, 3 ) ] - -[sub_resource type="NavigationPolygon" id=10] -vertices = PoolVector2Array( 0, 0, 80, 0, 80, 80, 0, 80 ) -polygons = [ PoolIntArray( 0, 1, 2, 3 ) ] - -[sub_resource type="NavigationPolygon" id=11] -vertices = PoolVector2Array( 0, 0, 80, 0, 80, 80, 0, 80 ) -polygons = [ PoolIntArray( 0, 1, 2, 3 ) ] - -[sub_resource type="NavigationPolygon" id=12] -vertices = PoolVector2Array( 0, 0, 80, 0, 80, 80, 0, 80 ) -polygons = [ PoolIntArray( 0, 1, 2, 3 ) ] - -[sub_resource type="NavigationPolygon" id=13] -vertices = PoolVector2Array( 0, 0, 80, 0, 80, 80, 0, 80 ) -polygons = [ PoolIntArray( 0, 1, 2, 3 ) ] - -[sub_resource type="NavigationPolygon" id=14] -vertices = PoolVector2Array( 0, 0, 80, 0, 80, 80, 0, 80 ) -polygons = [ PoolIntArray( 0, 1, 2, 3 ) ] - -[sub_resource type="NavigationPolygon" id=15] -vertices = PoolVector2Array( 0, 0, 80, 0, 80, 80, 0, 80 ) -polygons = [ PoolIntArray( 0, 1, 2, 3 ) ] - -[sub_resource type="NavigationPolygon" id=16] -vertices = PoolVector2Array( 80, 80, 0, 80, 0, 0, 80, 0 ) -polygons = [ PoolIntArray( 0, 1, 2, 3 ) ] - -[sub_resource type="NavigationPolygon" id=17] -vertices = PoolVector2Array( 0, 0, 80, 0, 80, 80, 0, 80 ) -polygons = [ PoolIntArray( 0, 1, 2, 3 ) ] - -[sub_resource type="NavigationPolygon" id=18] -vertices = PoolVector2Array( 0, 0, 80, 0, 80, 80, 0, 80 ) -polygons = [ PoolIntArray( 0, 1, 2, 3 ) ] - -[sub_resource type="NavigationPolygon" id=19] -vertices = PoolVector2Array( 0, 0, 80, 0, 80, 80, 0, 80 ) -polygons = [ PoolIntArray( 0, 1, 2, 3 ) ] - -[sub_resource type="NavigationPolygon" id=20] -vertices = PoolVector2Array( 0, 0, 80, 0, 80, 80, 0, 80 ) -polygons = [ PoolIntArray( 0, 1, 2, 3 ) ] - -[sub_resource type="NavigationPolygon" id=21] -vertices = PoolVector2Array( 0, 0, 80, 0, 80, 80, 0, 80 ) -polygons = [ PoolIntArray( 0, 1, 2, 3 ) ] - -[sub_resource type="NavigationPolygon" id=22] -vertices = PoolVector2Array( 0, 0, 80, 0, 80, 80, 0, 80 ) -polygons = [ PoolIntArray( 0, 1, 2, 3 ) ] - -[sub_resource type="TileSet" id=1] -0/name = "Grasslands.png 0" -0/texture = ExtResource( 5 ) -0/tex_offset = Vector2( 0, 0 ) -0/modulate = Color( 1, 1, 1, 1 ) -0/region = Rect2( 0, 0, 80, 80 ) -0/tile_mode = 0 -0/occluder_offset = Vector2( 0, 0 ) -0/navigation_offset = Vector2( 0, 0 ) -0/navigation = SubResource( 2 ) -0/shape_offset = Vector2( 0, 0 ) -0/shape_transform = Transform2D( 1, 0, 0, 1, 0, 0 ) -0/shape_one_way = false -0/shape_one_way_margin = 0.0 -0/shapes = [ ] -0/z_index = 0 -1/name = "Grasslands.png 1" -1/texture = ExtResource( 5 ) -1/tex_offset = Vector2( 0, 0 ) -1/modulate = Color( 1, 1, 1, 1 ) -1/region = Rect2( 80, 0, 80, 80 ) -1/tile_mode = 0 -1/occluder_offset = Vector2( 0, 0 ) -1/navigation_offset = Vector2( 0, 0 ) -1/shape_offset = Vector2( 0, 0 ) -1/shape_transform = Transform2D( 1, 0, 0, 1, 0, 0 ) -1/shape = SubResource( 3 ) -1/shape_one_way = false -1/shape_one_way_margin = 1.0 -1/shapes = [ { -"autotile_coord": Vector2( 0, 0 ), -"one_way": false, -"one_way_margin": 1.0, -"shape": SubResource( 3 ), -"shape_transform": Transform2D( 1, 0, 0, 1, 0, 0 ) -} ] -1/z_index = 0 -2/name = "Grasslands.png 2" -2/texture = ExtResource( 5 ) -2/tex_offset = Vector2( 0, 0 ) -2/modulate = Color( 1, 1, 1, 1 ) -2/region = Rect2( 160, 0, 80, 80 ) -2/tile_mode = 0 -2/occluder_offset = Vector2( 0, 0 ) -2/navigation_offset = Vector2( 0, 0 ) -2/shape_offset = Vector2( 0, 0 ) -2/shape_transform = Transform2D( 1, 0, 0, 1, 0, 0 ) -2/shape = SubResource( 4 ) -2/shape_one_way = false -2/shape_one_way_margin = 1.0 -2/shapes = [ { -"autotile_coord": Vector2( 0, 0 ), -"one_way": false, -"one_way_margin": 1.0, -"shape": SubResource( 4 ), -"shape_transform": Transform2D( 1, 0, 0, 1, 0, 0 ) -} ] -2/z_index = 0 -3/name = "Grasslands.png 3" -3/texture = ExtResource( 5 ) -3/tex_offset = Vector2( 0, 0 ) -3/modulate = Color( 1, 1, 1, 1 ) -3/region = Rect2( 240, 0, 80, 80 ) -3/tile_mode = 0 -3/occluder_offset = Vector2( 0, 0 ) -3/navigation_offset = Vector2( 0, 0 ) -3/shape_offset = Vector2( 0, 0 ) -3/shape_transform = Transform2D( 1, 0, 0, 1, 0, 0 ) -3/shape = SubResource( 5 ) -3/shape_one_way = false -3/shape_one_way_margin = 1.0 -3/shapes = [ { -"autotile_coord": Vector2( 0, 0 ), -"one_way": false, -"one_way_margin": 1.0, -"shape": SubResource( 5 ), -"shape_transform": Transform2D( 1, 0, 0, 1, 0, 0 ) -} ] -3/z_index = 0 -4/name = "Grasslands.png 4" -4/texture = ExtResource( 5 ) -4/tex_offset = Vector2( 0, 0 ) -4/modulate = Color( 1, 1, 1, 1 ) -4/region = Rect2( 320, 0, 80, 80 ) -4/tile_mode = 0 -4/occluder_offset = Vector2( 0, 0 ) -4/navigation_offset = Vector2( 0, 0 ) -4/shape_offset = Vector2( 0, 0 ) -4/shape_transform = Transform2D( 1, 0, 0, 1, 0, 0 ) -4/shape = SubResource( 6 ) -4/shape_one_way = false -4/shape_one_way_margin = 1.0 -4/shapes = [ { -"autotile_coord": Vector2( 0, 0 ), -"one_way": false, -"one_way_margin": 1.0, -"shape": SubResource( 6 ), -"shape_transform": Transform2D( 1, 0, 0, 1, 0, 0 ) -} ] -4/z_index = 0 -5/name = "Grasslands.png 5" -5/texture = ExtResource( 5 ) -5/tex_offset = Vector2( 0, 0 ) -5/modulate = Color( 1, 1, 1, 1 ) -5/region = Rect2( 0, 80, 560, 240 ) -5/tile_mode = 1 -5/autotile/bitmask_mode = 0 -5/autotile/bitmask_flags = [ ] -5/autotile/icon_coordinate = Vector2( 0, 0 ) -5/autotile/tile_size = Vector2( 80, 80 ) -5/autotile/spacing = 0 -5/autotile/occluder_map = [ ] -5/autotile/navpoly_map = [ Vector2( 0, 1 ), SubResource( 7 ), Vector2( 0, 2 ), SubResource( 8 ), Vector2( 1, 1 ), SubResource( 9 ), Vector2( 1, 2 ), SubResource( 10 ), Vector2( 2, 1 ), SubResource( 11 ), Vector2( 2, 2 ), SubResource( 12 ), Vector2( 3, 0 ), SubResource( 13 ), Vector2( 3, 1 ), SubResource( 14 ), Vector2( 3, 2 ), SubResource( 15 ), Vector2( 4, 0 ), SubResource( 16 ), Vector2( 4, 1 ), SubResource( 17 ), Vector2( 4, 2 ), SubResource( 18 ), Vector2( 5, 0 ), SubResource( 19 ), Vector2( 5, 1 ), SubResource( 20 ), Vector2( 5, 2 ), SubResource( 21 ), Vector2( 6, 0 ), SubResource( 22 ) ] -5/autotile/priority_map = [ ] -5/autotile/z_index_map = [ ] -5/occluder_offset = Vector2( 0, 0 ) -5/navigation_offset = Vector2( 0, 0 ) -5/shape_offset = Vector2( 0, 0 ) -5/shape_transform = Transform2D( 1, 0, 0, 1, 0, 0 ) -5/shape_one_way = false -5/shape_one_way_margin = 0.0 -5/shapes = [ ] -5/z_index = 0 - -[node name="Node2D" type="Node"] -script = ExtResource( 3 ) - -[node name="Navigation2D" type="Navigation2D" parent="."] - -[node name="TileMap" type="TileMap" parent="Navigation2D"] -tile_set = SubResource( 1 ) -cell_size = Vector2( 80, 80 ) -format = 1 -tile_data = PoolIntArray( 65534, 0, 0, 65535, 0, 0, 0, 0, 0, 1, 0, 0, 2, 0, 0, 3, 1, 0, 4, 0, 0, 5, 0, 0, 6, 0, 0, 7, 3, 0, 8, 0, 0, 9, 0, 0, 10, 0, 0, 11, 0, 0, 12, 0, 0, 13, 0, 0, 131069, 0, 0, 131070, 0, 0, 131071, 0, 0, 65536, 0, 0, 65537, 0, 0, 65538, 0, 0, 65539, 1, 0, 65540, 0, 0, 65541, 2, 0, 65542, 0, 0, 65543, 3, 0, 65544, 0, 0, 65545, 0, 0, 65546, 0, 0, 65547, 0, 0, 65548, 0, 0, 65549, 0, 0, 65550, 0, 0, 65551, 0, 0, 65552, 0, 0, 65553, 0, 0, 196604, 0, 0, 196605, 0, 0, 196606, 0, 0, 196607, 0, 0, 131072, 0, 0, 131073, 0, 0, 131074, 0, 0, 131075, 1, 0, 131076, 0, 0, 131077, 2, 0, 131078, 0, 0, 131079, 3, 0, 131080, 0, 0, 131081, 4, 0, 131082, 4, 0, 131083, 4, 0, 131084, 0, 0, 131085, 0, 0, 131086, 0, 0, 131087, 0, 0, 131088, 0, 0, 262140, 0, 0, 262142, 0, 0, 262143, 0, 0, 196608, 0, 0, 196609, 0, 0, 196610, 0, 0, 196611, 1, 0, 196612, 0, 0, 196613, 2, 0, 196614, 0, 0, 196615, 3, 0, 196616, 0, 0, 196617, 4, 0, 196618, 0, 0, 196619, 0, 0, 196620, 0, 0, 327676, 0, 0, 327677, 0, 0, 327678, 0, 0, 327679, 0, 0, 262144, 0, 0, 262145, 0, 0, 262146, 0, 0, 262147, 1, 0, 262148, 0, 0, 262149, 2, 0, 262150, 0, 0, 262151, 3, 0, 262152, 0, 0, 262153, 4, 0, 262154, 0, 0, 262155, 0, 0, 262156, 0, 0, 393210, 0, 0, 393211, 0, 0, 393212, 0, 0, 393213, 0, 0, 393214, 0, 0, 393215, 0, 0, 327680, 0, 0, 327681, 0, 0, 327682, 0, 0, 327683, 0, 0, 327684, 0, 0, 327685, 2, 0, 327686, 0, 0, 327687, 0, 0, 327688, 0, 0, 327689, 4, 0, 327690, 4, 0, 327691, 0, 0, 327692, 0, 0, 393216, 0, 0, 393217, 0, 0, 393218, 0, 0, 393219, 0, 0, 393220, 0, 0, 393221, 2, 0, 393222, 0, 0, 393223, 0, 0, 393224, 0, 0, 393225, 0, 0, 393226, 4, 0, 393227, 0, 0 ) - -[node name="Player" type="Sprite" parent="."] -position = Vector2( 150.021, 142.539 ) -scale = Vector2( 0.211144, 0.211144 ) -texture = ExtResource( 1 ) -script = ExtResource( 4 ) - -[node name="Shadow" type="Sprite" parent="Player"] -position = Vector2( -12.9122, 228.23 ) -scale = Vector2( 2.38618, 2.38618 ) -texture = ExtResource( 2 ) - -[node name="Line2D" type="Line2D" parent="."] diff --git a/scene/demo09_canvas/BarlowCondensed-Bold.ttf b/scene/demo09_canvas/BarlowCondensed-Bold.ttf deleted file mode 100644 index 8fbdd9b..0000000 Binary files a/scene/demo09_canvas/BarlowCondensed-Bold.ttf and /dev/null differ diff --git a/scene/demo09_canvas/canvas.tscn b/scene/demo09_canvas/canvas.tscn deleted file mode 100644 index 275008e..0000000 --- a/scene/demo09_canvas/canvas.tscn +++ /dev/null @@ -1,6 +0,0 @@ -[gd_scene load_steps=2 format=2] - -[ext_resource path="res://script/demo09_canvas/canvas.gd" type="Script" id=1] - -[node name="Node2D" type="Node2D"] -script = ExtResource( 1 ) diff --git a/scene/demo10_animation/animation.tscn b/scene/demo10_animation/animation.tscn deleted file mode 100644 index 0fec0b5..0000000 --- a/scene/demo10_animation/animation.tscn +++ /dev/null @@ -1,145 +0,0 @@ -[gd_scene load_steps=16 format=2] - -[ext_resource path="res://scene/demo10_animation/image/run-6.png" type="Texture" id=1] -[ext_resource path="res://scene/demo10_animation/image/run-5.png" type="Texture" id=2] -[ext_resource path="res://scene/demo10_animation/image/run-7.png" type="Texture" id=3] -[ext_resource path="res://icon.png" type="Texture" id=4] -[ext_resource path="res://scene/demo10_animation/image/run-8.png" type="Texture" id=5] -[ext_resource path="res://scene/demo10_animation/image/player.png" type="Texture" id=6] -[ext_resource path="res://scene/demo10_animation/image/run-4.png" type="Texture" id=7] -[ext_resource path="res://scene/demo10_animation/image/run-3.png" type="Texture" id=8] -[ext_resource path="res://scene/demo10_animation/image/run-1.png" type="Texture" id=9] -[ext_resource path="res://scene/demo10_animation/image/run-2.png" type="Texture" id=10] -[ext_resource path="res://script/demo10_animation/timer_animation.gd" type="Script" id=11] -[ext_resource path="res://script/demo10_animation/tween_animation.gd" type="Script" id=12] - -[sub_resource type="Animation" id=1] -resource_name = "my_animation_1" -length = 2.0 -loop = true -tracks/0/type = "value" -tracks/0/path = NodePath("icon:position") -tracks/0/interp = 1 -tracks/0/loop_wrap = true -tracks/0/imported = false -tracks/0/enabled = true -tracks/0/keys = { -"times": PoolRealArray( 0, 2 ), -"transitions": PoolRealArray( 1, 1 ), -"update": 0, -"values": [ Vector2( 319.48, 335.423 ), Vector2( 966.209, 326.747 ) ] -} -tracks/1/type = "value" -tracks/1/path = NodePath("icon:rotation_degrees") -tracks/1/interp = 1 -tracks/1/loop_wrap = true -tracks/1/imported = false -tracks/1/enabled = true -tracks/1/keys = { -"times": PoolRealArray( 0, 2 ), -"transitions": PoolRealArray( 1, 1 ), -"update": 0, -"values": [ 0.0, 0.0 ] -} -tracks/2/type = "value" -tracks/2/path = NodePath("icon:scale") -tracks/2/interp = 1 -tracks/2/loop_wrap = true -tracks/2/imported = false -tracks/2/enabled = true -tracks/2/keys = { -"times": PoolRealArray( 0, 2 ), -"transitions": PoolRealArray( 1, 1 ), -"update": 0, -"values": [ Vector2( 1, 1 ), Vector2( 1, 1 ) ] -} - -[sub_resource type="Animation" id=2] -resource_name = "animation_2" -length = 0.6 -loop = true -tracks/0/type = "value" -tracks/0/path = NodePath("player:frame") -tracks/0/interp = 1 -tracks/0/loop_wrap = true -tracks/0/imported = false -tracks/0/enabled = true -tracks/0/keys = { -"times": PoolRealArray( 0, 0.1, 0.2, 0.3, 0.4, 0.5 ), -"transitions": PoolRealArray( 1, 1, 1, 1, 1, 1 ), -"update": 1, -"values": [ 0, 1, 2, 3, 4, 5 ] -} - -[sub_resource type="SpriteFrames" id=3] -animations = [ { -"frames": [ ExtResource( 9 ), ExtResource( 10 ), ExtResource( 8 ), ExtResource( 7 ), ExtResource( 2 ), ExtResource( 1 ), ExtResource( 3 ), ExtResource( 5 ) ], -"loop": true, -"name": "default", -"speed": 7.0 -} ] - -[node name="Node2D" type="Node2D"] - -[node name="Animation_1" type="Node2D" parent="."] - -[node name="Sprite" type="Sprite" parent="Animation_1"] -position = Vector2( 317.024, 70.0791 ) -scale = Vector2( 1.70913, 1.70913 ) -texture = ExtResource( 6 ) -hframes = 60 -script = ExtResource( 11 ) - -[node name="Timer" type="Timer" parent="Animation_1/Sprite"] -wait_time = 0.1 -autostart = true - -[node name="Animation_2" type="Node2D" parent="."] - -[node name="Sprite" type="Sprite" parent="Animation_2"] -position = Vector2( 307.681, 157.511 ) -texture = ExtResource( 4 ) -script = ExtResource( 12 ) - -[node name="Tween" type="Tween" parent="Animation_2/Sprite"] -repeat = true -playback/repeat = true - -[node name="TargetPosition" type="Sprite" parent="."] -position = Vector2( 928.381, 170.859 ) -texture = ExtResource( 4 ) - -[node name="Animation_3" type="Node2D" parent="."] - -[node name="icon" type="Sprite" parent="Animation_3"] -position = Vector2( 966.209, 326.747 ) -texture = ExtResource( 4 ) - -[node name="AnimationPlayer" type="AnimationPlayer" parent="Animation_3"] -autoplay = "my_animation_1" -anims/my_animation_1 = SubResource( 1 ) - -[node name="Animation_4" type="Node2D" parent="."] - -[node name="player" type="Sprite" parent="Animation_4"] -position = Vector2( 319.802, 425.747 ) -scale = Vector2( 1.86179, 1.57452 ) -texture = ExtResource( 6 ) -hframes = 60 - -[node name="AnimationPlayer" type="AnimationPlayer" parent="Animation_4"] -autoplay = "animation_2" -anims/animation_2 = SubResource( 2 ) - -[node name="Animation_5" type="Node2D" parent="."] -position = Vector2( 308.251, 522.067 ) -__meta__ = { -"_edit_group_": true -} - -[node name="AnimatedSprite" type="AnimatedSprite" parent="Animation_5"] -frames = SubResource( 3 ) -frame = 7 -playing = true - -[connection signal="timeout" from="Animation_1/Sprite/Timer" to="Animation_1/Sprite" method="_on_Timer_timeout"] diff --git a/scene/demo10_animation/image/player.png b/scene/demo10_animation/image/player.png deleted file mode 100644 index 6c7ff1b..0000000 Binary files a/scene/demo10_animation/image/player.png and /dev/null differ diff --git a/scene/demo10_animation/image/player.png.import b/scene/demo10_animation/image/player.png.import deleted file mode 100644 index c9fe29f..0000000 --- a/scene/demo10_animation/image/player.png.import +++ /dev/null @@ -1,34 +0,0 @@ -[remap] - -importer="texture" -type="StreamTexture" -path="res://.import/player.png-e28fee2dde34564549f6b47bedcbb62e.stex" -metadata={ -"vram_texture": false -} - -[deps] - -source_file="res://scene/demo10_animation/image/player.png" -dest_files=[ "res://.import/player.png-e28fee2dde34564549f6b47bedcbb62e.stex" ] - -[params] - -compress/mode=0 -compress/lossy_quality=0.7 -compress/hdr_mode=0 -compress/bptc_ldr=0 -compress/normal_map=0 -flags/repeat=0 -flags/filter=true -flags/mipmaps=false -flags/anisotropic=false -flags/srgb=2 -process/fix_alpha_border=true -process/premult_alpha=false -process/HDR_as_SRGB=false -process/invert_color=false -stream=false -size_limit=0 -detect_3d=true -svg/scale=1.0 diff --git a/scene/demo10_animation/image/run-1.png b/scene/demo10_animation/image/run-1.png deleted file mode 100644 index 23d6bc8..0000000 Binary files a/scene/demo10_animation/image/run-1.png and /dev/null differ diff --git a/scene/demo10_animation/image/run-1.png.import b/scene/demo10_animation/image/run-1.png.import deleted file mode 100644 index 6f687c6..0000000 --- a/scene/demo10_animation/image/run-1.png.import +++ /dev/null @@ -1,34 +0,0 @@ -[remap] - -importer="texture" -type="StreamTexture" -path="res://.import/run-1.png-3280c05cb0e4f0094bf9a065f1c420ed.stex" -metadata={ -"vram_texture": false -} - -[deps] - -source_file="res://scene/demo10_animation/image/run-1.png" -dest_files=[ "res://.import/run-1.png-3280c05cb0e4f0094bf9a065f1c420ed.stex" ] - -[params] - -compress/mode=0 -compress/lossy_quality=0.7 -compress/hdr_mode=0 -compress/bptc_ldr=0 -compress/normal_map=0 -flags/repeat=0 -flags/filter=true -flags/mipmaps=false -flags/anisotropic=false -flags/srgb=2 -process/fix_alpha_border=true -process/premult_alpha=false -process/HDR_as_SRGB=false -process/invert_color=false -stream=false -size_limit=0 -detect_3d=true -svg/scale=1.0 diff --git a/scene/demo10_animation/image/run-2.png b/scene/demo10_animation/image/run-2.png deleted file mode 100644 index 9c8e2f3..0000000 Binary files a/scene/demo10_animation/image/run-2.png and /dev/null differ diff --git a/scene/demo10_animation/image/run-2.png.import b/scene/demo10_animation/image/run-2.png.import deleted file mode 100644 index 1f00714..0000000 --- a/scene/demo10_animation/image/run-2.png.import +++ /dev/null @@ -1,34 +0,0 @@ -[remap] - -importer="texture" -type="StreamTexture" -path="res://.import/run-2.png-c6dd0e2a0fd44ecce64d51822fe106eb.stex" -metadata={ -"vram_texture": false -} - -[deps] - -source_file="res://scene/demo10_animation/image/run-2.png" -dest_files=[ "res://.import/run-2.png-c6dd0e2a0fd44ecce64d51822fe106eb.stex" ] - -[params] - -compress/mode=0 -compress/lossy_quality=0.7 -compress/hdr_mode=0 -compress/bptc_ldr=0 -compress/normal_map=0 -flags/repeat=0 -flags/filter=true -flags/mipmaps=false -flags/anisotropic=false -flags/srgb=2 -process/fix_alpha_border=true -process/premult_alpha=false -process/HDR_as_SRGB=false -process/invert_color=false -stream=false -size_limit=0 -detect_3d=true -svg/scale=1.0 diff --git a/scene/demo10_animation/image/run-3.png b/scene/demo10_animation/image/run-3.png deleted file mode 100644 index d001234..0000000 Binary files a/scene/demo10_animation/image/run-3.png and /dev/null differ diff --git a/scene/demo10_animation/image/run-3.png.import b/scene/demo10_animation/image/run-3.png.import deleted file mode 100644 index c4f8d28..0000000 --- a/scene/demo10_animation/image/run-3.png.import +++ /dev/null @@ -1,34 +0,0 @@ -[remap] - -importer="texture" -type="StreamTexture" -path="res://.import/run-3.png-a7f3ee534265c5117fb56b89486b5e55.stex" -metadata={ -"vram_texture": false -} - -[deps] - -source_file="res://scene/demo10_animation/image/run-3.png" -dest_files=[ "res://.import/run-3.png-a7f3ee534265c5117fb56b89486b5e55.stex" ] - -[params] - -compress/mode=0 -compress/lossy_quality=0.7 -compress/hdr_mode=0 -compress/bptc_ldr=0 -compress/normal_map=0 -flags/repeat=0 -flags/filter=true -flags/mipmaps=false -flags/anisotropic=false -flags/srgb=2 -process/fix_alpha_border=true -process/premult_alpha=false -process/HDR_as_SRGB=false -process/invert_color=false -stream=false -size_limit=0 -detect_3d=true -svg/scale=1.0 diff --git a/scene/demo10_animation/image/run-4.png b/scene/demo10_animation/image/run-4.png deleted file mode 100644 index 8e9b71b..0000000 Binary files a/scene/demo10_animation/image/run-4.png and /dev/null differ diff --git a/scene/demo10_animation/image/run-4.png.import b/scene/demo10_animation/image/run-4.png.import deleted file mode 100644 index c888ffe..0000000 --- a/scene/demo10_animation/image/run-4.png.import +++ /dev/null @@ -1,34 +0,0 @@ -[remap] - -importer="texture" -type="StreamTexture" -path="res://.import/run-4.png-5f322ba121a10ba33f069dd9c25a1035.stex" -metadata={ -"vram_texture": false -} - -[deps] - -source_file="res://scene/demo10_animation/image/run-4.png" -dest_files=[ "res://.import/run-4.png-5f322ba121a10ba33f069dd9c25a1035.stex" ] - -[params] - -compress/mode=0 -compress/lossy_quality=0.7 -compress/hdr_mode=0 -compress/bptc_ldr=0 -compress/normal_map=0 -flags/repeat=0 -flags/filter=true -flags/mipmaps=false -flags/anisotropic=false -flags/srgb=2 -process/fix_alpha_border=true -process/premult_alpha=false -process/HDR_as_SRGB=false -process/invert_color=false -stream=false -size_limit=0 -detect_3d=true -svg/scale=1.0 diff --git a/scene/demo10_animation/image/run-5.png b/scene/demo10_animation/image/run-5.png deleted file mode 100644 index cbc8ed2..0000000 Binary files a/scene/demo10_animation/image/run-5.png and /dev/null differ diff --git a/scene/demo10_animation/image/run-5.png.import b/scene/demo10_animation/image/run-5.png.import deleted file mode 100644 index b90b9ce..0000000 --- a/scene/demo10_animation/image/run-5.png.import +++ /dev/null @@ -1,34 +0,0 @@ -[remap] - -importer="texture" -type="StreamTexture" -path="res://.import/run-5.png-6dc8b7d6582a966a0b43c5375057d646.stex" -metadata={ -"vram_texture": false -} - -[deps] - -source_file="res://scene/demo10_animation/image/run-5.png" -dest_files=[ "res://.import/run-5.png-6dc8b7d6582a966a0b43c5375057d646.stex" ] - -[params] - -compress/mode=0 -compress/lossy_quality=0.7 -compress/hdr_mode=0 -compress/bptc_ldr=0 -compress/normal_map=0 -flags/repeat=0 -flags/filter=true -flags/mipmaps=false -flags/anisotropic=false -flags/srgb=2 -process/fix_alpha_border=true -process/premult_alpha=false -process/HDR_as_SRGB=false -process/invert_color=false -stream=false -size_limit=0 -detect_3d=true -svg/scale=1.0 diff --git a/scene/demo10_animation/image/run-6.png b/scene/demo10_animation/image/run-6.png deleted file mode 100644 index a05818d..0000000 Binary files a/scene/demo10_animation/image/run-6.png and /dev/null differ diff --git a/scene/demo10_animation/image/run-6.png.import b/scene/demo10_animation/image/run-6.png.import deleted file mode 100644 index eda4d52..0000000 --- a/scene/demo10_animation/image/run-6.png.import +++ /dev/null @@ -1,34 +0,0 @@ -[remap] - -importer="texture" -type="StreamTexture" -path="res://.import/run-6.png-af2f504c10c840072a12547b0a3c767b.stex" -metadata={ -"vram_texture": false -} - -[deps] - -source_file="res://scene/demo10_animation/image/run-6.png" -dest_files=[ "res://.import/run-6.png-af2f504c10c840072a12547b0a3c767b.stex" ] - -[params] - -compress/mode=0 -compress/lossy_quality=0.7 -compress/hdr_mode=0 -compress/bptc_ldr=0 -compress/normal_map=0 -flags/repeat=0 -flags/filter=true -flags/mipmaps=false -flags/anisotropic=false -flags/srgb=2 -process/fix_alpha_border=true -process/premult_alpha=false -process/HDR_as_SRGB=false -process/invert_color=false -stream=false -size_limit=0 -detect_3d=true -svg/scale=1.0 diff --git a/scene/demo10_animation/image/run-7.png b/scene/demo10_animation/image/run-7.png deleted file mode 100644 index c0848b4..0000000 Binary files a/scene/demo10_animation/image/run-7.png and /dev/null differ diff --git a/scene/demo10_animation/image/run-7.png.import b/scene/demo10_animation/image/run-7.png.import deleted file mode 100644 index a316dde..0000000 --- a/scene/demo10_animation/image/run-7.png.import +++ /dev/null @@ -1,34 +0,0 @@ -[remap] - -importer="texture" -type="StreamTexture" -path="res://.import/run-7.png-778e3a530cfcb29ce7258e12c61126fb.stex" -metadata={ -"vram_texture": false -} - -[deps] - -source_file="res://scene/demo10_animation/image/run-7.png" -dest_files=[ "res://.import/run-7.png-778e3a530cfcb29ce7258e12c61126fb.stex" ] - -[params] - -compress/mode=0 -compress/lossy_quality=0.7 -compress/hdr_mode=0 -compress/bptc_ldr=0 -compress/normal_map=0 -flags/repeat=0 -flags/filter=true -flags/mipmaps=false -flags/anisotropic=false -flags/srgb=2 -process/fix_alpha_border=true -process/premult_alpha=false -process/HDR_as_SRGB=false -process/invert_color=false -stream=false -size_limit=0 -detect_3d=true -svg/scale=1.0 diff --git a/scene/demo10_animation/image/run-8.png b/scene/demo10_animation/image/run-8.png deleted file mode 100644 index 7fa8fe4..0000000 Binary files a/scene/demo10_animation/image/run-8.png and /dev/null differ diff --git a/scene/demo10_animation/image/run-8.png.import b/scene/demo10_animation/image/run-8.png.import deleted file mode 100644 index 439a0ab..0000000 --- a/scene/demo10_animation/image/run-8.png.import +++ /dev/null @@ -1,34 +0,0 @@ -[remap] - -importer="texture" -type="StreamTexture" -path="res://.import/run-8.png-3d745ba5b7d037dda1ae54f02d2b148c.stex" -metadata={ -"vram_texture": false -} - -[deps] - -source_file="res://scene/demo10_animation/image/run-8.png" -dest_files=[ "res://.import/run-8.png-3d745ba5b7d037dda1ae54f02d2b148c.stex" ] - -[params] - -compress/mode=0 -compress/lossy_quality=0.7 -compress/hdr_mode=0 -compress/bptc_ldr=0 -compress/normal_map=0 -flags/repeat=0 -flags/filter=true -flags/mipmaps=false -flags/anisotropic=false -flags/srgb=2 -process/fix_alpha_border=true -process/premult_alpha=false -process/HDR_as_SRGB=false -process/invert_color=false -stream=false -size_limit=0 -detect_3d=true -svg/scale=1.0 diff --git a/scene/demo11_particle_light/image/white_square.png b/scene/demo11_particle_light/image/white_square.png deleted file mode 100644 index 45cdbe5..0000000 Binary files a/scene/demo11_particle_light/image/white_square.png and /dev/null differ diff --git a/scene/demo11_particle_light/image/white_square.png.import b/scene/demo11_particle_light/image/white_square.png.import deleted file mode 100644 index 5ebcf1e..0000000 --- a/scene/demo11_particle_light/image/white_square.png.import +++ /dev/null @@ -1,34 +0,0 @@ -[remap] - -importer="texture" -type="StreamTexture" -path="res://.import/white_square.png-1bf12a3951ac2e8d713316b3f8f54ac1.stex" -metadata={ -"vram_texture": false -} - -[deps] - -source_file="res://scene/demo11_particle_light/image/white_square.png" -dest_files=[ "res://.import/white_square.png-1bf12a3951ac2e8d713316b3f8f54ac1.stex" ] - -[params] - -compress/mode=0 -compress/lossy_quality=0.7 -compress/hdr_mode=0 -compress/bptc_ldr=0 -compress/normal_map=0 -flags/repeat=0 -flags/filter=true -flags/mipmaps=false -flags/anisotropic=false -flags/srgb=2 -process/fix_alpha_border=true -process/premult_alpha=false -process/HDR_as_SRGB=false -process/invert_color=false -stream=false -size_limit=0 -detect_3d=true -svg/scale=1.0 diff --git a/scene/demo11_particle_light/light.tscn b/scene/demo11_particle_light/light.tscn deleted file mode 100644 index 9a7f926..0000000 --- a/scene/demo11_particle_light/light.tscn +++ /dev/null @@ -1,28 +0,0 @@ -[gd_scene load_steps=2 format=2] - -[ext_resource path="res://scene/demo11_particle_light/image/white_square.png" type="Texture" id=1] - -[node name="Node2D" type="Node2D"] - -[node name="SpriteWhite1" type="Sprite" parent="."] -modulate = Color( 0.180392, 0.501961, 0.388235, 1 ) -position = Vector2( 158.801, 162.168 ) -scale = Vector2( 0.33008, 0.33008 ) -texture = ExtResource( 1 ) - -[node name="SpriteWhite2" type="Sprite" parent="."] -modulate = Color( 0.568627, 0.239216, 0.239216, 1 ) -position = Vector2( 388.318, 165.736 ) -scale = Vector2( 0.33008, 0.33008 ) -texture = ExtResource( 1 ) - -[node name="SpriteWhite3" type="Sprite" parent="."] -modulate = Color( 0.109804, 0.0784314, 0.482353, 1 ) -position = Vector2( 671.349, 157.411 ) -scale = Vector2( 0.33008, 0.33008 ) -texture = ExtResource( 1 ) - -[node name="Light2D" type="Light2D" parent="."] -position = Vector2( 497.817, 209.206 ) -scale = Vector2( 3.52112, 0.96036 ) -texture = ExtResource( 1 ) diff --git a/scene/demo11_particle_light/normal_map.tscn b/scene/demo11_particle_light/normal_map.tscn deleted file mode 100644 index da57435..0000000 --- a/scene/demo11_particle_light/normal_map.tscn +++ /dev/null @@ -1,16 +0,0 @@ -[gd_scene load_steps=4 format=2] - -[ext_resource path="res://scene/demo11_particle_light/normal_map/azagaya_n.png" type="Texture" id=1] -[ext_resource path="res://scene/demo11_particle_light/normal_map/azagaya.png" type="Texture" id=2] -[ext_resource path="res://scene/demo11_particle_light/normal_map/LightSprite.png" type="Texture" id=3] - -[node name="Node2D" type="Node2D"] - -[node name="azagaya" type="Sprite" parent="."] -position = Vector2( 270, 199.431 ) -texture = ExtResource( 2 ) -normal_map = ExtResource( 1 ) - -[node name="Light2D" type="Light2D" parent="."] -position = Vector2( 306.368, 226.998 ) -texture = ExtResource( 3 ) diff --git a/scene/demo11_particle_light/normal_map/LightSprite.png b/scene/demo11_particle_light/normal_map/LightSprite.png deleted file mode 100644 index b5b04d7..0000000 Binary files a/scene/demo11_particle_light/normal_map/LightSprite.png and /dev/null differ diff --git a/scene/demo11_particle_light/normal_map/LightSprite.png.import b/scene/demo11_particle_light/normal_map/LightSprite.png.import deleted file mode 100644 index 247046b..0000000 --- a/scene/demo11_particle_light/normal_map/LightSprite.png.import +++ /dev/null @@ -1,34 +0,0 @@ -[remap] - -importer="texture" -type="StreamTexture" -path="res://.import/LightSprite.png-c40d01886f4a6ec8b4377142d643177e.stex" -metadata={ -"vram_texture": false -} - -[deps] - -source_file="res://scene/demo11_particle_light/normal_map/LightSprite.png" -dest_files=[ "res://.import/LightSprite.png-c40d01886f4a6ec8b4377142d643177e.stex" ] - -[params] - -compress/mode=0 -compress/lossy_quality=0.7 -compress/hdr_mode=0 -compress/bptc_ldr=0 -compress/normal_map=0 -flags/repeat=0 -flags/filter=true -flags/mipmaps=false -flags/anisotropic=false -flags/srgb=2 -process/fix_alpha_border=true -process/premult_alpha=false -process/HDR_as_SRGB=false -process/invert_color=false -stream=false -size_limit=0 -detect_3d=true -svg/scale=1.0 diff --git a/scene/demo11_particle_light/normal_map/azagaya.png b/scene/demo11_particle_light/normal_map/azagaya.png deleted file mode 100644 index 355c8dc..0000000 Binary files a/scene/demo11_particle_light/normal_map/azagaya.png and /dev/null differ diff --git a/scene/demo11_particle_light/normal_map/azagaya.png.import b/scene/demo11_particle_light/normal_map/azagaya.png.import deleted file mode 100644 index ff2505c..0000000 --- a/scene/demo11_particle_light/normal_map/azagaya.png.import +++ /dev/null @@ -1,34 +0,0 @@ -[remap] - -importer="texture" -type="StreamTexture" -path="res://.import/azagaya.png-ad429dd9403620b051e8578587d08aea.stex" -metadata={ -"vram_texture": false -} - -[deps] - -source_file="res://scene/demo11_particle_light/normal_map/azagaya.png" -dest_files=[ "res://.import/azagaya.png-ad429dd9403620b051e8578587d08aea.stex" ] - -[params] - -compress/mode=0 -compress/lossy_quality=0.7 -compress/hdr_mode=0 -compress/bptc_ldr=0 -compress/normal_map=0 -flags/repeat=0 -flags/filter=true -flags/mipmaps=false -flags/anisotropic=false -flags/srgb=2 -process/fix_alpha_border=true -process/premult_alpha=false -process/HDR_as_SRGB=false -process/invert_color=false -stream=false -size_limit=0 -detect_3d=true -svg/scale=1.0 diff --git a/scene/demo11_particle_light/normal_map/azagaya_n.png b/scene/demo11_particle_light/normal_map/azagaya_n.png deleted file mode 100644 index 5a506f4..0000000 Binary files a/scene/demo11_particle_light/normal_map/azagaya_n.png and /dev/null differ diff --git a/scene/demo11_particle_light/normal_map/azagaya_n.png.import b/scene/demo11_particle_light/normal_map/azagaya_n.png.import deleted file mode 100644 index 05f3a9b..0000000 --- a/scene/demo11_particle_light/normal_map/azagaya_n.png.import +++ /dev/null @@ -1,34 +0,0 @@ -[remap] - -importer="texture" -type="StreamTexture" -path="res://.import/azagaya_n.png-5b93a8bb5a6286587518a775b01152a3.stex" -metadata={ -"vram_texture": false -} - -[deps] - -source_file="res://scene/demo11_particle_light/normal_map/azagaya_n.png" -dest_files=[ "res://.import/azagaya_n.png-5b93a8bb5a6286587518a775b01152a3.stex" ] - -[params] - -compress/mode=0 -compress/lossy_quality=0.7 -compress/hdr_mode=0 -compress/bptc_ldr=0 -compress/normal_map=0 -flags/repeat=0 -flags/filter=true -flags/mipmaps=false -flags/anisotropic=false -flags/srgb=2 -process/fix_alpha_border=true -process/premult_alpha=false -process/HDR_as_SRGB=false -process/invert_color=false -stream=false -size_limit=0 -detect_3d=true -svg/scale=1.0 diff --git a/scene/demo11_particle_light/normal_map/simplebrick.png b/scene/demo11_particle_light/normal_map/simplebrick.png deleted file mode 100644 index 48a9226..0000000 Binary files a/scene/demo11_particle_light/normal_map/simplebrick.png and /dev/null differ diff --git a/scene/demo11_particle_light/normal_map/simplebrick.png.import b/scene/demo11_particle_light/normal_map/simplebrick.png.import deleted file mode 100644 index 13543da..0000000 --- a/scene/demo11_particle_light/normal_map/simplebrick.png.import +++ /dev/null @@ -1,34 +0,0 @@ -[remap] - -importer="texture" -type="StreamTexture" -path="res://.import/simplebrick.png-5e16cb9c113a4ed9a022f89e50a799bc.stex" -metadata={ -"vram_texture": false -} - -[deps] - -source_file="res://scene/demo11_particle_light/normal_map/simplebrick.png" -dest_files=[ "res://.import/simplebrick.png-5e16cb9c113a4ed9a022f89e50a799bc.stex" ] - -[params] - -compress/mode=0 -compress/lossy_quality=0.7 -compress/hdr_mode=0 -compress/bptc_ldr=0 -compress/normal_map=0 -flags/repeat=0 -flags/filter=true -flags/mipmaps=false -flags/anisotropic=false -flags/srgb=2 -process/fix_alpha_border=true -process/premult_alpha=false -process/HDR_as_SRGB=false -process/invert_color=false -stream=false -size_limit=0 -detect_3d=true -svg/scale=1.0 diff --git a/scene/demo11_particle_light/normal_map/simplebrick_n.png b/scene/demo11_particle_light/normal_map/simplebrick_n.png deleted file mode 100644 index 345f112..0000000 Binary files a/scene/demo11_particle_light/normal_map/simplebrick_n.png and /dev/null differ diff --git a/scene/demo11_particle_light/normal_map/simplebrick_n.png.import b/scene/demo11_particle_light/normal_map/simplebrick_n.png.import deleted file mode 100644 index 725fcf8..0000000 --- a/scene/demo11_particle_light/normal_map/simplebrick_n.png.import +++ /dev/null @@ -1,34 +0,0 @@ -[remap] - -importer="texture" -type="StreamTexture" -path="res://.import/simplebrick_n.png-b5f5247c3aa4e49d79ccb3dd8d40a42e.stex" -metadata={ -"vram_texture": false -} - -[deps] - -source_file="res://scene/demo11_particle_light/normal_map/simplebrick_n.png" -dest_files=[ "res://.import/simplebrick_n.png-b5f5247c3aa4e49d79ccb3dd8d40a42e.stex" ] - -[params] - -compress/mode=0 -compress/lossy_quality=0.7 -compress/hdr_mode=0 -compress/bptc_ldr=0 -compress/normal_map=0 -flags/repeat=0 -flags/filter=true -flags/mipmaps=false -flags/anisotropic=false -flags/srgb=2 -process/fix_alpha_border=true -process/premult_alpha=false -process/HDR_as_SRGB=false -process/invert_color=false -stream=false -size_limit=0 -detect_3d=true -svg/scale=1.0 diff --git a/scene/demo11_particle_light/occlude.tscn b/scene/demo11_particle_light/occlude.tscn deleted file mode 100644 index 147ec4c..0000000 --- a/scene/demo11_particle_light/occlude.tscn +++ /dev/null @@ -1,40 +0,0 @@ -[gd_scene load_steps=4 format=2] - -[ext_resource path="res://scene/demo11_particle_light/image/white_square.png" type="Texture" id=1] -[ext_resource path="res://icon.png" type="Texture" id=2] - -[sub_resource type="OccluderPolygon2D" id=1] -polygon = PoolVector2Array( -149.743, -150.861, -148.283, 150.259, 150.348, 150.259, 150.348, -151.244 ) - -[node name="Node2D" type="Node2D"] - -[node name="Background" type="Sprite" parent="."] -modulate = Color( 0.427451, 0.392157, 0.392157, 1 ) -light_mask = 3 -position = Vector2( 514.927, 190.273 ) -scale = Vector2( 3, 100 ) -texture = ExtResource( 1 ) - -[node name="Shadow" type="Sprite" parent="."] -modulate = Color( 0.490196, 0.0509804, 0.541176, 1 ) -position = Vector2( 478.061, 140.326 ) -scale = Vector2( 0.31026, 0.31026 ) -texture = ExtResource( 1 ) - -[node name="LightOccluder2D" type="LightOccluder2D" parent="Shadow"] -light_mask = 2 -occluder = SubResource( 1 ) -light_mask = 2 - -[node name="Light" type="Sprite" parent="."] -position = Vector2( 462.666, 380.919 ) -texture = ExtResource( 2 ) -__meta__ = { -"_edit_group_": true -} - -[node name="Light2D" type="Light2D" parent="Light"] -scale = Vector2( 10, 10 ) -texture = ExtResource( 1 ) -shadow_enabled = true -shadow_item_cull_mask = 2 diff --git a/scene/demo11_particle_light/particle1.tscn b/scene/demo11_particle_light/particle1.tscn deleted file mode 100644 index f8a8b30..0000000 --- a/scene/demo11_particle_light/particle1.tscn +++ /dev/null @@ -1,37 +0,0 @@ -[gd_scene load_steps=7 format=2] - -[ext_resource path="res://scene/demo11_particle_light/image/white_square.png" type="Texture" id=1] - -[sub_resource type="Gradient" id=1] -colors = PoolColorArray( 0.29541, 0.150013, 0.150013, 1, 0.682129, 0.167868, 0.167868, 1 ) - -[sub_resource type="GradientTexture" id=2] -gradient = SubResource( 1 ) - -[sub_resource type="Curve" id=3] -_data = [ Vector2( 0.0592105, 0.263636 ), 0.0, 0.0, 0, 0, Vector2( 0.532895, 0.745454 ), 0.0, 0.0, 0, 0, Vector2( 0.967105, 0.327273 ), 0.0, 0.0, 0, 0 ] - -[sub_resource type="CurveTexture" id=4] -curve = SubResource( 3 ) - -[sub_resource type="ParticlesMaterial" id=5] -flag_disable_z = true -direction = Vector3( 0, -1, 0 ) -spread = 10.0 -gravity = Vector3( 0, 0, 0 ) -initial_velocity = 441.86 -angular_velocity = 200.93 -orbit_velocity = 0.0 -orbit_velocity_random = 0.0 -scale = 0.2 -scale_random = 0.36 -scale_curve = SubResource( 4 ) -color_ramp = SubResource( 2 ) - -[node name="Node2D" type="Node2D"] - -[node name="Particles2D" type="Particles2D" parent="."] -position = Vector2( 433.903, 489.402 ) -amount = 20 -process_material = SubResource( 5 ) -texture = ExtResource( 1 ) diff --git a/scene/demo12_gui/Source_Han_Sans.ttf b/scene/demo12_gui/Source_Han_Sans.ttf deleted file mode 100644 index ca36cb6..0000000 Binary files a/scene/demo12_gui/Source_Han_Sans.ttf and /dev/null differ diff --git a/scene/demo12_gui/anchor.tscn b/scene/demo12_gui/anchor.tscn deleted file mode 100644 index 9459126..0000000 --- a/scene/demo12_gui/anchor.tscn +++ /dev/null @@ -1,42 +0,0 @@ -[gd_scene load_steps=2 format=2] - -[ext_resource path="res://icon.png" type="Texture" id=1] - -[node name="Node2D" type="Node2D"] - -[node name="icon" type="Sprite" parent="."] -position = Vector2( 102.421, 70.9156 ) -texture = ExtResource( 1 ) - -[node name="ButtonParent" type="Button" parent="."] -margin_left = 323.666 -margin_top = 121.838 -margin_right = 376.666 -margin_bottom = 141.838 -text = "Parent" -__meta__ = { -"_edit_use_anchors_": false -} - -[node name="Button" type="Button" parent="ButtonParent"] -margin_right = 44.0 -margin_bottom = 20.0 -text = "Child" - -[node name="Control" type="Control" parent="."] -margin_left = 55.1478 -margin_top = 233.954 -margin_right = 216.148 -margin_bottom = 344.954 -__meta__ = { -"_edit_use_anchors_": false -} - -[node name="Label" type="Label" parent="Control"] -margin_right = 105.0 -margin_bottom = 14.0 -rect_pivot_offset = Vector2( 75.7402, 10.9574 ) -text = "aaaaaaaaaaaaaav" -__meta__ = { -"_edit_use_anchors_": false -} diff --git a/scene/demo12_gui/gui.tscn b/scene/demo12_gui/gui.tscn deleted file mode 100644 index 37031db..0000000 --- a/scene/demo12_gui/gui.tscn +++ /dev/null @@ -1,60 +0,0 @@ -[gd_scene load_steps=4 format=2] - -[ext_resource path="res://scene/demo12_gui/Source_Han_Sans.ttf" type="DynamicFontData" id=1] - -[sub_resource type="DynamicFont" id=1] -font_data = ExtResource( 1 ) - -[sub_resource type="DynamicFont" id=2] -font_data = ExtResource( 1 ) - -[node name="Node2D" type="Node2D"] - -[node name="Label" type="Label" parent="."] -margin_left = 25.2518 -margin_top = 20.3757 -margin_right = 91.2518 -margin_bottom = 44.3757 -rect_pivot_offset = Vector2( 37.8167, 12 ) -custom_fonts/font = SubResource( 1 ) -text = "label1你好" -__meta__ = { -"_edit_use_anchors_": false -} - -[node name="Label2" type="Label" parent="."] -margin_left = 25.6472 -margin_top = 62.6466 -margin_right = 143.647 -margin_bottom = 86.6466 -custom_fonts/font = SubResource( 2 ) -text = "有字体的lable" -__meta__ = { -"_edit_use_anchors_": false -} - -[node name="AcceptDialog" type="AcceptDialog" parent="."] -margin_left = 17.2379 -margin_top = 152.189 -margin_right = 136.238 -margin_bottom = 232.189 -dialog_text = "Are you OK?" - -[node name="Button" type="Button" parent="."] -margin_left = 41.0 -margin_top = 293.0 -margin_right = 105.0 -margin_bottom = 313.0 -text = "cancel" -__meta__ = { -"_edit_use_anchors_": false -} - -[node name="ColorRect" type="ColorRect" parent="."] -margin_left = 515.958 -margin_top = 14.3027 -margin_right = 697.958 -margin_bottom = 123.303 -__meta__ = { -"_edit_use_anchors_": false -} diff --git a/scene/demo13_camera/1.switch_camera.tscn b/scene/demo13_camera/1.switch_camera.tscn deleted file mode 100644 index 6e2042f..0000000 --- a/scene/demo13_camera/1.switch_camera.tscn +++ /dev/null @@ -1,39 +0,0 @@ -[gd_scene load_steps=3 format=2] - -[ext_resource path="res://icon.png" type="Texture" id=1] -[ext_resource path="res://script/demo13_camera/switch_camera.gd" type="Script" id=2] - -[node name="Node2D" type="Node2D"] -script = ExtResource( 2 ) - -[node name="icon" type="Sprite" parent="."] -modulate = Color( 0.964706, 0.0313726, 0.0313726, 1 ) -position = Vector2( -512, 300 ) -texture = ExtResource( 1 ) - -[node name="icon2" type="Sprite" parent="."] -modulate = Color( 0.882353, 0.796078, 0.0901961, 1 ) -position = Vector2( 512, 300 ) -texture = ExtResource( 1 ) - -[node name="icon3" type="Sprite" parent="."] -modulate = Color( 0.0588235, 0.152941, 0.584314, 1 ) -position = Vector2( -512, 900 ) -texture = ExtResource( 1 ) - -[node name="icon4" type="Sprite" parent="."] -modulate = Color( 0.0705882, 0.92549, 0.666667, 1 ) -position = Vector2( 512, 900 ) -texture = ExtResource( 1 ) - -[node name="Camera2D1" type="Camera2D" parent="."] -position = Vector2( -512, 300 ) - -[node name="Camera2D2" type="Camera2D" parent="."] -position = Vector2( 512, 300 ) - -[node name="Camera2D3" type="Camera2D" parent="."] -position = Vector2( -512, 900 ) - -[node name="Camera2D4" type="Camera2D" parent="."] -position = Vector2( 512, 900 ) diff --git a/scene/demo13_camera/2.move_camera.tscn b/scene/demo13_camera/2.move_camera.tscn deleted file mode 100644 index ab94046..0000000 --- a/scene/demo13_camera/2.move_camera.tscn +++ /dev/null @@ -1,25 +0,0 @@ -[gd_scene load_steps=3 format=2] - -[ext_resource path="res://script/demo13_camera/player.gd" type="Script" id=1] -[ext_resource path="res://icon.png" type="Texture" id=2] - -[node name="Node2D2" type="Node2D"] -position = Vector2( -82.76, 10.6787 ) - -[node name="icon" type="Sprite" parent="."] -modulate = Color( 0.141176, 0.878431, 0.117647, 1 ) -position = Vector2( -227.193, 239.648 ) -texture = ExtResource( 2 ) - -[node name="icon2" type="Sprite" parent="."] -modulate = Color( 0.054902, 0.533333, 0.815686, 1 ) -position = Vector2( 665.147, 246.323 ) -texture = ExtResource( 2 ) - -[node name="player" type="Sprite" parent="."] -position = Vector2( 77.117, 245.968 ) -texture = ExtResource( 2 ) -script = ExtResource( 1 ) - -[node name="Camera2D" type="Camera2D" parent="player"] -current = true diff --git a/scene/demo13_camera/3.simple_viewport.tscn b/scene/demo13_camera/3.simple_viewport.tscn deleted file mode 100644 index 8df2d41..0000000 --- a/scene/demo13_camera/3.simple_viewport.tscn +++ /dev/null @@ -1,38 +0,0 @@ -[gd_scene load_steps=3 format=2] - -[ext_resource path="res://icon.png" type="Texture" id=1] -[ext_resource path="res://script/demo13_camera/player.gd" type="Script" id=2] - -[node name="Node2D" type="Node2D"] - -[node name="icon" type="Sprite" parent="."] -position = Vector2( 73.0152, 64.7613 ) -texture = ExtResource( 1 ) - -[node name="Control" type="Control" parent="."] -margin_left = 1.0 -margin_right = 1024.0 -margin_bottom = 601.0 -__meta__ = { -"_edit_use_anchors_": false -} - -[node name="ViewportContainer" type="ViewportContainer" parent="Control"] -modulate = Color( 0.0352941, 0.894118, 0.65098, 1 ) -margin_left = 770.879 -margin_top = 437.506 -margin_right = 1020.88 -margin_bottom = 587.506 -__meta__ = { -"_edit_use_anchors_": false -} - -[node name="Viewport" type="Viewport" parent="Control/ViewportContainer"] -size = Vector2( 250, 150 ) -handle_input_locally = false -render_target_update_mode = 3 - -[node name="Sprite" type="Sprite" parent="Control/ViewportContainer/Viewport"] -position = Vector2( 100, 100 ) -texture = ExtResource( 1 ) -script = ExtResource( 2 ) diff --git a/scene/demo13_camera/4.mini.tscn b/scene/demo13_camera/4.mini.tscn deleted file mode 100644 index c5a0417..0000000 --- a/scene/demo13_camera/4.mini.tscn +++ /dev/null @@ -1,15 +0,0 @@ -[gd_scene load_steps=3 format=2] - -[ext_resource path="res://scene/demo13_camera/2.move_camera.tscn" type="PackedScene" id=1] -[ext_resource path="res://scene/demo13_camera/mini_viewport.tscn" type="PackedScene" id=2] - -[node name="Node2D" type="Node2D"] - -[node name="Node2D" parent="." instance=ExtResource( 1 )] - -[node name="CanvasLayer" type="CanvasLayer" parent="."] - -[node name="Control" parent="CanvasLayer" instance=ExtResource( 2 )] -modulate = Color( 0.894118, 0.792157, 0.792157, 1 ) -margin_right = 0.0 -margin_bottom = 0.0 diff --git a/scene/demo13_camera/mini_viewport.tscn b/scene/demo13_camera/mini_viewport.tscn deleted file mode 100644 index 72e4d98..0000000 --- a/scene/demo13_camera/mini_viewport.tscn +++ /dev/null @@ -1,30 +0,0 @@ -[gd_scene load_steps=2 format=2] - -[ext_resource path="res://scene/demo13_camera/2.move_camera.tscn" type="PackedScene" id=1] - -[node name="Control" type="Control"] -anchor_right = 1.0 -anchor_bottom = 1.0 -margin_right = -1024.0 -margin_bottom = -600.0 -__meta__ = { -"_edit_use_anchors_": false -} - -[node name="ViewportContainer" type="ViewportContainer" parent="."] -margin_left = 773.127 -margin_top = 444.248 -margin_right = 1023.13 -margin_bottom = 594.248 -__meta__ = { -"_edit_use_anchors_": false -} - -[node name="Viewport" type="Viewport" parent="ViewportContainer"] -size = Vector2( 250, 150 ) -handle_input_locally = false -render_target_update_mode = 3 - -[node name="Camera2D" type="Camera2D" parent="ViewportContainer/Viewport"] - -[node name="Node2D" parent="ViewportContainer/Viewport" instance=ExtResource( 1 )] diff --git a/scene/demo14_file/file.tscn b/scene/demo14_file/file.tscn deleted file mode 100644 index 29a18d9..0000000 --- a/scene/demo14_file/file.tscn +++ /dev/null @@ -1,6 +0,0 @@ -[gd_scene load_steps=2 format=2] - -[ext_resource path="res://script/demo14_file/file.gd" type="Script" id=1] - -[node name="Node2D" type="Node2D"] -script = ExtResource( 1 ) diff --git a/scene/demo15_audio/Follow Me - Andrew Langdon.mp4 b/scene/demo15_audio/Follow Me - Andrew Langdon.mp4 deleted file mode 100644 index d2b1323..0000000 Binary files a/scene/demo15_audio/Follow Me - Andrew Langdon.mp4 and /dev/null differ diff --git a/scene/demo15_audio/audio/Follow Me - Andrew Langdon.mp3 b/scene/demo15_audio/audio/Follow Me - Andrew Langdon.mp3 deleted file mode 100644 index 242b631..0000000 Binary files a/scene/demo15_audio/audio/Follow Me - Andrew Langdon.mp3 and /dev/null differ diff --git a/scene/demo15_audio/audio/Follow Me - Andrew Langdon.mp3.import b/scene/demo15_audio/audio/Follow Me - Andrew Langdon.mp3.import deleted file mode 100644 index e21f4b8..0000000 --- a/scene/demo15_audio/audio/Follow Me - Andrew Langdon.mp3.import +++ /dev/null @@ -1,15 +0,0 @@ -[remap] - -importer="mp3" -type="AudioStreamMP3" -path="res://.import/Follow Me - Andrew Langdon.mp3-208cd3bb30a229567f90fba5350fdc21.mp3str" - -[deps] - -source_file="res://scene/demo15_audio/audio/Follow Me - Andrew Langdon.mp3" -dest_files=[ "res://.import/Follow Me - Andrew Langdon.mp3-208cd3bb30a229567f90fba5350fdc21.mp3str" ] - -[params] - -loop=true -loop_offset=0 diff --git a/scene/demo15_audio/audio1.tscn b/scene/demo15_audio/audio1.tscn deleted file mode 100644 index 43710b9..0000000 --- a/scene/demo15_audio/audio1.tscn +++ /dev/null @@ -1,9 +0,0 @@ -[gd_scene load_steps=2 format=2] - -[ext_resource path="res://scene/demo15_audio/audio/Follow Me - Andrew Langdon.mp3" type="AudioStream" id=1] - -[node name="Node2D" type="Node2D"] - -[node name="AudioStreamPlayer" type="AudioStreamPlayer" parent="."] -stream = ExtResource( 1 ) -autoplay = true diff --git a/scene/demo15_audio/audio2.tscn b/scene/demo15_audio/audio2.tscn deleted file mode 100644 index b3c3f4d..0000000 --- a/scene/demo15_audio/audio2.tscn +++ /dev/null @@ -1,35 +0,0 @@ -[gd_scene load_steps=3 format=2] - -[ext_resource path="res://scene/demo15_audio/audio/Follow Me - Andrew Langdon.mp3" type="AudioStream" id=1] - -[sub_resource type="Animation" id=1] -resource_name = "music" -length = 10.0 -loop = true -tracks/0/type = "audio" -tracks/0/path = NodePath("AudioStreamPlayer") -tracks/0/interp = 1 -tracks/0/loop_wrap = true -tracks/0/imported = false -tracks/0/enabled = true -tracks/0/keys = { -"clips": [ { -"end_offset": 0.0, -"start_offset": 12.0, -"stream": ExtResource( 1 ) -}, { -"end_offset": 0.0, -"start_offset": 0.0, -"stream": null -} ], -"times": PoolRealArray( 0, 10.1 ) -} - -[node name="Node2D" type="Node2D"] - -[node name="AudioStreamPlayer" type="AudioStreamPlayer" parent="."] -stream = ExtResource( 1 ) - -[node name="AnimationPlayer" type="AnimationPlayer" parent="."] -autoplay = "music" -anims/music = SubResource( 1 ) diff --git a/scene/demo16_http/http.tscn b/scene/demo16_http/http.tscn deleted file mode 100644 index de53cd8..0000000 --- a/scene/demo16_http/http.tscn +++ /dev/null @@ -1,12 +0,0 @@ -[gd_scene load_steps=3 format=2] - -[ext_resource path="res://script/demo16_http/http_request.gd" type="Script" id=1] -[ext_resource path="res://script/demo16_http/http_utils.gd" type="Script" id=2] - -[node name="Node2D" type="Node2D"] - -[node name="HTTPRequest" type="HTTPRequest" parent="."] -script = ExtResource( 1 ) - -[node name="HttpUtils" type="Node2D" parent="."] -script = ExtResource( 2 ) diff --git a/scene/demo_test/demo_test.tscn b/scene/demo_test/demo_test.tscn deleted file mode 100644 index f882b8a..0000000 --- a/scene/demo_test/demo_test.tscn +++ /dev/null @@ -1,6 +0,0 @@ -[gd_scene load_steps=2 format=2] - -[ext_resource path="res://script/demo_test/demoTest.gd" type="Script" id=1] - -[node name="Node2D" type="Node2D"] -script = ExtResource( 1 ) diff --git a/script/demo01_hello/hello_world.gd b/script/demo01_hello/hello_world.gd deleted file mode 100644 index 518a987..0000000 --- a/script/demo01_hello/hello_world.gd +++ /dev/null @@ -1,11 +0,0 @@ -extends Node2D - - -# Declare member variables here. Examples: -# var a = 2 -# var b = "text" - - -# Called when the node enters the scene tree for the first time. -func _ready(): - print("Hello World") diff --git a/script/demo02_base/A.gd b/script/demo02_base/A.gd deleted file mode 100644 index 85d4571..0000000 --- a/script/demo02_base/A.gd +++ /dev/null @@ -1,4 +0,0 @@ -extends Reference - -# 表示B对象 -var b diff --git a/script/demo02_base/B.gd b/script/demo02_base/B.gd deleted file mode 100644 index ecab3e4..0000000 --- a/script/demo02_base/B.gd +++ /dev/null @@ -1,4 +0,0 @@ -extends Reference - -# 表示A对象 -var a diff --git a/script/demo02_base/CNode.gd b/script/demo02_base/CNode.gd deleted file mode 100644 index 06d59ed..0000000 --- a/script/demo02_base/CNode.gd +++ /dev/null @@ -1,4 +0,0 @@ -extends Node2D - -func _to_string(): - print("This is C Node2!") diff --git a/script/demo02_base/CReference.gd b/script/demo02_base/CReference.gd deleted file mode 100644 index be3e7ae..0000000 --- a/script/demo02_base/CReference.gd +++ /dev/null @@ -1,5 +0,0 @@ -# 如果没有继承任何类,则默认继承Reference -extends Reference - -func _to_string(): - print("This is C Reference!") diff --git a/script/demo02_base/MyClass.gd b/script/demo02_base/MyClass.gd deleted file mode 100644 index 385c20a..0000000 --- a/script/demo02_base/MyClass.gd +++ /dev/null @@ -1,177 +0,0 @@ -extends Node2D - -const StringUtils = preload("res://zfoo/util/StringUtils.gd") - -# (optional) class definition with a custom icon -class_name MyClass, "res://icon.png" - - - -# Member variables -# gds有5种基础类型,Boolean,Integer(Java long),Float(Java double),String,Null - -# &&=and ||=or !=not -var a = (true or false) && true -var b = 9223372036854775807 -var c = 1.5 -var s = "Hello" -var arr = [1, 2, 3] -var dict = { - 2: 3, - "key": "字符串作为key", - arr: "数组作为key" -} -var typed_var: int -var typed_var_float: float -var typed_var_bool: bool -var inferred_type: String = "String" - -# Constants - -const ANSWER = 42 -const THE_NAME = "Charly" - -# Enums - -enum {LEFT, RRIGHT, FRONT, BACK} -# 等价于 -# const LEFT = 0 -# const RIGHT = 1 -# const FRONT = 2 -# const BACK = 3 -enum FOOD {GOOD, NORMAL, BAD = -1} - -# Built-in vector types - -var v2 = Vector2(1, 2) -var v3 = Vector3(1, 2, 3) - -func _init(): - pass - -static func getAnswer(): - return ANSWER - -func typeInfo(): - var template = "[Variant:{}] [type:{}] [value:{}]" - print(StringUtils.format(template, [TYPE_BOOL, typeof(a), a])) - print(StringUtils.format(template, [TYPE_INT, typeof(b), b])) - print(StringUtils.format(template, [TYPE_INT, typeof(c), c])) - print(StringUtils.format(template, [TYPE_STRING, typeof(s), s])) - # print(StringUtils.format(template, [TYPE_ARRAY, typeof(arr), arr])) - print(StringUtils.format(template, [TYPE_DICTIONARY, typeof(dict), dict])) - print(StringUtils.format(template, [TYPE_DICTIONARY, typeof(FOOD), FOOD])) - print(StringUtils.format(template, [TYPE_DICTIONARY, typeof(FOOD.GOOD), FOOD.GOOD])) - # 在java中类似于this - print(self is Node) - print(a is Dog) # 类似于instanceof - -func if_function(param1, param2): - if param1 < param2: - print(param1) - elif param2 > 5: - print(param2) - else: - print("Fail!") - - -func switch_function(): - var local_var = 5 - - match local_var: - 1: - print("match1") - 2: - print("match2") - 5: - print("match5") - # continue - 6: - print("match6") - _: - print("match_") - - -func loop_function(): - for i in range(20): - print(i) - - var param = 10 - while param != 0: - param -= 1 - - return param - -# Function -func arrayIterator(): - # range等价于for(int i = 0; i < 20; i++) - print("数组遍历方法1:") - for i in range(3): - print(i) - print("数组遍历方法2:") - for ele in arr: - print(ele) - print("数组遍历方法3:") - for index in range(arr.size()): - print(arr[index]) - - -func dictionaryIterator(): - print("字典遍历方法1:") - for key in dict: - print("key:" + key as String) - print("value:" + dict[key] as String) - - print("字典遍历方法2:") - for key in dict.keys(): - print("key:" + key as String) - print("value:" + dict[key] as String) - - print("字典遍历方法3:") - for value in dict.values(): - print("value:" + value as String) - - - - -func innerClassTest(): - var dog = Dog.new(1) - dog.move() - - dog.info() - dog.height = 2 - dog.info() - -# Inner class,默认继承Object -class Animal: - extends Object # 如果不指定继承的类,默认基础Object - const STATIC_FIELD = "静态变量" - # 属性 - var height: int - - func _init(): - print("Animal 构造方法") - - func move(): - print("animal,移动") - - static func staticFuction(): - pass - -class Dog: - extends Animal - - # Constructor - func _init(height): - self.height = height - print("Dog 构造方法") - - # Functions override functions with the same name on the base/parent class. - func move(): - print("dog,用4个脚跑") - # If you still want to call them, use '.' (like 'super' in other languages). - .move() - - func info(parm = 100): - print("height:" + height as String) - diff --git a/script/demo02_base/base1.gd b/script/demo02_base/base1.gd deleted file mode 100644 index 93323f7..0000000 --- a/script/demo02_base/base1.gd +++ /dev/null @@ -1,59 +0,0 @@ -extends Node2D - - -# 导出一个数字 -export var a = 1 -# 导出一个节点路径 -export var b:NodePath -# 导出一个节点路径,不同的写法 -export(NodePath) var c -# 导出一个文件路径 -export(String, FILE) var e -# 导出一个文件路径,以txt结尾 -export(String, FILE, "*.txt") var d -# 导出一个资源文件路径 -export(Resource) var f -# 导出一个颜色 -export(Color, RGB) var g - -func _init(): - print("init") - - -# Called when the node enters the scene tree for the first time. -func _ready(): - print("ready") - print("new一个对象--------------------------------") - var myClass = MyClass.new() - print(myClass.to_string()) - - print("数据类型信息--------------------------------") - myClass.typeInfo() - - print("基础语法if else--------------------------------") - myClass.if_function(1, 2) - - print("基础语法switch--------------------------------") - myClass.switch_function() - - print("基础语法while for--------------------------------") - myClass.loop_function() - - print("数组遍历--------------------------------") - myClass.arrayIterator() - - print("字典遍历--------------------------------") - myClass.dictionaryIterator() - - print("访问静态变量--------------------------------") - var answer = MyClass.ANSWER - print("访问const变量,类似于static变量:" + answer as String) - - print("调用静态方法--------------------------------") - print("调用静态方法:" + MyClass.getAnswer() as String) - - - print("内部类测试--------------------------------") - myClass.innerClassTest() - - diff --git a/script/demo02_base/base2.gd b/script/demo02_base/base2.gd deleted file mode 100644 index 28bc8f1..0000000 --- a/script/demo02_base/base2.gd +++ /dev/null @@ -1,46 +0,0 @@ -extends Node2D - -const CNode = preload("res://script/demo02_base/CNode.gd") -const CReference = preload("res://script/demo02_base/CReference.gd") - -# monitor初探 -func _ready(): - #nodeTest() - #nodeFreeTest() - #nodeQueueFreeTest() - #referenceTest() - #referenceFreeTest() - referencUnreferenceTest() - pass - - -func nodeTest(): - for i in range(10000): - var instance = CNode.new() - - -func nodeFreeTest(): - for i in range(10000): - var instance = CNode.new() - instance.free() - -# queue_free效率更高 -func nodeQueueFreeTest(): - for i in range(10000): - var instance = CNode.new() - instance.queue_free() - -func referenceTest(): - for i in range(10000): - var instance = CReference.new() - - -func referenceFreeTest(): - for i in range(10000): - var instance = CReference.new() - instance.free() - -func referencUnreferenceTest(): - for i in range(10000): - var instance = CReference.new() - instance.unreference() diff --git a/script/demo02_base/base3.gd b/script/demo02_base/base3.gd deleted file mode 100644 index 12f59dd..0000000 --- a/script/demo02_base/base3.gd +++ /dev/null @@ -1,38 +0,0 @@ -extends Node2D - -const A = preload("res://script/demo02_base/A.gd") -const B = preload("res://script/demo02_base/B.gd") - -func _ready(): - #referenceTest() - #referenceCycleTest() - referenceUnreference1Test() - #referenceUnreference2Test() - pass - - -func referenceTest(): - var a = A.new() - var b = B.new() - -func referenceCycleTest(): - var a = A.new() - var b = B.new() - a.b = b - b.a = a - - -func referenceUnreference1Test(): - var a = A.new() - var b = B.new() - a.b = b - b.a = a - a.unreference() - -func referenceUnreference2Test(): - var a = A.new() - var b = B.new() - a.b = b - b.a = a - a.unreference() - b.unreference() diff --git a/script/demo02_base/base4.gd b/script/demo02_base/base4.gd deleted file mode 100644 index f511a48..0000000 --- a/script/demo02_base/base4.gd +++ /dev/null @@ -1,28 +0,0 @@ -extends Node2D - - -func _ready(): - # new一个Sprite节点 - var sprite = Sprite.new() - - # 设置图片 - var icon = preload("res://icon.png") - sprite.set_texture(icon) - - # 修改名称 - sprite.name = "mynode" - - # 修改坐标居中 - sprite.position.x = 200 - sprite.position.y = 200 - - # 添加到当前的场景中 - add_child(sprite) - pass - - - -func _process(delta): - var sprite = $mynode - sprite.rotate(0.1) - pass diff --git a/script/demo03_lifecycle/parent.gd b/script/demo03_lifecycle/parent.gd deleted file mode 100644 index 1251831..0000000 --- a/script/demo03_lifecycle/parent.gd +++ /dev/null @@ -1,49 +0,0 @@ -extends Node2D - -const NodeUtils = preload("res://zfoo/util/NodeUtils.gd") - -func _enter_tree(): - # When the node enters the Scene Tree, it becomes active - # and this function is called. Children nodes have not entered - # the active scene yet. In general, it's better to use _ready() - # for most cases. - print("parent _enter_tree") - -func _ready(): - # This function is called after _enter_tree, but it ensures - # that all children nodes have also entered the Scene Tree, - # and became active. - print("parent _ready") - $DeleteButton.connect("pressed", self, "deleteSubNode1") - -func _exit_tree(): - # When the node exits the Scene Tree, this function is called. - # Children nodes have all exited the Scene Tree at this point - # and all became inactive. - print("parent _exit_tree") - -func _process(delta): - # This function is called every frame. - pass - -func _physics_process(delta): - # This is called every physics frame. - pass - - -func deleteSubNode1(): - var root = get_tree().root - root.remove_child(self) - - #注意monitor监视窗口的object变化,和node变化,由于组合一个节点可能包含多个对象 - #self.queue_free() - - #remove_child只能移除子节点,无法移除子节点的子节点 - #get_tree().root.remove_child(self) - #remove_child($SubNode1) - - #先增加再删除 - #root.add_child(self) - - #为了简单,可以使用统一的封装方法,门面模式 - #NodeUtils.removeNode(self) diff --git a/script/demo03_lifecycle/sub_node1.gd b/script/demo03_lifecycle/sub_node1.gd deleted file mode 100644 index 7752695..0000000 --- a/script/demo03_lifecycle/sub_node1.gd +++ /dev/null @@ -1,55 +0,0 @@ -extends Node2D - - -func _enter_tree(): - # When the node enters the Scene Tree, it becomes active - # and this function is called. Children nodes have not entered - # the active scene yet. In general, it's better to use _ready() - # for most cases. - print("sub node1 _enter_tree") - -func _ready(): - # This function is called after _enter_tree, but it ensures - # that all children nodes have also entered the Scene Tree, - # and became active. - print("sub node1 _ready") - #nodeUsage() - -func _exit_tree(): - # When the node exits the Scene Tree, this function is called. - # Children nodes have all exited the Scene Tree at this point - # and all became inactive. - print("sub node1 _exit_tree") - -func _process(delta): - # This function is called every frame. - pass - -func _physics_process(delta): - # This is called every physics frame. - pass - -# 申明和存储节点,等价于在_ready()下赋值 -onready var readySubNode = $SubNode2 - -func nodeUsage(): - # 获取当前节点 - var currentNode1 = $"." - var currentNode2 = self - # 获取父节点 - var parentNode1 = get_parent() - var parentNode2 = $"../" - # 获取子节点 - var subNode1 = $SubNode2 - var subNode2 = $"SubNode2" - var subNode3 = get_node("SubNode2") - # 根节点查找法,会返回节点树从上到下找到的第一个节点 - var subNode4 = get_tree().root.find_node("SubNode2", true, false) - print(currentNode1.name) - print(currentNode2.name) - print(parentNode1.name) - print(parentNode2.name) - print(subNode1.name) - print(subNode2.name) - print(subNode3.name) - print(subNode4.name) diff --git a/script/demo03_lifecycle/sub_node2.gd b/script/demo03_lifecycle/sub_node2.gd deleted file mode 100644 index 0267f9c..0000000 --- a/script/demo03_lifecycle/sub_node2.gd +++ /dev/null @@ -1,30 +0,0 @@ -extends Node - - -func _enter_tree(): - # When the node enters the Scene Tree, it becomes active - # and this function is called. Children nodes have not entered - # the active scene yet. In general, it's better to use _ready() - # for most cases. - print("sub node2 _enter_tree") - -func _ready(): - # This function is called after _enter_tree, but it ensures - # that all children nodes have also entered the Scene Tree, - # and became active. - print("sub node2 _ready") - -func _exit_tree(): - # When the node exits the Scene Tree, this function is called. - # Children nodes have all exited the Scene Tree at this point - # and all became inactive. - print("sub node2 _exit_tree") - -func _process(delta): - # This function is called every frame. - pass - -func _physics_process(delta): - # This is called every physics frame. - pass - diff --git a/script/demo04_signal/mySignal.gd b/script/demo04_signal/mySignal.gd deleted file mode 100644 index 550dfbb..0000000 --- a/script/demo04_signal/mySignal.gd +++ /dev/null @@ -1,22 +0,0 @@ -extends Button - - -# 自定义信号 -signal mySignal(a, b) - -# 发送信号 -# emit_signal("mySignal", 1, 2) -# disconnect("mySignal", 1, 2) - -# 类似于设计模式中的观察者 -func _ready(): - self.connect("mySignal", self, "onMySingalCallback") - self.connect("pressed", self, "onButton") - - -func onMySingalCallback(a, b): - print("a:" + a as String) - print("b:" + b as String) - -func onButton(): - emit_signal("mySignal", 1, 2) diff --git a/script/demo04_signal/signal.gd b/script/demo04_signal/signal.gd deleted file mode 100644 index db5a351..0000000 --- a/script/demo04_signal/signal.gd +++ /dev/null @@ -1,16 +0,0 @@ -extends Node2D - - -# 第一种信号接受方法,通过在场景中配置信号的接收方法 -func _on_Button1_pressed(): - print("hello button1") - - - -# 第二种信号接受方法,通过代码控制信号的接受,更加的灵活,比较推荐方式 -func _ready(): - $Button2.connect("pressed", self, "onButton2") - -func onButton2(): - print("button2 pressed") - diff --git a/script/demo04_signal/thread.gd b/script/demo04_signal/thread.gd deleted file mode 100644 index 74092cb..0000000 --- a/script/demo04_signal/thread.gd +++ /dev/null @@ -1,29 +0,0 @@ -extends Button - -func _ready(): - self.connect("pressed", self, "onButton2") - -func onButton2(): - var myThread = Thread.new() - - print("Create Thread Id: ", myThread) - print("Thread Active: ", myThread.is_active()) - - myThread.start(self, "threadTest", null, 0) - - print() - print("Thread Active: ", myThread.is_active()) - - var waitForThread = myThread.wait_to_finish() # wait for our thread to finish before moving on - - print() - print("Thread is Finished with result: ", waitForThread) - print("Thread Active: ", myThread.is_active()) - - - - -# 使用thread运行的函数必须有一个参数,要不然无法运行 -func threadTest(param): - print("thread test start") - return 999 diff --git a/script/demo04_signal/yield.gd b/script/demo04_signal/yield.gd deleted file mode 100644 index 360c896..0000000 --- a/script/demo04_signal/yield.gd +++ /dev/null @@ -1,31 +0,0 @@ -extends Button - - -func _ready(): - self.connect("pressed", self, "onButton") - - -# yield(obj, signal),函数立即返回,并且保存当前执行的位置和状态 -# yield返回GDScriptFunctionState类型对象,类似于Java的CompleteFuture -# resume恢复GDScriptFunctionState保存的调用函数状态 -func onButton(): - var yieldResult1 = doSomething1() - yieldResult1.resume() - - var yieldResult2 = doSomething2() - # 等待yieldResult2执行完毕 - yield(yieldResult2, "completed") - print("end") - - -func doSomething1(): - yield() - print("doSomething") - -func doSomething2(): - print(1) - yield(get_tree().create_timer(1), "timeout") - print(2) - yield(get_tree().create_timer(1), "timeout") - print(3) - yield(get_tree().create_timer(1), "timeout") diff --git a/script/demo05_scene_node/hero.gd b/script/demo05_scene_node/hero.gd deleted file mode 100644 index 76e5170..0000000 --- a/script/demo05_scene_node/hero.gd +++ /dev/null @@ -1,90 +0,0 @@ -extends Sprite - -const StringUtils = preload("res://zfoo/util/StringUtils.gd") - - -var gameWidth: int -var gameHeight: int -var spriteWidth: int -var spriteHeight: int - - - -func _enter_tree(): - windowPositionTest() - # positionTest() - # textureTest() - pass - - -func _physics_process(delta): - setupGameWindow() - setupSprite() - positionTopCenter() - pass - -# 屏幕坐标系 -func windowPositionTest(): - # 设置游戏屏幕的位置 - # OS.window_position = Vector2(100, 100) - # OS.window_fullscreen = true - - print(StringUtils.format("屏幕大小[{}]", [OS.window_size])) - print(StringUtils.format("屏幕位置[{}]", [OS.window_position])) - pass - -# 坐标点测试用例 -func positionTest(): - print(position) - print(global_position) - print(to_global(position)) - print(to_local(global_position)) - pass - - -func setupGameWindow(): - gameWidth = OS.window_size.x - gameHeight = OS.window_size.y - -func setupSprite(): - spriteWidth = texture.get_width() - spriteHeight = texture.get_height() - - -func positionTopCenter() -> void: - #get_parent().position.x = 0 - #get_parent().position.y = 0 - #self.global_position - self.position.x = gameWidth / 2 - self.position.y = spriteHeight / 2 - -func positionCenter() -> void: - self.global_position.x = gameWidth / 2 - self.global_position.y = gameHeight / 2 - -func positionBottomCenter() -> void: - self.global_position.x = gameWidth / 2 - self.global_position.y = gameHeight - spriteHeight / 2 - -func positionLeftCenter() -> void: - self.global_position.x = spriteWidth / 2 - self.global_position.y = gameHeight / 2 - - - -# 纹理测试用例 -func textureTest(): - var texture = get_texture() - var image = texture.get_data() - print(offset) - print("texture type: ", texture) - print("height: ", texture.get_height()) - print("width: ", texture.get_width()) - print("Image data property: ", image.data) - - # 无法直接编辑图片 - image.shrink_x2() - print("new image data property",image.data) - #这样做会破坏项目的资源,使资源变得混乱 - image.save_png("C:\\Users\\jaysunxiao\\Desktop\\newImage.png") - pass diff --git a/script/demo06_move/move_hero.gd b/script/demo06_move/move_hero.gd deleted file mode 100644 index 08b8735..0000000 --- a/script/demo06_move/move_hero.gd +++ /dev/null @@ -1,31 +0,0 @@ -extends Sprite - - -# How fast the player will move (pixels/sec). -export var speed = 400 -# Size of the game window. -var screen_size - - -func _ready(): - screen_size = get_viewport_rect().size - - -func _process(delta): - var velocity = Vector2.ZERO # The player's movement vector. - if Input.is_action_pressed("move_right"): - velocity.x += 1 - if Input.is_action_pressed("move_left"): - velocity.x -= 1 - if Input.is_action_pressed("move_down"): - velocity.y += 1 - if Input.is_action_pressed("move_up"): - velocity.y -= 1 - - if velocity.length() <= 0: - return - - velocity = velocity.normalized() * speed - position += velocity * delta - position.x = clamp(position.x, 0, screen_size.x) - position.y = clamp(position.y, 0, screen_size.y) diff --git a/script/demo07_collision/kinematic_body_2d.gd b/script/demo07_collision/kinematic_body_2d.gd deleted file mode 100644 index e479e89..0000000 --- a/script/demo07_collision/kinematic_body_2d.gd +++ /dev/null @@ -1,30 +0,0 @@ -extends KinematicBody2D - - -# How fast the player will move (pixels/sec). -export var speed = 400 -# Size of the game window. -var screen_size - -func _ready(): - screen_size = get_viewport_rect().size - -func _physics_process(delta): - var velocity = Vector2.ZERO # The player's movement vector. - if Input.is_action_pressed("move_right"): - velocity.x += 1 - if Input.is_action_pressed("move_left"): - velocity.x -= 1 - if Input.is_action_pressed("move_down"): - velocity.y += 1 - if Input.is_action_pressed("move_up"): - velocity.y -= 1 - - if velocity.length() <= 0: - return - - velocity = velocity.normalized() * speed - # false这个选项参数看意思是把无限惯性关了,这个关了之后就不会向碰撞的刚体施加作用力,需要你自己去写 - var info: KinematicCollision2D = move_and_collide(velocity * delta, false) - if info != null: - print(info.collider.name) diff --git a/script/demo08_path/my_line.gd b/script/demo08_path/my_line.gd deleted file mode 100644 index 6280732..0000000 --- a/script/demo08_path/my_line.gd +++ /dev/null @@ -1,24 +0,0 @@ -extends Line2D - -func _ready(): - #add_point(Vector2(100, 100)) - #add_point(Vector2(100, 200)) - #add_point(Vector2(200, 200)) - pass # Replace with function body. - - -# Called every frame. 'delta' is the elapsed time since the previous frame. -func _process(delta): - var player = get_parent().find_node("Player") - var position = player.position - add_point(position) - if (get_point_count() >= 20): - remove_point(0) - pass - - -func pointTest(): - add_point(Vector2(100, 100)) - add_point(Vector2(100, 200)) - add_point(Vector2(200, 200)) - pass diff --git a/script/demo08_path/my_player.gd b/script/demo08_path/my_player.gd deleted file mode 100644 index 4acafa8..0000000 --- a/script/demo08_path/my_player.gd +++ /dev/null @@ -1,41 +0,0 @@ -extends Sprite - -var speed : = 400.0 -var path : = PoolVector2Array() setget set_path - - -func _ready() -> void: - set_process(false) - - -func _process(delta: float) -> void: - var move_distance : = speed * delta - move_along_path(move_distance) - - -func move_along_path(distance : float) -> void: - var last_point : = position - for index in range(path.size()): - var distance_to_next = last_point.distance_to(path[0]) - - if distance <= distance_to_next: - position = last_point.linear_interpolate(path[0], distance / distance_to_next) - break - - if path.size() == 1: - position = path[0] - set_process(false) - break - - distance -= distance_to_next - last_point = path[0] - path.remove(0) - pass - - -func set_path(value : PoolVector2Array) -> void: - if value.size() == 0: - return - path = value - path.remove(0) - set_process(true) diff --git a/script/demo08_path/my_tile.gd b/script/demo08_path/my_tile.gd deleted file mode 100644 index 71124fb..0000000 --- a/script/demo08_path/my_tile.gd +++ /dev/null @@ -1,18 +0,0 @@ -extends Node - -onready var nav_2d : Navigation2D = $Navigation2D -onready var line_2d : Line2D = $Line2D -onready var player : Sprite = $Player - - -func _unhandled_input(event: InputEvent) -> void: - if not event is InputEventMouseButton: - return - if event.button_index != BUTTON_LEFT or not event.pressed: - return - - var playerPosition = player.global_position - var mousePosition = event.global_position - var new_path : = nav_2d.get_simple_path(playerPosition, mousePosition) - player.path = new_path - line_2d.points = new_path diff --git a/script/demo08_path/path.gd b/script/demo08_path/path.gd deleted file mode 100644 index d24522f..0000000 --- a/script/demo08_path/path.gd +++ /dev/null @@ -1,5 +0,0 @@ -extends PathFollow2D - - -func _process(delta): - offset += 2 diff --git a/script/demo09_canvas/canvas.gd b/script/demo09_canvas/canvas.gd deleted file mode 100644 index 0bf27f1..0000000 --- a/script/demo09_canvas/canvas.gd +++ /dev/null @@ -1,50 +0,0 @@ -extends Node2D - - -var whiteColor: Color = Color(1,1,1,1) - -# For Draw_Circle -var circleRadius: float = 10 - -# For Draw_Multiline -var array: Array = [Vector2(200,300),Vector2(300,400),Vector2(300,400),Vector2(400,300)] -var multiLine: PoolVector2Array = PoolVector2Array(array) - -# For Draw_Rect -var rect: Rect2 = Rect2(200.0,300.0, 200.0,200.0) - -# For Draw_Primitive -var pointsArray: PoolVector2Array = PoolVector2Array([Vector2(700,100),Vector2(800,150),Vector2(900,100)]) -var colorArray: PoolColorArray = PoolColorArray([Color(1,1,1,1),Color(1,1,1,1),Color(1,1,1,1)]) - -# For Draw_String -var dynamic_font = DynamicFont.new() - -var texture: Texture = null - -func _ready() -> void: - # For Draw_String - dynamic_font.font_data = load("res://scene/demo09_canvas/BarlowCondensed-Bold.ttf") - dynamic_font.size = 64 - texture = load("res://icon.png") - -var count = 0 - -func _draw() -> void: - print("start drawing") - draw_circle(Vector2(100,100), circleRadius, whiteColor) - draw_line(Vector2(0,0),Vector2(100,100),whiteColor) - draw_multiline(multiLine, whiteColor) - draw_rect(rect, whiteColor, false) # filled is false - draw_primitive(pointsArray,colorArray, pointsArray) - draw_string(dynamic_font, Vector2(600,500), 'I draw good!') - if count >= 90: - draw_texture(texture, Vector2(400,400)) -# For Draw_String - - -func _process(delta): - count += 1 - if count == 90: - # draw_texture(texture, Vector2(400,400)) - update() diff --git a/script/demo10_animation/timer_animation.gd b/script/demo10_animation/timer_animation.gd deleted file mode 100644 index 7bc8fcc..0000000 --- a/script/demo10_animation/timer_animation.gd +++ /dev/null @@ -1,9 +0,0 @@ -extends Sprite - - - -func _on_Timer_timeout(): - if frame < 5: - frame += 1 - else: - frame = 0 diff --git a/script/demo10_animation/tween_animation.gd b/script/demo10_animation/tween_animation.gd deleted file mode 100644 index c858a81..0000000 --- a/script/demo10_animation/tween_animation.gd +++ /dev/null @@ -1,12 +0,0 @@ -extends Sprite - - -onready var tween = $Tween -onready var targetPosition = get_node("/root/Node2D/TargetPosition") - -# Called when the node enters the scene tree for the first time. -func _ready(): - # 会在起始点和终点不断的插值计算 - tween.follow_property(self, "position", get_position(), targetPosition, "position", 2.0, Tween.TRANS_LINEAR, Tween.EASE_IN_OUT) - tween.start() - pass diff --git a/script/demo13_camera/player.gd b/script/demo13_camera/player.gd deleted file mode 100644 index 9ef6e00..0000000 --- a/script/demo13_camera/player.gd +++ /dev/null @@ -1,29 +0,0 @@ -extends Sprite - - -# How fast the player will move (pixels/sec). -export var speed = 400 -# Size of the game window. -var screen_size - - -func _ready(): - screen_size = get_viewport_rect().size - - -func _process(delta): - var velocity = Vector2.ZERO # The player's movement vector. - if Input.is_action_pressed("move_right"): - velocity.x += 1 - if Input.is_action_pressed("move_left"): - velocity.x -= 1 - if Input.is_action_pressed("move_down"): - velocity.y += 1 - if Input.is_action_pressed("move_up"): - velocity.y -= 1 - - if velocity.length() <= 0: - return - - velocity = velocity.normalized() * speed - position += velocity * delta diff --git a/script/demo13_camera/switch_camera.gd b/script/demo13_camera/switch_camera.gd deleted file mode 100644 index d9756a1..0000000 --- a/script/demo13_camera/switch_camera.gd +++ /dev/null @@ -1,55 +0,0 @@ -extends Node2D - -const StringUtils = preload("res://zfoo/util/StringUtils.gd") - -var camera1: Camera2D -var camera2: Camera2D -var camera3: Camera2D -var camera4: Camera2D - -var timerCounter = 0 - -func _ready() -> void: - camera1 = get_node("Camera2D1") - camera2 = get_node("Camera2D2") - camera3 = get_node("Camera2D3") - camera4 = get_node("Camera2D4") - - -func _physics_process(delta: float) -> void: - timerCounter += 1 - if(timerCounter == 100): - switchCamera1() - if(timerCounter == 200): - switchCamera2() - if(timerCounter == 300): - switchCamera3() - if(timerCounter == 400): - switchCamera4() - timerCounter = 0 - - - -func switchCamera1() -> void: - camera1.current = true; - print("camera1---------------------------") - postionTest() - -func switchCamera2() -> void: - camera2.current = true; - print("camera2---------------------------") - postionTest() - -func switchCamera3() -> void: - camera3.current = true; - print("camera3---------------------------") - postionTest() - -func switchCamera4() -> void: - camera4.current = true; - print("camera4---------------------------") - postionTest() - -func postionTest(): - print(StringUtils.format("全局坐标[{}]", [$icon.global_position])) - print(StringUtils.format("屏幕坐标[{}]", [$icon.get_global_transform_with_canvas().get_origin()])) diff --git a/script/demo14_file/file.gd b/script/demo14_file/file.gd deleted file mode 100644 index a7d15b0..0000000 --- a/script/demo14_file/file.gd +++ /dev/null @@ -1,53 +0,0 @@ -extends Node2D - -const TimeUtils = preload("res://zfoo/scheduler/TimeUtils.gd") -const FileUtils = preload("res://zfoo/util/FileUtils.gd") - - -# Dictionary -var content = "hello file!!!" - -# path string -var filePath: String = "user://playerData.txt" - - -func _ready() -> void: - print("Original Data: ", content) - self.loadData() - print("Altered Data: ", content) - - -func saveData() -> void: - var saveFile = File.new() - saveFile.open(filePath, File.WRITE) - - print(saveFile.get_path_absolute()) - - # bread and butter - saveFile.store_line(content) - saveFile.close() - - #FileUtils.writeStringToFile(filePath, content) - - -func loadData() -> void: - var dataFile = File.new() - - # make sure our file exists on users system - if not dataFile.file_exists(filePath): - return # File does not exist - - # allow reading only for file - dataFile.open(filePath, File.READ) - - content = dataFile.get_as_text() - dataFile.close() - #content = FileUtils.readFileToString(filePath) - - -# 退出的时候回调 -func _notification(what): - if what == MainLoop.NOTIFICATION_WM_QUIT_REQUEST: - content = content + TimeUtils.currentTimeMillis() as String - self.saveData() - get_tree().quit() # quitting the game diff --git a/script/demo16_http/http_request.gd b/script/demo16_http/http_request.gd deleted file mode 100644 index 2c442d9..0000000 --- a/script/demo16_http/http_request.gd +++ /dev/null @@ -1,23 +0,0 @@ -extends HTTPRequest - - -# Called when the node enters the scene tree for the first time. -func _ready() -> void: - httpRequest() - pass - -func httpRequest(): - var headers: PoolStringArray = [] - self.set_use_threads(true) - self.connect("request_completed", self, "doSomething") - self.request("https://www.baidu.com/") - - -func doSomething(result, response_code, headers, body: PoolByteArray): - - if(response_code == 200): - var data = body.get_string_from_utf8() - print(data) - else: - print('response_code: ', response_code) - print('problem on the server') diff --git a/script/demo16_http/http_utils.gd b/script/demo16_http/http_utils.gd deleted file mode 100644 index a033c91..0000000 --- a/script/demo16_http/http_utils.gd +++ /dev/null @@ -1,13 +0,0 @@ -extends Node2D - -const HttpUtils = preload("res://zfoo/util/HttpUtils.gd") - -func _ready(): - #doHttpRequest(); - pass - - -func doHttpRequest(): - var util = HttpUtils.new() - var response = util.get("https://www.zhihu.com") - print(response) \ No newline at end of file diff --git a/script/demo_test/demoTest.gd b/script/demo_test/demoTest.gd deleted file mode 100644 index 8d62c3f..0000000 --- a/script/demo_test/demoTest.gd +++ /dev/null @@ -1,23 +0,0 @@ -extends Node2D - -const RandomUtils = preload("res://zfoo/util/RandomUtils.gd") - -var count = 0 - -func _ready(): - print(RandomUtils.randomBoolean()) - randomize() - - -func _process(delta): - count = count + 1 - if count % 100 == 0: - randomTest() - pass - - -func randomTest(): - print(RandomUtils.randomBoolean()) - print(RandomUtils.randomInt()) - print(RandomUtils.randomIntLimit(2)) - print(RandomUtils.randomIntRange(-2147483648, -2147483646)) diff --git a/zfoo/common/Runnable.gd b/zfoo/common/Runnable.gd deleted file mode 100644 index 6794b39..0000000 --- a/zfoo/common/Runnable.gd +++ /dev/null @@ -1,5 +0,0 @@ -extends Object - - -func run(): - pass diff --git a/zfoo/scheduler/SchedulerBus.gd b/zfoo/scheduler/SchedulerBus.gd deleted file mode 100644 index d57921c..0000000 --- a/zfoo/scheduler/SchedulerBus.gd +++ /dev/null @@ -1,49 +0,0 @@ -extends Object - -const Runnable = preload("res://zfoo/common/Runnable.gd") - -const SchedulerDefinition = preload("res://zfoo/scheduler/SchedulerDefinition.gd") -const TimeUtils = preload("res://zfoo/scheduler/TimeUtils.gd") -const ArrayUtils = preload("res://zfoo/util/ArrayUtils.gd") -const CollectionUtils = preload("res://zfoo/util/CollectionUtils.gd") - -const schedulerMap: Dictionary = {} - - -# 固定延迟执行的任务,delay默认为毫秒 -static func schedule(runnable: Runnable, delay: int) -> void: - var triggerTimestamp = TimeUtils.currentTimeMillis() + delay - var definition = SchedulerDefinition.new(runnable, delay, triggerTimestamp, false) - schedulerMap[definition] = null - - -# 不断执行的周期循环任务,delay默认为毫秒 -static func scheduleAtFixRate(runnable: Runnable, delay: int) -> void: - var triggerTimestamp = TimeUtils.currentTimeMillis() + delay - var definition = SchedulerDefinition.new(runnable, delay, triggerTimestamp, false) - schedulerMap[definition] = null - - -static func triggerPerSecond() -> void: - var timestamp = TimeUtils.currentTimeMillis() - - if CollectionUtils.isEmpty(schedulerMap): - return - - var deleteSchedulers = [] - for scheduler in schedulerMap.keys(): - if timestamp < scheduler.triggerTimestamp: - continue - if scheduler.repteated: - scheduler.triggerTimestamp += timestamp - else: - deleteSchedulers.append(scheduler) - scheduler.runnable.run() - - if ArrayUtils.isEmpty(deleteSchedulers): - return - - for scheduler in deleteSchedulers: - schedulerMap.erase(scheduler) - scheduler.runnable.free() - scheduler.free() diff --git a/zfoo/scheduler/SchedulerDefinition.gd b/zfoo/scheduler/SchedulerDefinition.gd deleted file mode 100644 index ce856ce..0000000 --- a/zfoo/scheduler/SchedulerDefinition.gd +++ /dev/null @@ -1,22 +0,0 @@ -extends Object - -const Runnable = preload("res://zfoo/common/Runnable.gd") - -# the time from now to delay execution -var delay: int - -# 触发时间 -var triggerTimestamp: int - -# 是否重复 -var repteated: bool - -# 回调方法 -var runnable: Runnable - - -func _init(runnable: Runnable, delay: int, triggerTimestamp: int, repteated: bool = false): - self.runnable = runnable - self.delay = delay - self.triggerTimestamp = triggerTimestamp - self.repteated = repteated diff --git a/zfoo/scheduler/TimeUtils.gd b/zfoo/scheduler/TimeUtils.gd deleted file mode 100644 index 4c44788..0000000 --- a/zfoo/scheduler/TimeUtils.gd +++ /dev/null @@ -1,30 +0,0 @@ -extends Object - - -# 一秒钟对应的纳秒数 -const NANO_PER_SECOND: int = 1_000_000_000 -# 一秒钟对应的毫秒数 -const MILLIS_PER_SECOND: int = 1 * 1000 -# 一分钟对应的毫秒数 -const MILLIS_PER_MINUTE = 1 * 60 * MILLIS_PER_SECOND -# 一个小时对应的毫秒数 -const MILLIS_PER_HOUR = 1 * 60 * MILLIS_PER_MINUTE -# 一天对应的毫秒数 -const MILLIS_PER_DAY = 1 * 24 * MILLIS_PER_HOUR -# 一周对应的毫秒数 -const MILLIS_PER_WEEK = 1 * 7 * MILLIS_PER_HOUR - - -const timestamp = [0] - - -# 获取精确的时间戳 -static func currentTimeMillis() -> int: - var currentTimeMillis = OS.get_system_time_msecs() - timestamp[0] = currentTimeMillis - return currentTimeMillis - - -# 获取最多只有一秒延迟的粗略时间戳,适用于对时间精度要求不高的场景,最多只有一秒误差 -static func now() -> int: - return timestamp[0] diff --git a/zfoo/test/scheduler/MySchedulerRunnable.gd b/zfoo/test/scheduler/MySchedulerRunnable.gd deleted file mode 100644 index e74a53f..0000000 --- a/zfoo/test/scheduler/MySchedulerRunnable.gd +++ /dev/null @@ -1,5 +0,0 @@ -extends "res://zfoo/common/Runnable.gd" - - -func run(): - print("MySchedulerRunnnable!!!") diff --git a/zfoo/test/scheduler/SchedulerTest.gd b/zfoo/test/scheduler/SchedulerTest.gd deleted file mode 100644 index d31ff54..0000000 --- a/zfoo/test/scheduler/SchedulerTest.gd +++ /dev/null @@ -1,8 +0,0 @@ -const SchedulerBus = preload("res://zfoo/scheduler/SchedulerBus.gd") -const MySchedulerRunnable = preload("res://zfoo/test/scheduler/MySchedulerRunnable.gd") -const TimeUtils = preload("res://zfoo/scheduler/TimeUtils.gd") - - -static func test(): - print("-----------------------SchedulerBus-----------------------") - SchedulerBus.schedule(MySchedulerRunnable.new(), 5000) diff --git a/zfoo/test/util/IdUtilsTest.gd b/zfoo/test/util/IdUtilsTest.gd deleted file mode 100644 index 9dd9f7a..0000000 --- a/zfoo/test/util/IdUtilsTest.gd +++ /dev/null @@ -1,10 +0,0 @@ -extends Object - - -const IdUtils = preload("res://zfoo/util/IdUtils.gd") - -static func test(): - print("-----------------------IdUtils-----------------------") - print(IdUtils.getLocalIntId()) - print(IdUtils.getLocalIntId()) - print(IdUtils.getLocalIntId()) diff --git a/zfoo/test/zfoo_test.gd b/zfoo/test/zfoo_test.gd deleted file mode 100644 index ae00be2..0000000 --- a/zfoo/test/zfoo_test.gd +++ /dev/null @@ -1,10 +0,0 @@ -extends Node2D - -const SchedulerTest = preload("res://zfoo/test/scheduler/SchedulerTest.gd") -const IdUtilsTest = preload("res://zfoo/test/util/IdUtilsTest.gd") - -func _ready(): - SchedulerTest.test() - IdUtilsTest.test() - - diff --git a/zfoo/test/zfoo_test.tscn b/zfoo/test/zfoo_test.tscn deleted file mode 100644 index ca3e2ce..0000000 --- a/zfoo/test/zfoo_test.tscn +++ /dev/null @@ -1,10 +0,0 @@ -[gd_scene load_steps=3 format=2] - -[ext_resource path="res://zfoo/test/zfoo_test.gd" type="Script" id=1] -[ext_resource path="res://zfoo/zfoo.gd" type="Script" id=2] - -[node name="Node2D" type="Node2D"] -script = ExtResource( 1 ) - -[node name="zfoo" type="Node2D" parent="."] -script = ExtResource( 2 ) diff --git a/zfoo/util/ArrayUtils.gd b/zfoo/util/ArrayUtils.gd deleted file mode 100644 index 2fd3cd7..0000000 --- a/zfoo/util/ArrayUtils.gd +++ /dev/null @@ -1,5 +0,0 @@ -extends Object - - -static func isEmpty(array: Array) -> bool: - return array == null or array.size() == 0 diff --git a/zfoo/util/CollectionUtils.gd b/zfoo/util/CollectionUtils.gd deleted file mode 100644 index 3486ee8..0000000 --- a/zfoo/util/CollectionUtils.gd +++ /dev/null @@ -1,5 +0,0 @@ -extends Object - - -static func isEmpty(dictionary: Dictionary) -> bool: - return dictionary == null or dictionary.size() == 0 diff --git a/zfoo/util/FileUtils.gd b/zfoo/util/FileUtils.gd deleted file mode 100644 index 791ddc1..0000000 --- a/zfoo/util/FileUtils.gd +++ /dev/null @@ -1,40 +0,0 @@ -extends Object - -const StringUtils = preload("res://zfoo/util/StringUtils.gd") - -# 以追加的方式写入一个content -static func writeStringToFile(filePath: String, content: String) -> void: - var file = File.new() - file.open(filePath, File.WRITE) - # bread and butter - file.store_string(content) - file.close() - - -# 读取文件 -static func readFileToString(filePath: String) -> String: - var file = File.new() - # make sure our file exists on users system - if !file.file_exists(filePath): - return StringUtils.EMPTY - - # allow reading only for file - file.open(filePath, File.READ) - - var content = file.get_as_text() - file.close() - return content - -# 读取文件 -static func readFileToByteArray(filePath: String) -> PoolByteArray: - var file = File.new() - # make sure our file exists on users system - if !file.file_exists(filePath): - return PoolByteArray() - - # allow reading only for file - file.open(filePath, File.READ) - - var buffer = file.get_buffer(file.get_len()) - file.close() - return buffer diff --git a/zfoo/util/HttpUtils.gd b/zfoo/util/HttpUtils.gd deleted file mode 100644 index 881eebb..0000000 --- a/zfoo/util/HttpUtils.gd +++ /dev/null @@ -1,294 +0,0 @@ -extends Object - -const TimeUtils = preload("res://zfoo/scheduler/TimeUtils.gd") -const StringUtils = preload("res://zfoo/util/StringUtils.gd") - -const REQUEST_TIMEOUT = 30 * TimeUtils.MILLIS_PER_SECOND - - - -const HEADERS = [ - "User-Agent: Pirulo/1.0 (Godot)", - "Accept: */*" -] - -const CONTENT_BYTESTREAM = "Content-Type: bytestream" -const CONTENT_JSON = "Content-Type: application/json" -const CONTENT_TEXT = "Content-Type: text/plain" - -var ERR_BODY = "Parse Error unsupported body" -var ERR_CONN = "Connection error, can't reach host" -var ERR_REQUEST = "Request failed, invalid params?" - -#func _init(): - # Init SSL Certificates - Is broken in master - # Add manually in Menu Project->Network->ssl - # ProjectSettings.set("network/ssl/certificates", get_script().get_path().get_base_dir()+"/ca-certificates.crt") - -func error(code): - var rs = {} - - rs["header"] = {} - rs["body"] = str(code) - rs["code"] = 404 - - print(rs) - - return rs - - -var HTTP = "http://" -var HTTPS = "https://" - -func req(verb, address, body): - if StringUtils.isEmpty(address): - return error("Invalid http request, adress is empty") - - var headerBody = toHeaderAndBody(body) - var headers = headerBody[0] - body = headerBody[1] - - var uri_dict = get_link_address_port_path(address) - - var serverAdress = uri_dict["host"] - var port = uri_dict["port"] - var path = uri_dict["path"] - var fullhost = uri_dict["fullhost"] - - var ssl = uri_dict["ssl"] - - var _http = HTTPClient.new() - _http.set_blocking_mode( true ) #wait until all data is available on response - - var err = _http.connect_to_host(serverAdress, port, ssl) - assert(err == OK) # Make sure connection is OK. - var start_time_in_ms = OS.get_ticks_msec() - while (_http.get_status()==HTTPClient.STATUS_CONNECTING) || (_http.get_status()==HTTPClient.STATUS_RESOLVING): - _http.poll() - print("Connecting...") - if ((OS.get_ticks_msec() - start_time_in_ms) >= REQUEST_TIMEOUT): # TIMEOUT - printerr(ERR_TIMEOUT) - return - - if !OS.has_feature("web"): - OS.delay_msec(500) - else: - yield(Engine.get_main_loop(), "idle_frame") - - var http_fullhost = checkServerConnection(address) - - if(TYPE_INT != typeof(_http) && _http.get_status()==HTTPClient.STATUS_CONNECTED): - err = _http.request_raw(verb, path, headers, body) - - if(!err): - return getResponse(_http) - else: - return error(ERR_REQUEST) - return error(ERR_CONN) - -#var http # sync can only have one / blocks -# TODO all requests should be async -# 1. The ui will block and multiple sync http connections are not possbile anyway -# 2. The multiple http connections are useless, and returning the http connection to close it is not possible -func get(adress): - return req(HTTPClient.METHOD_GET, adress, PoolByteArray()) - -func put(adress, body=PoolByteArray([])): - return req(HTTPClient.METHOD_PUT, adress, body) - -func post(adress, body=PoolByteArray([])): - return req(HTTPClient.METHOD_POST, adress, body) - -func delete(adress): - return req(HTTPClient.METHOD_DELETE, adress, PoolByteArray()) - -func thread(verb, adress, function, body1): - var thread = Thread.new() - var args = [verb, adress, body1, function, thread] - thread.start(self, "reqAsync", args) - return thread - -var requests = {} -func stop_async(thread): - if(requests.has(thread)): - requests[thread].close() - -func reqAsync(args): - var verb = args[0] - var adress = args[1] - var body1 = args[2] - var function = args[3] - var thread = args[4] - - function.call_func(req( verb, adress, body1)) - requests.erase(thread) - -func getAsync(adress, function): - return thread(HTTPClient.METHOD_GET, adress, function, PoolByteArray()) - -func putAsync(adress, function, body=PoolByteArray([])): - return thread(HTTPClient.METHOD_PUT, adress, function, body) - -func postAsync(adress, function, body=PoolByteArray([])): - return thread(HTTPClient.METHOD_POST, adress, function, body) - -func deleteAsync(adress, function): - return thread(HTTPClient.METHOD_DELETE, adress, function, PoolByteArray()) - -func toHeaderAndBody(body): - var headers = Array(HEADERS) - - var type = typeof(body) - if (type == TYPE_RAW_ARRAY): - if (body.size()>0): - headers.append(CONTENT_BYTESTREAM) - elif (type == TYPE_DICTIONARY): - if (!body.empty()): - headers.append(CONTENT_JSON) - body = to_json(body).to_utf8() - elif (type == TYPE_STRING): - if (body.length()>0): - headers.append(CONTENT_TEXT) - body = body.to_utf8() - - return [headers,body] - -func get_link_address_port_path(uri): - var left = "" - var link = "" - var ssl = false - - if(uri.begins_with(HTTPS)): - ssl = true - link = uri.replace(HTTPS, "") - left+=HTTPS - else: - link = uri.replace(HTTP, "") - left+=HTTP - - var hostport = link.split("/", true)[0] - - left+=hostport - - var host_port = hostport.split(":", true) - var host = host_port[0] - - var port = "80" - if(host_port.size()>1): - port = host_port[1] - if(uri.begins_with(HTTPS)):# check if https -> ssl/tls 443 - port = "443" - - var path = uri.replace(left,"") - if (StringUtils.isEmpty(path)): - path = "/" - - return { - "uri":uri, - "host":host, - "port":int(port), - "path":path, - "ssl":ssl, - "fullhost":hostport - } - -func checkServerConnection(adress): - - var uri_dict = get_link_address_port_path(adress) - - var serverAdress = uri_dict["host"] - var port = uri_dict["port"] - var path = uri_dict["path"] - var fullhost = uri_dict["fullhost"] - - var ssl = uri_dict["ssl"] - - var _http = HTTPClient.new() - _http.set_blocking_mode( true ) #wait until all data is available on response - - var err = _http.connect_to_host(serverAdress, port, ssl) - - if(!err): - var start_time_in_ms = OS.get_ticks_msec() - while( (_http.get_status()==HTTPClient.STATUS_CONNECTING or - _http.get_status()==HTTPClient.STATUS_RESOLVING) && - (OS.get_ticks_msec()-start_time_in_ms)=REQUEST_TIMEOUT): # TIMEOUT - return [HTTPClient.STATUS_CANT_CONNECT, fullhost] - else: - return [_http, fullhost, path] - else: - return [HTTPClient.STATUS_CANT_CONNECT, fullhost] - -func getResponse(_http): - - var rs = {} - - rs["header"] = {} - rs["body"] = "" - rs["code"] = 404 - - # Keep polling until the request is going on - in some cases the server will not respond I will add a timeout - var start_time_in_ms = OS.get_ticks_msec() - while ((_http.get_status() != HTTPClient.STATUS_DISCONNECTED) && - (_http.get_status() == HTTPClient.STATUS_REQUESTING) && - ((OS.get_ticks_msec()-start_time_in_ms)=REQUEST_TIMEOUT): - return error("TIMEOUT") - - rs["code"] = _http.get_response_code() - - if (_http.has_response()): - # Get response headers - var headers = _http.get_response_headers_as_dictionary() - - for key in headers: - rs["header"][key.to_lower()] = headers[key] - - # var cache = headers - - var rb = PoolByteArray() #array that will hold the data - - while(_http.get_status()==HTTPClient.STATUS_BODY): - #_http.set_read_chunk_size( _http.get_response_body_length() ) - rb += _http.read_response_body_chunk() - - if("content-length" in rs["header"] && rs["header"]["content-length"]!="0"): - rs["body"] = parse_body_to_var(rb, rs["header"]["content-type"]) - else: - rs["body"] = "" - - return rs - else: - if _http.get_status()==HTTPClient.STATUS_CONNECTION_ERROR: - print("Maybe Certificates no set in project_settings/network/ssl/") - breakpoint - return rs - -func parse_body_to_var(body, content_type): - if(content_type.find("application/json")!=-1): - body = body.get_string_from_utf8() - #print(body) - var bodyDict = parse_json( body ) - #print(bodyDict) - if( typeof(bodyDict) == TYPE_DICTIONARY): - body = bodyDict - elif( typeof(bodyDict) == TYPE_ARRAY): - body = bodyDict - elif(body=="null"): - body = {} - else: - print("Error body incompatible content_type: " + str(typeof(bodyDict))) - - elif(content_type.find("text/plain")!=-1||content_type.find("text/html")!=-1): - body = body.get_string_from_utf8() - elif(content_type.find("bytestream")!=-1): - pass #return body - return body diff --git a/zfoo/util/IdUtils.gd b/zfoo/util/IdUtils.gd deleted file mode 100644 index a191707..0000000 --- a/zfoo/util/IdUtils.gd +++ /dev/null @@ -1,26 +0,0 @@ -extends Object - - -const atomicInt: Array = [0] - -const mutex = [false, null] - -static func getMutex() -> Mutex: - if mutex[0]: - return mutex[1] - var mutexInstance = Mutex.new() - mutex[1] = mutexInstance - return mutexInstance - - -# 获取本地int的唯一id,如果达到最大值则重新从最小值重新计算,线程安全 -static func getLocalIntId() -> int: - var mutexInstance = getMutex() - - mutexInstance.lock() - - var id = atomicInt[0] - atomicInt[0] = id + 1 - - mutexInstance.unlock() - return id diff --git a/zfoo/util/NodeUtils.gd b/zfoo/util/NodeUtils.gd deleted file mode 100644 index 821107a..0000000 --- a/zfoo/util/NodeUtils.gd +++ /dev/null @@ -1,36 +0,0 @@ -extends Object - -const StringUtils = preload("res://zfoo/util/StringUtils.gd") - -# 移除node节点 -static func removeNode(node: Node) -> void: - if (node == null): - return - var parent = node.get_parent() - if (parent == null): - node.queue_free() - return - parent.remove_child(node) - node.queue_free() - - - -# 实例化场景,并将场景添加到node中 -static func addScene(node: Node, scene: PackedScene) -> Node: - var sceneNode = scene.instance() - node.add_child(sceneNode) - return sceneNode - -# 转换场景 -static func changeScene(sceneTree: SceneTree, scenePath: String) -> void: - var error = sceneTree.change_scene(scenePath) - if error == OK: - pass - printerr(StringUtils.format("SceneTree[{}]加载场景[scenePath:{}]异常[{}]", [sceneTree, scenePath, error])) - - -static func changeSceneTo(sceneTree: SceneTree, scene: PackedScene) -> void: - var error = sceneTree.change_scene_to(scene) - if error == OK: - pass - printerr(StringUtils.format("SceneTree[{}]加载场景[scene:{}]异常[{}]", [sceneTree, scene, error])) diff --git a/zfoo/util/NumberUtils.gd b/zfoo/util/NumberUtils.gd deleted file mode 100644 index ef76bb4..0000000 --- a/zfoo/util/NumberUtils.gd +++ /dev/null @@ -1,6 +0,0 @@ -extends Object - -const MIN_INT: int = -2147483648 - -const MAX_INT: int = 2147483647 - diff --git a/zfoo/util/RandomUtils.gd b/zfoo/util/RandomUtils.gd deleted file mode 100644 index 442c81c..0000000 --- a/zfoo/util/RandomUtils.gd +++ /dev/null @@ -1,43 +0,0 @@ -extends Object - -const NumberUtils = preload("res://zfoo/util/NumberUtils.gd") -const StringUtils = preload("res://zfoo/util/StringUtils.gd") - -const random = [false, null] - -# 单例模式 -static func getRandom() -> RandomNumberGenerator: - if random[0]: - return random[1] - var randomGenerator = RandomNumberGenerator.new() - randomGenerator.randomize() - random[1] = randomGenerator - return randomGenerator - - -static func randomBoolean() -> bool: - return 1 == getRandom().randi_range(0, 2) - - -# 获得随机数[-2^32, 2^32) -static func randomInt() -> int: - return randomIntRange(NumberUtils.MIN_INT, NumberUtils.MAX_INT) - -# 获得指定范围内的随机数 [0,limit) -static func randomIntLimit(limit: int) -> int: - return randomIntRange(0, limit) - -# 获得随机数[-2^32, 2^32) -static func randomIntRange(from: int, to: int) -> int: - if from < NumberUtils.MIN_INT: - push_error(StringUtils.format("from [{}] shoud be >= [{}]", [from, NumberUtils.MIN_INT])) - return 0 - - if to > NumberUtils.MAX_INT: - push_error(StringUtils.format("to [{}] should be <= [{}]", [from, NumberUtils.MAX_INT])) - return 0 - - return getRandom().randi_range(from, to - 1) - -static func randomEle(array: Array): - return array[randomIntLimit(array.size())] diff --git a/zfoo/util/StringUtils.gd b/zfoo/util/StringUtils.gd deleted file mode 100644 index af2b580..0000000 --- a/zfoo/util/StringUtils.gd +++ /dev/null @@ -1,29 +0,0 @@ -extends Object - -const ArrayUtils = preload("res://zfoo/util/ArrayUtils.gd") - -const EMPTY: String = "" -const EMPTY_JSON: String = "{}" - -# Checks if a String is empty ("") or null -static func isEmpty(s: String) -> bool: - return s == null or s.length() == 0 - - -# 检查是否为空的字符串 -static func isBlank(s: String) -> bool: - if isEmpty(s): - return true - - if isEmpty(s.strip_edges(true, true)): - return true - - return false - -# 格式化字符串 -static func format(template: String, args: Array) -> String: - if isEmpty(template) or ArrayUtils.isEmpty(args): - return template - - return template.format(args, EMPTY_JSON) - diff --git a/zfoo/zfoo.gd b/zfoo/zfoo.gd deleted file mode 100644 index 627a677..0000000 --- a/zfoo/zfoo.gd +++ /dev/null @@ -1,15 +0,0 @@ -extends Node2D - -const SchedulerBus = preload("res://zfoo/scheduler/SchedulerBus.gd") - -var timeCounter: float = 0 - -func _physics_process(delta): - schedulerUpdate(delta) - - -func schedulerUpdate(delta: float) -> void: - timeCounter += delta - if (int(timeCounter) == 1) : - SchedulerBus.triggerPerSecond() - timeCounter = 0