├── .gitignore ├── LICENSE ├── README.md ├── audio ├── Enine-Bass-Rebels.mp3 ├── Enine-Bass-Rebels.mp3.import ├── Freedom-Trail-Studio.mp3 ├── Freedom-Trail-Studio.mp3.import ├── attack.wav ├── attack.wav.import ├── die.wav ├── die.wav.import ├── hit.wav ├── hit.wav.import ├── hp.wav ├── hp.wav.import ├── point.wav ├── point.wav.import ├── speedup.wav ├── speedup.wav.import ├── speedup_end.wav ├── speedup_end.wav.import ├── swoosh.wav ├── swoosh.wav.import ├── wing.wav └── wing.wav.import ├── doc ├── 200-godot-4.0-200集教程-开了一个新坑-笨鸟先飞.md ├── 201-202-软件工程设计流程.md ├── 203-204-项目下载-Git基本使用-Idea使用-为什么不使用vscode.md ├── 205-207-flappy-bird-需求拆分-设计文档-场景拆分.md ├── 208-210-Bird-Pipe场景制作.md ├── 211-213-Game玩法设计.md ├── 214-217-场景转换-笨鸟先飞版本完结.md ├── 218-221-godot4.x新的语法糖语法await真香-持续迭代-视差背景ParallaxBackground-转场动画CanvasLayer.md ├── 222-223-加强版图片的分割和合并-TexturePackerGUI基本使用-格式工厂转换音频文件.md ├── 224-226-godot4.x新的节点-AnimatableBody2D节点-边缘功能完善.md ├── 227-231-windows打包-生成exe可执行文件-浏览器打包成html和js文件.md ├── 232-236-java环境搭建-Android打包-生成apk文件.md ├── 237-240-开发了5年-开源游戏服务器框架zfoo了解一下.md ├── 241-243-超级简单的游戏服务器教程-无需任何配置-两行行代码开启服务器.md ├── 244-247-服务器的学习曲线-客户端的区别-序列化和反序列化.md ├── 248-251-强大的游戏配置解决方案zfoo-excel-csv-json-godot中灵活使用.md ├── 252-256-在GdScript中全面使用excel配置数据-excel让数值策划更加简单.md ├── 257-259-打包踩坑记录-自在小鸟-打包导出的一些设置.md ├── 260-263-暴烈小鸟发布-体验Excell配置的好处-加速效果增强-增加新敌人.md ├── 264-270-tcp-udp-http-websocket-服务器初体验.md ├── 271-273-godot4.x-还在用麻烦的protobuf吗-GdScript实现的zfoo-protocol.md ├── 274-279-扩展知识-zfoo的教程案例-unity-cocos-vue-几个小项目.md ├── 280-285-超级简单数据库操作-游戏服务器-MongoDB数据库相关.md ├── 286-288-godot4.x并发编程实战-使用StreamPeerTCP连接服务器.md ├── 289-293-godot4.x网络游戏实战-鸟了个鸟-登录注册-排行榜.md ├── 294-297-鸟了个鸟之灵魂小鸟-50行代码实现聊天室-一起聊天.md ├── 298-版本升级修bug-迎接正式godot4正式版本-项目结构的重要性.md ├── 299-网络库支持await-极大的简化网络编程的复杂度.md ├── 300-射线检测-RayCast2D-PhysicsServer2D-物理系统相关.md ├── 301-303-我愿称为它最强tilemap-rpgmaker也得靠边站-godot4实战.md ├── 304-305-Astar寻路算法-tilemap几种寻路方式.md ├── 306.手机平板做游戏的时代-在手机上运行godot-bird.md ├── design-pattern.md ├── flappybird │ ├── FlappyBird.rar │ ├── FlappyBirdBili.rar │ └── flappy-bird-tutorial.rar ├── image │ ├── 200 │ │ ├── 200-1.png │ │ ├── 200-1.png.import │ │ ├── 200-10.png │ │ ├── 200-10.png.import │ │ ├── 200-11.png │ │ ├── 200-11.png.import │ │ ├── 200-2.png │ │ ├── 200-2.png.import │ │ ├── 200-3.png │ │ ├── 200-3.png.import │ │ ├── 200-4.png │ │ ├── 200-4.png.import │ │ ├── 200-5.png │ │ ├── 200-5.png.import │ │ ├── 200-6.png │ │ ├── 200-6.png.import │ │ ├── 200-7.png │ │ ├── 200-7.png.import │ │ ├── 200-8.png │ │ ├── 200-8.png.import │ │ ├── 200-9.png │ │ └── 200-9.png.import │ ├── 205 │ │ ├── 205-0.png │ │ └── 205-0.png.import │ ├── 224 │ │ ├── img.png │ │ └── img.png.import │ ├── 227 │ │ ├── img.png │ │ ├── img.png.import │ │ ├── img_1.png │ │ └── img_1.png.import │ ├── 232 │ │ ├── img.png │ │ └── img.png.import │ ├── 237 │ │ ├── img.png │ │ ├── img.png.import │ │ ├── img_1.png │ │ └── img_1.png.import │ ├── 298 │ │ ├── img.png │ │ ├── img.png.import │ │ ├── img_1.png │ │ ├── img_1.png.import │ │ ├── img_10.png │ │ ├── img_10.png.import │ │ ├── img_11.png │ │ ├── img_11.png.import │ │ ├── img_2.png │ │ ├── img_2.png.import │ │ ├── img_3.png │ │ ├── img_3.png.import │ │ ├── img_4.png │ │ ├── img_4.png.import │ │ ├── img_5.png │ │ ├── img_5.png.import │ │ ├── img_6.png │ │ ├── img_6.png.import │ │ ├── img_7.png │ │ ├── img_7.png.import │ │ ├── img_8.png │ │ ├── img_8.png.import │ │ ├── img_9.png │ │ └── img_9.png.import │ ├── 299 │ │ ├── img.png │ │ ├── img.png.import │ │ ├── img_1.png │ │ ├── img_1.png.import │ │ ├── img_2.png │ │ └── img_2.png.import │ ├── 304 │ │ ├── img.png │ │ └── img.png.import │ ├── 306 │ │ ├── img.jpg │ │ ├── img.jpg.import │ │ ├── img.png │ │ └── img.png.import │ ├── canvaslayers.png │ └── canvaslayers.png.import └── software │ └── TexturePacker.rar ├── docs └── 不同版本的godot兼容使用.md ├── font ├── FB.ttf ├── FB.ttf.import ├── HarmonyOS_Sans_SC_Medium.ttf └── HarmonyOS_Sans_SC_Medium.ttf.import ├── godot_resource_storage.bin.txt ├── icon.svg ├── icon.svg.import ├── image ├── Bush.png ├── Bush.png.import ├── Foreground.png ├── Foreground.png.import ├── background.png ├── background.png.import ├── bg_day.png ├── bg_day.png.import ├── bg_night.png ├── bg_night.png.import ├── bird0_0.png ├── bird0_0.png.import ├── bird0_1.png ├── bird0_1.png.import ├── bird0_2.png ├── bird0_2.png.import ├── bird1_0.png ├── bird1_0.png.import ├── bird1_1.png ├── bird1_1.png.import ├── bird1_2.png ├── bird1_2.png.import ├── bird2_0.png ├── bird2_0.png.import ├── bird2_1.png ├── bird2_1.png.import ├── bird2_2.png ├── bird2_2.png.import ├── button_menu.png ├── button_menu.png.import ├── button_ok.png ├── button_ok.png.import ├── button_pause.png ├── button_pause.png.import ├── button_play.png ├── button_play.png.import ├── button_resume.png ├── button_resume.png.import ├── button_score.png ├── button_score.png.import ├── button_share.png ├── button_share.png.import ├── currency │ ├── icon_offline_gem.png │ ├── icon_offline_gem.png.import │ ├── icon_offline_gold.png │ ├── icon_offline_gold.png.import │ ├── result_star.png │ └── result_star.png.import ├── effect │ ├── attack.png │ ├── attack.png.import │ ├── hit │ │ ├── 0.png │ │ ├── 0.png.import │ │ ├── 1.png │ │ ├── 1.png.import │ │ ├── 2.png │ │ ├── 2.png.import │ │ ├── 3.png │ │ ├── 3.png.import │ │ ├── 4.png │ │ └── 4.png.import │ └── speedup │ │ ├── 0.png │ │ ├── 0.png.import │ │ ├── 1.png │ │ ├── 1.png.import │ │ ├── 2.png │ │ └── 2.png.import ├── enemy │ ├── bilibili.png │ ├── bilibili.png.import │ ├── cloud │ │ ├── 0.png │ │ ├── 0.png.import │ │ ├── 1.png │ │ ├── 1.png.import │ │ ├── 2.png │ │ ├── 2.png.import │ │ ├── 3.png │ │ └── 3.png.import │ ├── fish │ │ ├── 0.png │ │ ├── 0.png.import │ │ ├── 1.png │ │ ├── 1.png.import │ │ ├── 2.png │ │ ├── 2.png.import │ │ ├── 3.png │ │ ├── 3.png.import │ │ ├── 4.png │ │ ├── 4.png.import │ │ ├── 5.png │ │ └── 5.png.import │ └── shark │ │ ├── 0.png │ │ ├── 0.png.import │ │ ├── 1.png │ │ ├── 1.png.import │ │ ├── 2.png │ │ ├── 2.png.import │ │ ├── 3.png │ │ ├── 3.png.import │ │ ├── 4.png │ │ ├── 4.png.import │ │ ├── 5.png │ │ ├── 5.png.import │ │ ├── 6.png │ │ ├── 6.png.import │ │ ├── 7.png │ │ └── 7.png.import ├── hp │ ├── 0.png │ ├── 0.png.import │ ├── 1.png │ ├── 1.png.import │ ├── 2.png │ ├── 2.png.import │ ├── 3.png │ └── 3.png.import ├── land.png ├── land.png.import ├── medals_0.png ├── medals_0.png.import ├── medals_1.png ├── medals_1.png.import ├── medals_2.png ├── medals_2.png.import ├── medals_3.png ├── medals_3.png.import ├── pipe2_down.png ├── pipe2_down.png.import ├── pipe2_up.png ├── pipe2_up.png.import ├── pipe_down.png ├── pipe_down.png.import ├── pipe_up.png ├── pipe_up.png.import ├── score_panel.png ├── score_panel.png.import ├── text_game_over.png ├── text_game_over.png.import ├── text_ready.png ├── text_ready.png.import ├── tile │ ├── Modern_Office-48-48.png │ ├── Modern_Office-48-48.png.import │ ├── Modern_Office_Decoration-48-48.png │ └── Modern_Office_Decoration-48-48.png.import ├── titile7.png ├── titile7.png.import ├── title.png ├── title.png.import ├── tutorial.png ├── tutorial.png.import ├── ui │ ├── LOADING_ICON_01.png │ ├── LOADING_ICON_01.png.import │ ├── LOADING_MOON_BG.png │ ├── LOADING_MOON_BG.png.import │ ├── UI_CLAUSE_BTN.png │ ├── UI_CLAUSE_BTN.png.import │ ├── UI_Loading_Tip_Popup.png │ ├── UI_Loading_Tip_Popup.png.import │ ├── UI_Main_Adventure_Friend_BuyBG.png │ ├── UI_Main_Adventure_Friend_BuyBG.png.import │ ├── UI_Main_Adventure_ProfileEdge_01.png │ ├── UI_Main_Adventure_ProfileEdge_01.png.import │ ├── UI_Main_Adventure_ProfileEdge_02.png │ ├── UI_Main_Adventure_ProfileEdge_02.png.import │ ├── UI_Main_Adventure_ShopBox.png │ ├── UI_Main_Adventure_ShopBox.png.import │ ├── UI_Main_Adventure_ready_BTN.png │ ├── UI_Main_Adventure_ready_BTN.png.import │ ├── UI_Main_Adventure_ready_BTN_2.png │ ├── UI_Main_Adventure_ready_BTN_2.png.import │ ├── UI_Main_ArrowOff.png │ ├── UI_Main_ArrowOff.png.import │ ├── UI_Main_ArrowOn.png │ ├── UI_Main_ArrowOn.png.import │ ├── UI_Main_ArrowSmall.png │ ├── UI_Main_ArrowSmall.png.import │ ├── UI_Main_BuyResourcePopup_Band.png │ ├── UI_Main_BuyResourcePopup_Band.png.import │ ├── UI_Main_BuyResourcePopup_Band_02.png │ ├── UI_Main_BuyResourcePopup_Band_02.png.import │ ├── UI_Main_Common_BG.png │ ├── UI_Main_Common_BG.png.import │ ├── UI_Main_Common_BG_02.png │ ├── UI_Main_Common_BG_02.png.import │ ├── UI_Main_Event_BG.png │ ├── UI_Main_Event_BG.png.import │ ├── UI_Main_IconBand.png │ ├── UI_Main_IconBand.png.import │ ├── UI_Main_InvenPopup_BG.png │ ├── UI_Main_InvenPopup_BG.png.import │ ├── UI_Main_Inven_Item.png │ ├── UI_Main_Inven_Item.png.import │ ├── UI_Main_Inven_ItemBand.png │ ├── UI_Main_Inven_ItemBand.png.import │ ├── UI_Main_Inven_ItemPetBand.png │ ├── UI_Main_Inven_ItemPetBand.png.import │ ├── UI_Main_Inven_Item_Pet.png │ ├── UI_Main_Inven_Item_Pet.png.import │ ├── UI_Main_Inven_Item_PetGrade_A.png │ ├── UI_Main_Inven_Item_PetGrade_A.png.import │ ├── UI_Main_Inven_Item_PetGrade_B.png │ ├── UI_Main_Inven_Item_PetGrade_B.png.import │ ├── UI_Main_Inven_Item_PetGrade_C.png │ ├── UI_Main_Inven_Item_PetGrade_C.png.import │ ├── UI_Main_Inven_Item_Pet_Select.png │ ├── UI_Main_Inven_Item_Pet_Select.png.import │ ├── UI_Main_Inven_Pet_Title_01.png │ ├── UI_Main_Inven_Pet_Title_01.png.import │ ├── UI_Main_InvitePopup_BG5.png │ ├── UI_Main_InvitePopup_BG5.png.import │ ├── UI_Main_ItemInfo_BG.png │ ├── UI_Main_ItemInfo_BG.png.import │ ├── UI_Main_ItemInfo_BG2.png │ ├── UI_Main_ItemInfo_BG2.png.import │ ├── UI_Main_Levelup_Band.png │ ├── UI_Main_Levelup_Band.png.import │ ├── UI_Main_Lucky_BG.png │ ├── UI_Main_Lucky_BG.png.import │ ├── UI_Main_Lucky_GaugeShape.png │ ├── UI_Main_Lucky_GaugeShape.png.import │ ├── UI_Main_Lucky_GaugeShapeBG.png │ ├── UI_Main_Lucky_GaugeShapeBG.png.import │ ├── UI_Main_MessageBox.png │ ├── UI_Main_MessageBox.png.import │ ├── UI_Main_NEW.png │ ├── UI_Main_NEW.png.import │ ├── UI_Main_OFF.png │ ├── UI_Main_OFF.png.import │ ├── UI_Main_ON.png │ ├── UI_Main_ON.png.import │ ├── UI_Main_Pause_BG.png │ ├── UI_Main_Pause_BG.png.import │ ├── UI_Main_Preview_BG.png │ ├── UI_Main_Preview_BG.png.import │ ├── UI_Main_QuestionMark.png │ ├── UI_Main_QuestionMark.png.import │ ├── UI_Main_RankUp_UserBG.png │ ├── UI_Main_RankUp_UserBG.png.import │ ├── UI_Main_Ranking_Mybar.png │ ├── UI_Main_Ranking_Mybar.png.import │ ├── UI_Main_Ranking_UserBG.png │ ├── UI_Main_Ranking_UserBG.png.import │ ├── UI_Main_Ready_BG2.png │ ├── UI_Main_Ready_BG2.png.import │ ├── UI_Main_Ready_TimeBG.png │ ├── UI_Main_Ready_TimeBG.png.import │ ├── UI_Main_Result_Arrow.png │ ├── UI_Main_Result_Arrow.png.import │ ├── UI_Main_Result_BG4.png │ ├── UI_Main_Result_BG4.png.import │ ├── UI_Main_Shop_Buff.png │ ├── UI_Main_Shop_Buff.png.import │ ├── UI_Main_Shop_ItemOFF.png │ ├── UI_Main_Shop_ItemOFF.png.import │ ├── UI_Main_Shop_ItemON.png │ ├── UI_Main_Shop_ItemON.png.import │ ├── UI_Main_ranking_ready_BTN.png │ ├── UI_Main_ranking_ready_BTN.png.import │ ├── UI_NULL_Notice.png │ ├── UI_NULL_Notice.png.import │ ├── UI_Popup_BTN1.png │ ├── UI_Popup_BTN1.png.import │ ├── UI_Popup_BTN10.png │ ├── UI_Popup_BTN10.png.import │ ├── UI_Popup_BTN2.png │ ├── UI_Popup_BTN2.png.import │ ├── UI_Popup_BTN4.png │ ├── UI_Popup_BTN4.png.import │ ├── UI_Popup_BTN5.png │ ├── UI_Popup_BTN5.png.import │ ├── UI_Popup_BTN5_Tab.png │ ├── UI_Popup_BTN5_Tab.png.import │ ├── UI_Popup_BTN6.png │ ├── UI_Popup_BTN6.png.import │ ├── UI_Popup_BTN7.png │ ├── UI_Popup_BTN7.png.import │ ├── UI_Popup_BTN7_Tab.png │ ├── UI_Popup_BTN7_Tab.png.import │ ├── UI_Popup_BTN8.png │ ├── UI_Popup_BTN8.png.import │ ├── UI_Popup_BTN9.png │ ├── UI_Popup_BTN9.png.import │ ├── UI_Popup_ItemBTN1.png │ ├── UI_Popup_ItemBTN1.png.import │ ├── UI_Popup_ItemBTN1_Select.png │ ├── UI_Popup_ItemBTN1_Select.png.import │ ├── UI_Popup_Tab_A_01.png │ ├── UI_Popup_Tab_A_01.png.import │ ├── UI_Popup_Tab_A_02.png │ ├── UI_Popup_Tab_A_02.png.import │ ├── UI_Popup_Tab_A_03.png │ ├── UI_Popup_Tab_A_03.png.import │ ├── UI_Popup_Tab_B_01.png │ ├── UI_Popup_Tab_B_01.png.import │ ├── UI_Popup_Tab_B_02.png │ ├── UI_Popup_Tab_B_02.png.import │ ├── UI_Popup_Tab_C_01.png │ ├── UI_Popup_Tab_C_01.png.import │ ├── UI_Popup_Tab_C_02.png │ ├── UI_Popup_Tab_C_02.png.import │ ├── UI_Tutorial_PCDialog.png │ ├── UI_Tutorial_PCDialog.png.import │ ├── UI_Tutorial_SkipBTN.png │ ├── UI_Tutorial_SkipBTN.png.import │ ├── loadingMessageBox.png │ └── loadingMessageBox.png.import └── water │ ├── water.png │ └── water.png.import ├── note.md ├── project.godot ├── protocol ├── ByteBuffer.gd ├── ByteBuffer.gd.uid ├── ProtocolManager.gd ├── ProtocolManager.gd.uid ├── admin │ ├── AdminCurrencyAsk.gd │ ├── AdminCurrencyAsk.gd.uid │ ├── AdminPlayerLevelAsk.gd │ └── AdminPlayerLevelAsk.gd.uid ├── attachment │ ├── GatewayAttachment.gd │ ├── GatewayAttachment.gd.uid │ ├── HttpAttachment.gd │ ├── HttpAttachment.gd.uid │ ├── NoAnswerAttachment.gd │ ├── NoAnswerAttachment.gd.uid │ ├── SignalAttachment.gd │ ├── SignalAttachment.gd.uid │ ├── UdpAttachment.gd │ └── UdpAttachment.gd.uid ├── battle │ ├── BattleResultRequest.gd │ ├── BattleResultRequest.gd.uid │ ├── BattleResultResponse.gd │ └── BattleResultResponse.gd.uid ├── cache │ ├── BattleScoreAnswer.gd │ ├── BattleScoreAnswer.gd.uid │ ├── BattleScoreAsk.gd │ ├── BattleScoreAsk.gd.uid │ ├── ScoreRankRequest.gd │ ├── ScoreRankRequest.gd.uid │ ├── ScoreRankResponse.gd │ └── ScoreRankResponse.gd.uid ├── chat │ ├── ChatMessage.gd │ ├── ChatMessage.gd.uid │ ├── GroupChatMessageNotice.gd │ ├── GroupChatMessageNotice.gd.uid │ ├── GroupChatRequest.gd │ ├── GroupChatRequest.gd.uid │ ├── GroupHistoryMessageRequest.gd │ ├── GroupHistoryMessageRequest.gd.uid │ ├── GroupHistoryMessageResponse.gd │ └── GroupHistoryMessageResponse.gd.uid ├── common │ ├── CurrencyVo.gd │ ├── CurrencyVo.gd.uid │ ├── Error.gd │ ├── Error.gd.uid │ ├── Heartbeat.gd │ ├── Heartbeat.gd.uid │ ├── Message.gd │ ├── Message.gd.uid │ ├── PairIntLong.gd │ ├── PairIntLong.gd.uid │ ├── PairLS.gd │ ├── PairLS.gd.uid │ ├── PairLong.gd │ ├── PairLong.gd.uid │ ├── PairString.gd │ ├── PairString.gd.uid │ ├── Ping.gd │ ├── Ping.gd.uid │ ├── PlayerInfo.gd │ ├── PlayerInfo.gd.uid │ ├── Pong.gd │ ├── Pong.gd.uid │ ├── RankInfo.gd │ ├── RankInfo.gd.uid │ ├── TripleLSS.gd │ ├── TripleLSS.gd.uid │ ├── TripleLong.gd │ ├── TripleLong.gd.uid │ ├── TripleString.gd │ └── TripleString.gd.uid ├── login │ ├── GetPlayerInfoRequest.gd │ ├── GetPlayerInfoRequest.gd.uid │ ├── GetPlayerInfoResponse.gd │ ├── GetPlayerInfoResponse.gd.uid │ ├── KickPlayerNotice.gd │ ├── KickPlayerNotice.gd.uid │ ├── LoginRequest.gd │ ├── LoginRequest.gd.uid │ ├── LoginResponse.gd │ ├── LoginResponse.gd.uid │ ├── LogoutRequest.gd │ ├── LogoutRequest.gd.uid │ ├── LogoutResponse.gd │ └── LogoutResponse.gd.uid ├── notice │ ├── CurrencyUpdateNotice.gd │ ├── CurrencyUpdateNotice.gd.uid │ ├── PlayerExpNotice.gd │ └── PlayerExpNotice.gd.uid └── room │ ├── CreateRoomRequest.gd │ ├── CreateRoomRequest.gd.uid │ ├── CreateRoomResponse.gd │ ├── CreateRoomResponse.gd.uid │ ├── ExitRoomNotice.gd │ ├── ExitRoomNotice.gd.uid │ ├── ExitRoomRequest.gd │ ├── ExitRoomRequest.gd.uid │ ├── ExitRoomResponse.gd │ ├── ExitRoomResponse.gd.uid │ ├── JoinRoomNotice.gd │ ├── JoinRoomNotice.gd.uid │ ├── JoinRoomRequest.gd │ ├── JoinRoomRequest.gd.uid │ ├── JoinRoomResponse.gd │ ├── JoinRoomResponse.gd.uid │ ├── Room.gd │ ├── Room.gd.uid │ ├── RoomInfoAnswer.gd │ ├── RoomInfoAnswer.gd.uid │ ├── RoomInfoAsk.gd │ └── RoomInfoAsk.gd.uid ├── scene ├── Background.tscn ├── Bird.tscn ├── Game.tscn ├── Home.tscn ├── Login.tscn ├── Main.tscn ├── Notify.tscn ├── Over.tscn ├── Pipe.tscn ├── effect │ ├── EffectAttack.tscn │ ├── EffectFlyBird.tscn │ ├── EffectHit.tscn │ ├── EffectHp.tscn │ └── EffectSpeedUp.tscn └── enemy │ ├── BiliBili.tscn │ ├── Cloud.tscn │ ├── Fish.tscn │ └── Shark.tscn ├── script ├── Bird.gd ├── Bird.gd.uid ├── Common.gd ├── Common.gd.uid ├── Game.gd ├── Game.gd.uid ├── Home.gd ├── Home.gd.uid ├── Login.gd ├── Login.gd.uid ├── Main.gd ├── Main.gd.uid ├── Notify.gd ├── Notify.gd.uid ├── Over.gd ├── Over.gd.uid ├── TcpClient.gd ├── TcpClient.gd.uid ├── TcpClientThreads.gd ├── TcpClientThreads.gd.uid ├── WebsocketClient.gd ├── WebsocketClient.gd.uid ├── effect │ ├── EffectAttack.gd │ ├── EffectAttack.gd.uid │ ├── EffectFlyBird.gd │ ├── EffectFlyBird.gd.uid │ ├── EffectHit.gd │ ├── EffectHit.gd.uid │ ├── EffectHp.gd │ ├── EffectHp.gd.uid │ ├── EffectSpeedUp.gd │ └── EffectSpeedUp.gd.uid └── enemy │ ├── BiliBili.gd │ ├── BiliBili.gd.uid │ ├── Cloud.gd │ ├── Cloud.gd.uid │ ├── Fish.gd │ ├── Fish.gd.uid │ ├── Shark.gd │ └── Shark.gd.uid ├── server ├── README.md ├── pom.xml └── src │ ├── main │ ├── java │ │ └── fun │ │ │ └── jiucai │ │ │ └── bogers │ │ │ ├── Application.java │ │ │ ├── config │ │ │ └── AutoConfiguration.java │ │ │ ├── controller │ │ │ ├── BattleController.java │ │ │ ├── ChatController.java │ │ │ ├── CurrencyController.java │ │ │ ├── LoginController.java │ │ │ └── RoomController.java │ │ │ ├── entity │ │ │ ├── AccountEntity.java │ │ │ ├── CurrencyPo.java │ │ │ ├── MessageEntity.java │ │ │ ├── PlayerEntity.java │ │ │ ├── RoomEntity.java │ │ │ └── ScoreRankEntity.java │ │ │ ├── event │ │ │ └── PlayerLevelUpEvent.java │ │ │ ├── protocol │ │ │ ├── admin │ │ │ │ ├── AdminCurrencyAsk.java │ │ │ │ └── AdminPlayerLevelAsk.java │ │ │ ├── battle │ │ │ │ ├── BattleResultRequest.java │ │ │ │ └── BattleResultResponse.java │ │ │ ├── cache │ │ │ │ ├── BattleScoreAnswer.java │ │ │ │ ├── BattleScoreAsk.java │ │ │ │ ├── ScoreRankRequest.java │ │ │ │ └── ScoreRankResponse.java │ │ │ ├── chat │ │ │ │ ├── ChatMessage.java │ │ │ │ ├── GroupChatMessageNotice.java │ │ │ │ ├── GroupChatRequest.java │ │ │ │ ├── GroupHistoryMessageRequest.java │ │ │ │ └── GroupHistoryMessageResponse.java │ │ │ ├── common │ │ │ │ ├── CurrencyVo.java │ │ │ │ ├── PlayerInfo.java │ │ │ │ └── RankInfo.java │ │ │ ├── login │ │ │ │ ├── GetPlayerInfoRequest.java │ │ │ │ ├── GetPlayerInfoResponse.java │ │ │ │ ├── KickPlayerNotice.java │ │ │ │ ├── LoginRequest.java │ │ │ │ ├── LoginResponse.java │ │ │ │ ├── LogoutRequest.java │ │ │ │ └── LogoutResponse.java │ │ │ ├── notice │ │ │ │ ├── CurrencyUpdateNotice.java │ │ │ │ └── PlayerExpNotice.java │ │ │ └── room │ │ │ │ ├── CreateRoomRequest.java │ │ │ │ ├── CreateRoomResponse.java │ │ │ │ ├── ExitRoomNotice.java │ │ │ │ ├── ExitRoomRequest.java │ │ │ │ ├── ExitRoomResponse.java │ │ │ │ ├── JoinRoomNotice.java │ │ │ │ ├── JoinRoomRequest.java │ │ │ │ ├── JoinRoomResponse.java │ │ │ │ ├── Room.java │ │ │ │ ├── RoomInfoAnswer.java │ │ │ │ └── RoomInfoAsk.java │ │ │ ├── resource │ │ │ ├── FilterWordResource.java │ │ │ ├── I18n.java │ │ │ ├── PlayerExpResource.java │ │ │ └── PropertyResource.java │ │ │ ├── service │ │ │ ├── HotService.java │ │ │ └── SystemService.java │ │ │ └── util │ │ │ ├── HotUtils.java │ │ │ ├── HttpLoginUtils.java │ │ │ ├── SendUtils.java │ │ │ └── TokenUtils.java │ └── resources │ │ ├── application-pro.yml │ │ ├── application.yml │ │ ├── excel │ │ ├── FilterWordResource.xlsx │ │ ├── I18n.xlsx │ │ ├── PlayerExpResource.xlsx │ │ └── PropertyResource.xlsx │ │ └── protocol.xml │ └── test │ ├── java │ └── fun │ │ └── jiucai │ │ └── bogers │ │ ├── HelloTest.java │ │ ├── godot │ │ ├── ExportExcelGodot.java │ │ ├── ExportProtocolGodot.java │ │ ├── GodotCommonResource.java │ │ ├── GodotObjectResource.java │ │ └── ResourceStorage.java │ │ └── robot │ │ ├── RobotController.java │ │ ├── RobotData.java │ │ └── RobotTest.java │ └── resources │ ├── excel-godot │ ├── GodotCommonResource.xlsx │ └── GodotObjectResource.xlsx │ ├── logback-test.xml │ └── robot-application.xml ├── storage ├── ByteBuffer.gd ├── ByteBuffer.gd.uid ├── GodotCommonResource.gd ├── GodotCommonResource.gd.uid ├── GodotObjectResource.gd ├── GodotObjectResource.gd.uid ├── ProtocolManager.gd ├── ProtocolManager.gd.uid ├── ResourceStorage.gd └── ResourceStorage.gd.uid ├── test ├── Demo1.tscn ├── Demo12-navgation-astar.tscn ├── Demo13.tscn ├── Demo2.tscn ├── Demo3.tscn ├── Demo4.tscn ├── Demo5.tscn ├── Demo6.tscn ├── Demo7-RayCast2D.tscn ├── Demo8-PhysicsServer.tscn ├── Demo9-navgation1.tscn ├── Test.gd ├── Test.gd.uid ├── Test.tscn ├── await │ ├── AwaitTest.gd │ ├── AwaitTest.gd.uid │ └── AwaitTest.tscn ├── script │ ├── Demo12-navgation-astar.gd │ ├── Demo12-navgation-astar.gd.uid │ ├── Demo12.gd │ ├── Demo12.gd.uid │ ├── Demo13.gdshader │ ├── Demo13.gdshader.uid │ ├── Demo4.gd │ ├── Demo4.gd.uid │ ├── Demo5.gd │ ├── Demo5.gd.uid │ ├── Demo6.gd │ ├── Demo6.gd.uid │ ├── Demo7-RayCast2D.gd │ ├── Demo7-RayCast2D.gd.uid │ ├── Demo8.gd │ └── Demo8.gd.uid └── thread │ ├── ThreadTest.gd │ ├── ThreadTest.gd.uid │ └── ThreadTest.tscn ├── tools └── rcedit-x64.exe └── zfoo ├── ArrayUtils.gd ├── ArrayUtils.gd.uid ├── CollectionUtils.gd ├── CollectionUtils.gd.uid ├── FileUtils.gd ├── FileUtils.gd.uid ├── NodeUtils.gd ├── NodeUtils.gd.uid ├── RandomUtils.gd ├── RandomUtils.gd.uid ├── StringUtils.gd ├── StringUtils.gd.uid ├── TimeUtils.gd ├── TimeUtils.gd.uid └── scheduler ├── SchedulerBus.gd └── SchedulerBus.gd.uid /README.md: -------------------------------------------------------------------------------- 1 | # godot-bird(鸟了个鸟)powered by godot 4.4 2 | 3 | - frontend:[godot](https://github.com/godotengine/godot) 4 | 5 | - backend:[server](./server/src/main/java/fun/jiucai/bogers/Application.java) 6 | 7 | - support await grammar of net request 8 | 9 | ``` 10 | var groupHistoryMessageResponse: GroupHistoryMessageResponse = await Main.tcpClient.asyncAsk(request) 11 | ``` 12 | 13 | - including GDScript serialization and deserialization. 14 | ``` 15 | ProtocolManager.write(buffer, ScoreRankRequest.new()) 16 | 17 | var request = ProtocolManager.read(buffer) 18 | ``` 19 | -------------------------------------------------------------------------------- /audio/Enine-Bass-Rebels.mp3: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zfoo-project/godot-bird/449520e8d4e611345aad3fb59559da273c85aa35/audio/Enine-Bass-Rebels.mp3 -------------------------------------------------------------------------------- /audio/Enine-Bass-Rebels.mp3.import: -------------------------------------------------------------------------------- 1 | [remap] 2 | 3 | importer="mp3" 4 | type="AudioStreamMP3" 5 | uid="uid://c1ihpx6ioyxv5" 6 | path="res://.godot/imported/Enine-Bass-Rebels.mp3-caffae23c6b4cb74d32dc48ad6a465f2.mp3str" 7 | 8 | [deps] 9 | 10 | source_file="res://audio/Enine-Bass-Rebels.mp3" 11 | dest_files=["res://.godot/imported/Enine-Bass-Rebels.mp3-caffae23c6b4cb74d32dc48ad6a465f2.mp3str"] 12 | 13 | [params] 14 | 15 | loop=true 16 | loop_offset=0 17 | bpm=0 18 | beat_count=0 19 | bar_beats=4 20 | -------------------------------------------------------------------------------- /audio/Freedom-Trail-Studio.mp3: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zfoo-project/godot-bird/449520e8d4e611345aad3fb59559da273c85aa35/audio/Freedom-Trail-Studio.mp3 -------------------------------------------------------------------------------- /audio/Freedom-Trail-Studio.mp3.import: -------------------------------------------------------------------------------- 1 | [remap] 2 | 3 | importer="mp3" 4 | type="AudioStreamMP3" 5 | uid="uid://emoen87sij2h" 6 | path="res://.godot/imported/Freedom-Trail-Studio.mp3-da5bfc9c354cb20df6838429989f342d.mp3str" 7 | 8 | [deps] 9 | 10 | source_file="res://audio/Freedom-Trail-Studio.mp3" 11 | dest_files=["res://.godot/imported/Freedom-Trail-Studio.mp3-da5bfc9c354cb20df6838429989f342d.mp3str"] 12 | 13 | [params] 14 | 15 | loop=true 16 | loop_offset=0 17 | bpm=0 18 | beat_count=0 19 | bar_beats=4 20 | -------------------------------------------------------------------------------- /audio/attack.wav: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zfoo-project/godot-bird/449520e8d4e611345aad3fb59559da273c85aa35/audio/attack.wav -------------------------------------------------------------------------------- /audio/attack.wav.import: -------------------------------------------------------------------------------- 1 | [remap] 2 | 3 | importer="wav" 4 | type="AudioStreamWAV" 5 | uid="uid://bewq0uli37q2f" 6 | path="res://.godot/imported/attack.wav-0a120458dbbfd5bc2f7af07d7d5e4f3b.sample" 7 | 8 | [deps] 9 | 10 | source_file="res://audio/attack.wav" 11 | dest_files=["res://.godot/imported/attack.wav-0a120458dbbfd5bc2f7af07d7d5e4f3b.sample"] 12 | 13 | [params] 14 | 15 | force/8_bit=false 16 | force/mono=false 17 | force/max_rate=false 18 | force/max_rate_hz=44100 19 | edit/trim=false 20 | edit/normalize=false 21 | edit/loop_mode=0 22 | edit/loop_begin=0 23 | edit/loop_end=-1 24 | compress/mode=0 25 | -------------------------------------------------------------------------------- /audio/die.wav: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zfoo-project/godot-bird/449520e8d4e611345aad3fb59559da273c85aa35/audio/die.wav -------------------------------------------------------------------------------- /audio/die.wav.import: -------------------------------------------------------------------------------- 1 | [remap] 2 | 3 | importer="wav" 4 | type="AudioStreamWAV" 5 | uid="uid://dj3s6cg6cthyx" 6 | path="res://.godot/imported/die.wav-88d16b5d7d702e4833dba0e511899ae7.sample" 7 | 8 | [deps] 9 | 10 | source_file="res://audio/die.wav" 11 | dest_files=["res://.godot/imported/die.wav-88d16b5d7d702e4833dba0e511899ae7.sample"] 12 | 13 | [params] 14 | 15 | force/8_bit=false 16 | force/mono=false 17 | force/max_rate=false 18 | force/max_rate_hz=44100 19 | edit/trim=false 20 | edit/normalize=false 21 | edit/loop_mode=0 22 | edit/loop_begin=0 23 | edit/loop_end=-1 24 | compress/mode=0 25 | -------------------------------------------------------------------------------- /audio/hit.wav: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zfoo-project/godot-bird/449520e8d4e611345aad3fb59559da273c85aa35/audio/hit.wav -------------------------------------------------------------------------------- /audio/hit.wav.import: -------------------------------------------------------------------------------- 1 | [remap] 2 | 3 | importer="wav" 4 | type="AudioStreamWAV" 5 | uid="uid://bn2vwgavvunvm" 6 | path="res://.godot/imported/hit.wav-0ce77c86b567f5096583f88ec20be939.sample" 7 | 8 | [deps] 9 | 10 | source_file="res://audio/hit.wav" 11 | dest_files=["res://.godot/imported/hit.wav-0ce77c86b567f5096583f88ec20be939.sample"] 12 | 13 | [params] 14 | 15 | force/8_bit=false 16 | force/mono=false 17 | force/max_rate=false 18 | force/max_rate_hz=44100 19 | edit/trim=false 20 | edit/normalize=false 21 | edit/loop_mode=0 22 | edit/loop_begin=0 23 | edit/loop_end=-1 24 | compress/mode=0 25 | -------------------------------------------------------------------------------- /audio/hp.wav: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zfoo-project/godot-bird/449520e8d4e611345aad3fb59559da273c85aa35/audio/hp.wav -------------------------------------------------------------------------------- /audio/hp.wav.import: -------------------------------------------------------------------------------- 1 | [remap] 2 | 3 | importer="wav" 4 | type="AudioStreamWAV" 5 | uid="uid://bj8hn31xs4f0c" 6 | path="res://.godot/imported/hp.wav-89eb37715d4d84712ae0b094df45ffdd.sample" 7 | 8 | [deps] 9 | 10 | source_file="res://audio/hp.wav" 11 | dest_files=["res://.godot/imported/hp.wav-89eb37715d4d84712ae0b094df45ffdd.sample"] 12 | 13 | [params] 14 | 15 | force/8_bit=false 16 | force/mono=false 17 | force/max_rate=false 18 | force/max_rate_hz=44100 19 | edit/trim=false 20 | edit/normalize=false 21 | edit/loop_mode=0 22 | edit/loop_begin=0 23 | edit/loop_end=-1 24 | compress/mode=0 25 | -------------------------------------------------------------------------------- /audio/point.wav: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zfoo-project/godot-bird/449520e8d4e611345aad3fb59559da273c85aa35/audio/point.wav -------------------------------------------------------------------------------- /audio/point.wav.import: -------------------------------------------------------------------------------- 1 | [remap] 2 | 3 | importer="wav" 4 | type="AudioStreamWAV" 5 | uid="uid://dcgu70sdjetco" 6 | path="res://.godot/imported/point.wav-b1ad87126663f7967f0edaf8f13a2f53.sample" 7 | 8 | [deps] 9 | 10 | source_file="res://audio/point.wav" 11 | dest_files=["res://.godot/imported/point.wav-b1ad87126663f7967f0edaf8f13a2f53.sample"] 12 | 13 | [params] 14 | 15 | force/8_bit=false 16 | force/mono=false 17 | force/max_rate=false 18 | force/max_rate_hz=44100 19 | edit/trim=false 20 | edit/normalize=false 21 | edit/loop_mode=0 22 | edit/loop_begin=0 23 | edit/loop_end=-1 24 | compress/mode=0 25 | -------------------------------------------------------------------------------- /audio/speedup.wav: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zfoo-project/godot-bird/449520e8d4e611345aad3fb59559da273c85aa35/audio/speedup.wav -------------------------------------------------------------------------------- /audio/speedup.wav.import: -------------------------------------------------------------------------------- 1 | [remap] 2 | 3 | importer="wav" 4 | type="AudioStreamWAV" 5 | uid="uid://31i6ke7t7jxp" 6 | path="res://.godot/imported/speedup.wav-d930eb74dd7ffc38d506b92d55b7dc60.sample" 7 | 8 | [deps] 9 | 10 | source_file="res://audio/speedup.wav" 11 | dest_files=["res://.godot/imported/speedup.wav-d930eb74dd7ffc38d506b92d55b7dc60.sample"] 12 | 13 | [params] 14 | 15 | force/8_bit=false 16 | force/mono=false 17 | force/max_rate=false 18 | force/max_rate_hz=44100 19 | edit/trim=false 20 | edit/normalize=false 21 | edit/loop_mode=0 22 | edit/loop_begin=0 23 | edit/loop_end=-1 24 | compress/mode=0 25 | -------------------------------------------------------------------------------- /audio/speedup_end.wav: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zfoo-project/godot-bird/449520e8d4e611345aad3fb59559da273c85aa35/audio/speedup_end.wav -------------------------------------------------------------------------------- /audio/speedup_end.wav.import: -------------------------------------------------------------------------------- 1 | [remap] 2 | 3 | importer="wav" 4 | type="AudioStreamWAV" 5 | uid="uid://c2qyhqm77o3rs" 6 | path="res://.godot/imported/speedup_end.wav-52840664fb27a639e33ce819e56c6ea3.sample" 7 | 8 | [deps] 9 | 10 | source_file="res://audio/speedup_end.wav" 11 | dest_files=["res://.godot/imported/speedup_end.wav-52840664fb27a639e33ce819e56c6ea3.sample"] 12 | 13 | [params] 14 | 15 | force/8_bit=false 16 | force/mono=false 17 | force/max_rate=false 18 | force/max_rate_hz=44100 19 | edit/trim=false 20 | edit/normalize=false 21 | edit/loop_mode=0 22 | edit/loop_begin=0 23 | edit/loop_end=-1 24 | compress/mode=0 25 | -------------------------------------------------------------------------------- /audio/swoosh.wav: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zfoo-project/godot-bird/449520e8d4e611345aad3fb59559da273c85aa35/audio/swoosh.wav -------------------------------------------------------------------------------- /audio/swoosh.wav.import: -------------------------------------------------------------------------------- 1 | [remap] 2 | 3 | importer="wav" 4 | type="AudioStreamWAV" 5 | uid="uid://ddp61kf15rkay" 6 | path="res://.godot/imported/swoosh.wav-170bddb5faed55491fb236c6aef3ef45.sample" 7 | 8 | [deps] 9 | 10 | source_file="res://audio/swoosh.wav" 11 | dest_files=["res://.godot/imported/swoosh.wav-170bddb5faed55491fb236c6aef3ef45.sample"] 12 | 13 | [params] 14 | 15 | force/8_bit=false 16 | force/mono=false 17 | force/max_rate=false 18 | force/max_rate_hz=44100 19 | edit/trim=false 20 | edit/normalize=false 21 | edit/loop_mode=0 22 | edit/loop_begin=0 23 | edit/loop_end=-1 24 | compress/mode=0 25 | -------------------------------------------------------------------------------- /audio/wing.wav: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zfoo-project/godot-bird/449520e8d4e611345aad3fb59559da273c85aa35/audio/wing.wav -------------------------------------------------------------------------------- /audio/wing.wav.import: -------------------------------------------------------------------------------- 1 | [remap] 2 | 3 | importer="wav" 4 | type="AudioStreamWAV" 5 | uid="uid://dcoobpmodm8wk" 6 | path="res://.godot/imported/wing.wav-0700c46ddb90e87cca47e7e2d69e4faa.sample" 7 | 8 | [deps] 9 | 10 | source_file="res://audio/wing.wav" 11 | dest_files=["res://.godot/imported/wing.wav-0700c46ddb90e87cca47e7e2d69e4faa.sample"] 12 | 13 | [params] 14 | 15 | force/8_bit=false 16 | force/mono=false 17 | force/max_rate=false 18 | force/max_rate_hz=44100 19 | edit/trim=false 20 | edit/normalize=false 21 | edit/loop_mode=0 22 | edit/loop_begin=0 23 | edit/loop_end=-1 24 | compress/mode=0 25 | -------------------------------------------------------------------------------- /doc/203-204-项目下载-Git基本使用-Idea使用-为什么不使用vscode.md: -------------------------------------------------------------------------------- 1 | # 一、项目下载 2 | 3 | ## 不下载在线云端使用 4 | 5 | - 在github项目主页直接使用 . 按键,直接在线打开工程 6 | 7 | ``` 8 | 这种方式在线比较方便,但是本地调试修改比较麻烦,不推荐 9 | ``` 10 | 11 | ## 下载zip包本地解压使用 12 | 13 | - 在github项目主页直接下载zip包 14 | 15 | ``` 16 | 这种方式在线比较简单粗暴,但是会丢失git得提交信息,不推荐 17 | ``` 18 | 19 | ## 终极解决方式,使用git下载 20 | 21 | - 强烈推荐,会有版本记录,可以看到每次得改动记录,也方便后面切换分支 22 | - 不需要记任何git指令,可以完全通过可视化操作工具去操作github 23 | 24 | ``` 25 | 如果本地没有科学上网工具,强烈推荐FastGithub,可以看看之前得教程 26 | 27 | 后面说项目实战的时候,还会不断的去说git如何切分支,提交等等一些列使用问题 28 | ``` 29 | 30 | - 使用Idea代码编辑器当作可视化git操作工具 31 | 32 | - 先装git再装idea 33 | 34 | - 最后下载godot 4.x 35 | 36 | # 二、为什么不选择vscode 37 | 38 | - 我没有选择vscode的原因是,是因为vscode缺少构建和重构大型项目的能力 39 | - vscode打开大型项目容易卡顿,vscode实际上只是一个浏览器,大项目确实卡顿 40 | - idea可以轻松重构项目,也可以看到历次的文件修改记录记录 41 | -------------------------------------------------------------------------------- /doc/205-207-flappy-bird-需求拆分-设计文档-场景拆分.md: -------------------------------------------------------------------------------- 1 | # 需求分析 2 | 3 | - 类flappy bird游戏 4 | 5 | # 设计文档 6 | 7 | - 类flappy bird游戏 8 | 9 | # 场景拆分 10 | 11 | - godot bird v1.0.0,笨鸟先飞版本,只有100行代码超级简单 12 | 13 | - 每个人对场景的理解可能都不相同,建议大家先不要看godot bird,自己实现一下 14 | 15 | - 细节有无数种实现方式,要有大局观,不要局限在细节上 16 | 17 | ``` 18 | Git 有三种状态,你的文件可能处于其中之一: 19 | 20 | 已提交(committed):已提交表示数据已经安全的保存在本地数据库中。 21 | 22 | 已修改(modified):已修改表示修改了文件,但还没保存到数据库中。 23 | 24 | 已暂存(staged):已暂存表示对一个已修改文件的当前版本做了标记,使之包含在下次提交的快照中。 25 | 26 | Git在未进行commit操作之前,存在三种状态:Untracked files,Changes not staged for commit及Changes to be committed, 27 | 每种状态之间可以随意进行互相转换。了解这三种状态各自所对应的不同情况,能够帮助你方便有效的使用Git来管理项目。 28 | ``` 29 | 30 | ![Image text](image/205/205-0.png) 31 | -------------------------------------------------------------------------------- /doc/211-213-Game玩法设计.md: -------------------------------------------------------------------------------- 1 | # 1. Background场景 - 背景+地面 2 | 3 | # 2. Demo02 - 测试Background场景 4 | 5 | # 3. 制作Game逻辑 6 | 7 | - 3.依赖倒置原则 8 | 9 | ``` 10 | 高层模块不应该依赖低层模块,二者都应该依赖其抽象;抽象不应该依赖细节;细节应该依赖抽象。 11 | 依赖倒置原则的核心就是要我们面向接口编程,理解了面向接口编程,也就理解了依赖倒置。 12 | ``` 13 | -------------------------------------------------------------------------------- /doc/214-217-场景转换-笨鸟先飞版本完结.md: -------------------------------------------------------------------------------- 1 | # 1. Home入口场景制作 2 | 3 | # 2. Over结束场景制作 4 | 5 | # 3. 整合游戏各个场景,完成整个游戏流程 6 | 7 | # 4. 和其它几个版本的flappy对比,哪个设计更加友好?可以留言发表一下 8 | -------------------------------------------------------------------------------- /doc/222-223-加强版图片的分割和合并-TexturePackerGUI基本使用-格式工厂转换音频文件.md: -------------------------------------------------------------------------------- 1 | # TexturePackerGUI基本使用 2 | 3 | - 合并演示 4 | - 分割演示 5 | 6 | # 格式工程转换文件的格式 7 | -------------------------------------------------------------------------------- /doc/224-226-godot4.x新的节点-AnimatableBody2D节点-边缘功能完善.md: -------------------------------------------------------------------------------- 1 | # AnimatableBody2D节点 2 | 3 | - 使用AnimatableBody2D节点当作敌人 4 | 5 | - 注意渲染帧和物理帧的区别 6 | ``` 7 | func _process(delta): 8 | position.x = position.x - speed * delta 9 | pass 10 | 11 | func _physics_process(delta): 12 | position.x = position.x - speed * delta 13 | pass 14 | ``` 15 | 16 | # 血包 17 | 18 | # 加速 19 | -------------------------------------------------------------------------------- /doc/227-231-windows打包-生成exe可执行文件-浏览器打包成html和js文件.md: -------------------------------------------------------------------------------- 1 | # 优化加速效果 2 | 3 | - 加了拖影效果 4 | - 加速时相机往中间移动 5 | 6 | # 打包前设置 7 | 8 | - 不同屏幕尺寸不一样,得让游戏窗口自适应,设置stretch 9 | 10 | 11 | # 下载打包模板 12 | 13 | - 官网下载对应版本的模板,一般是以export_templates结尾,这个打包模板是windows,android,browser都是用的模板 14 | - 安装模板,建议在浏览器单独下载(下载速度可能更快) 15 | 16 | ![Image text](image/227/img.png) 17 | ![Image text](image/227/img_1.png) 18 | 19 | 20 | # 打包windows 21 | 22 | - 选择对应平台直接打包 23 | ``` 24 | godot 4.0 beta1打包windows和html5有bug,优先使用最新版本的godot 25 | ``` 26 | 27 | # 打包浏览器web browser 28 | 29 | - beta3版本打包浏览器有bug,等修复了再演示 30 | -------------------------------------------------------------------------------- /doc/237-240-开发了5年-开源游戏服务器框架zfoo了解一下.md: -------------------------------------------------------------------------------- 1 | # 游戏服务器开源框架zfoo 2 | 3 | - [万能的游戏服务器框架](https://github.com/zfoo-project/zfoo) 4 | 5 | # 为godot定制的服务器框架zfoo 6 | 7 | # 为什么是java,zfoo是一个跨语言的服务器框架,其它语言是可选项 8 | 9 | - GdScript是面向对象的脚本语言,java是面向对象的强类型语言 10 | 11 | 12 | - java就像幽灵,无处不在,总有一天你要直视他 13 | 14 | ``` 15 | 应用业务层服务器市场,Java,Java的Spring boot生态太好了 16 | 大数据方向,Hadoop Hive HBase Spark 17 | Java的桌面市场,如Idea,Android Studio全家桶,Java Swing做的。 18 | Java的移动市场Android 19 | ``` 20 | 21 | - 最近原神的私服就是用java写的,[如何看待原神私服横行,无人管理的现象?](https://www.zhihu.com/question/531450724/answer/2524603923) 22 | 23 | ``` 24 | 前者为github官方的统计,后者为各大网站和搜索引擎的统计。 25 | ``` 26 | 27 | ![Image text](image/237/img.png) 28 | ![Image text](image/237/img_1.png) 29 | 30 | - 成年人不做选择,全都要,用对的工具解决对应的问题 31 | 32 | ``` 33 | cpp,java,go全都要 34 | ``` 35 | 36 | # godot200集教程最终是准备做成一个网络游戏,鸟了个鸟 37 | 38 | - zfoo这套服务器框架,覆盖了90%游戏服务器使用场景 39 | -------------------------------------------------------------------------------- /doc/241-243-超级简单的游戏服务器教程-无需任何配置-两行行代码开启服务器.md: -------------------------------------------------------------------------------- 1 | # 为什么大部分游戏服务器都需要定制自己的服务器 2 | 3 | - 游戏服务器模拟世界,世界很难去模拟,只能通过一些hack和定制去实现想要的功能 4 | 5 | - 引擎自带的服务器只能算是入门服务器,离实战还差很多 6 | 7 | - 服务器不仅仅是网络通信,网络通信只是其中的很小部分 8 | 9 | - unity 之前搞过一个unet,最后废弃了 10 | 11 | ``` 12 | 前后端混合写,有省事的地方,但是写到后面会很崩溃! 13 | 适合小项目,速成demo,局域网联机一类的吧! 14 | 真要是打的,还是做专门的服务器好一点! 15 | ``` 16 | 17 | - unreal engine 也有自己的Standalone Dedicated Server,但是基本上也只有3d游戏类型能用,非常耗资源,其它类型游戏不能用 18 | 19 | # zfoo服务器项目下载 20 | 21 | - git 22 | - idea 23 | 24 | # 项目运行和初步演示 25 | -------------------------------------------------------------------------------- /doc/248-251-强大的游戏配置解决方案zfoo-excel-csv-json-godot中灵活使用.md: -------------------------------------------------------------------------------- 1 | # github上已经有很多配置解决工具,为何选择zfoo作为配置导出工具 2 | 3 | - zfoo的storage高度可定制化,不会那么死板,代码非常轻量,可以很方便的做自己的定制格式 4 | 5 | - storage不仅仅是一种配置导出工具,他涵盖了服务器的整个生命周期,比如excel/csv/json配置表热更新 6 | 7 | - zfoo框架是一个设计思想,导出excel表工具是非常小的一个方面 8 | 9 | # excel导出json给godot使用 10 | 11 | # excel导出csv给godot使用 12 | 13 | # excel导出二进制给godot使用 14 | -------------------------------------------------------------------------------- /doc/252-256-在GdScript中全面使用excel配置数据-excel让数值策划更加简单.md: -------------------------------------------------------------------------------- 1 | # 提取游戏中的数据到Excel 2 | 3 | # 制作二进制导出工具 4 | 5 | - 注意我们的导出路径不要搞错了 6 | 7 | # 测试我们的游戏 8 | 9 | # 解放数值策划,调整合适的参数提高游戏的可玩性 10 | 11 | - 调参的过程需要花很长时间 12 | 13 | # 优化导出工具,导出代码和导出excel分开 14 | 15 | - 导出代码的时候,记得把godot关了 16 | - 只导出二进制数据不用关闭godot 17 | -------------------------------------------------------------------------------- /doc/257-259-打包踩坑记录-自在小鸟-打包导出的一些设置.md: -------------------------------------------------------------------------------- 1 | # csv/txt/json打包踩坑记录 2 | 3 | - csv/txt/json文件默认的导出方式无法随包导出,需要手动设置哪些需要导出 4 | 5 | # 手感优化,飞翔的时候操作感更强 6 | 7 | - 好的动作游戏,操作的连贯性,流畅度完美,以及人物的动作,特效和音效对于操作的反馈是否精准和美观。 8 | 9 | # 发布新版本v4.0.0自在小鸟 10 | 11 | ``` 12 | 链接:https://pan.baidu.com/s/1zC1kqqSF2dOKzH1HFCuCzQ?pwd=zfoo 13 | 提取码:zfoo 14 | ``` 15 | -------------------------------------------------------------------------------- /doc/260-263-暴烈小鸟发布-体验Excell配置的好处-加速效果增强-增加新敌人.md: -------------------------------------------------------------------------------- 1 | # 加了一个新的敌人 2 | 3 | # 几乎不使用一行代码就加了一个新的敌人的实现 4 | 5 | # 加速效果可以摧毁敌人 6 | 7 | # 发布新版本v5.0.0暴烈小鸟 8 | 9 | ``` 10 | 链接:https://pan.baidu.com/s/1zC1kqqSF2dOKzH1HFCuCzQ?pwd=zfoo 11 | 提取码:zfoo 12 | ``` 13 | -------------------------------------------------------------------------------- /doc/264-270-tcp-udp-http-websocket-服务器初体验.md: -------------------------------------------------------------------------------- 1 | # 简单的序列化和反序列化框架zfoo的protocol框架 2 | 3 | # tcp服务器 4 | 5 | # udp服务器 6 | 7 | # http服务器 8 | 9 | # websocket服务器 10 | 11 | # protobuf协议服务器 12 | 13 | # 想要提高的可以再继续看其它的测试用例和教程 14 | 15 | - 微服务部署,注册中心加集群部署,网关加集群部署,有兴趣的可以继续深究 16 | 17 | - zfoo为各种类型服务器提供了一致的使用体验 18 | -------------------------------------------------------------------------------- /doc/271-273-godot4.x-还在用麻烦的protobuf吗-GdScript实现的zfoo-protocol.md: -------------------------------------------------------------------------------- 1 | # protobuf 2 | 3 | - protobuf是Google公司提出的一种轻便高效的结构化数据存储格式,常用于结构化数据的序列化,具有语言无关、平台无关、可扩展性特性,常用于通讯协议、服务端数据交换场景 4 | 5 | # godot中使用protobuf 6 | 7 | - [godobuf](https://github.com/oniksan/godobuf) ,使用有点麻烦 8 | 9 | # zfoo的protocol 10 | 11 | - 为godot的GdScript定制过的序列化框架,更加的好用 12 | -------------------------------------------------------------------------------- /doc/274-279-扩展知识-zfoo的教程案例-unity-cocos-vue-几个小项目.md: -------------------------------------------------------------------------------- 1 | # 进击的坦克(The Fight of Tanks),unity前端 2 | 3 | # tank-game-server,zfoo框架后端 4 | 5 | # tank-game-server,分布式运行,只做了解,深入了解可以看看zfoo框架教程系列 6 | 7 | # admin-vue-js,vue后台管理 8 | 9 | # fivechess,基于zfoo的游戏服务器,cocos前端 10 | 11 | # 下个版本的鸟了个鸟版本,对接tank-game-server的服务器,服务器逻辑都一样 12 | -------------------------------------------------------------------------------- /doc/280-285-超级简单数据库操作-游戏服务器-MongoDB数据库相关.md: -------------------------------------------------------------------------------- 1 | # 为什么选择MongoDB 2 | 3 | - 简单,高效,不用写sql 4 | 5 | # 数据库安装 6 | 7 | - 学习MongoDB优先看官方的文档,https://docs.mongodb.com/manual/ 8 | - B站有个稍微权威一点的MongoDB视频教程,https://www.bilibili.com/video/BV13a4y1J7L6 9 | 10 | - 百度网盘,软件下载地址 11 | 12 | ``` 13 | 链接:https://pan.baidu.com/s/1TMLtNiNz0aLpgnZkkMNB-g 14 | 提取码:zfoo 15 | ``` 16 | 17 | # Navicat Mongodb安装,简单的话也可以使用idea自带的mongodb连接插件 18 | 19 | # 增 20 | 21 | # 删 22 | 23 | # 改 24 | 25 | # 查 26 | -------------------------------------------------------------------------------- /doc/286-288-godot4.x并发编程实战-使用StreamPeerTCP连接服务器.md: -------------------------------------------------------------------------------- 1 | # StreamPeerTCP连接服务器 2 | 3 | # 连接服务器并且给服务器发消息 4 | 5 | # 封装成TcpClient 6 | -------------------------------------------------------------------------------- /doc/289-293-godot4.x网络游戏实战-鸟了个鸟-登录注册-排行榜.md: -------------------------------------------------------------------------------- 1 | # 登录场景 2 | 3 | # 九宫格图片使用 4 | 5 | # 排行榜制作 6 | 7 | # godot的移动端滑动效果 8 | 9 | # 鸟了个鸟 v.6.0.0 10 | 11 | - 发布的时候需要打开移动端的网络权限 12 | 13 | ``` 14 | 链接:https://pan.baidu.com/s/1zC1kqqSF2dOKzH1HFCuCzQ?pwd=zfoo 15 | 提取码:zfoo 16 | ``` 17 | -------------------------------------------------------------------------------- /doc/294-297-鸟了个鸟之灵魂小鸟-50行代码实现聊天室-一起聊天.md: -------------------------------------------------------------------------------- 1 | # 聊天室服务器开发 2 | 3 | # 聊天室godot前端开发 4 | 5 | # 货币系统开发 6 | 7 | # 鸟了个鸟 v.7.3.0 8 | 9 | - 发布的时候需要打开移动端的网络权限 10 | 11 | ``` 12 | 链接:https://pan.baidu.com/s/1zC1kqqSF2dOKzH1HFCuCzQ?pwd=zfoo 13 | 提取码:zfoo 14 | ``` 15 | -------------------------------------------------------------------------------- /doc/298-版本升级修bug-迎接正式godot4正式版本-项目结构的重要性.md: -------------------------------------------------------------------------------- 1 | # 版本升级修bug 2 | 3 | - 代码报错,const方法无法overider覆盖 4 | ![Image text](image/298/img_1.png) 5 | ![Image text](image/298/img_8.png) 6 | 7 | - Array -> Array[xxx],泛型转换错误 8 | ![Image text](image/298/img_4.png) 9 | ![Image text](image/298/img_9.png) 10 | 11 | 12 | - 新建立的线程里面的代码无法断点,只能打印日志查看;如果里面有报错线程就会立即退出,不会有如何警告 13 | ![Image text](image/298/img_5.png) 14 | 15 | - 废弃的类,直接删除 16 | ![Image text](image/298/img_6.png) 17 | ![Image text](image/298/img_7.png) 18 | 19 | 20 | - 小鸟的动画没有播放出来,一个一个运行之前的测试用例,最小化定位出错的位置 21 | ![Image text](image/298/img.png) 22 | ![Image text](image/298/img_2.png) 23 | ![Image text](image/298/img_3.png) 24 | 25 | - 版本兼容,多写测试用例,一个质量高的项目测试工程应该要和主工程相当 26 | ![Image text](image/298/img_10.png) 27 | ![Image text](image/298/img_11.png) -------------------------------------------------------------------------------- /doc/299-网络库支持await-极大的简化网络编程的复杂度.md: -------------------------------------------------------------------------------- 1 | ### await 语法 2 | 3 | - await + 对象.信号 4 | 5 | ### 使用非常方便,支持以下两种使用方式 6 | 7 | - 1.消息接受支持异步操作 8 | ![Image text](image/299/img.png) 9 | 10 | - 2.主动注册消息的接受 11 | ![Image text](image/299/img_1.png) 12 | 13 | 14 | ### await语法就是yield的语法糖 15 | 16 | ![Image text](image/299/img_2.png) 17 | -------------------------------------------------------------------------------- /doc/301-303-我愿称为它最强tilemap-rpgmaker也得靠边站-godot4实战.md: -------------------------------------------------------------------------------- 1 | # 1. godot 4.x 最新的Tilemap 节点,功能非常强大 2 | 3 | - tilemap的由tileset组成,tileset由tile一个个单个图块组成 4 | 5 | - 基本上通过熟练使用get_cell、set_cell、world_to_local这些函数就可以解决大多数普通关卡制作需求 6 | 7 | - 操作相比3.x极大的简化了,我愿称之为最强tilemap 8 | 9 | # 2. tilemap使用 10 | 11 | - tileset设置 12 | 13 | - patterns设置 14 | 15 | # 3. 层级设置 16 | 17 | - layer层级 18 | 19 | - 物理层级 20 | 21 | - 寻路层级 22 | 23 | -------------------------------------------------------------------------------- /doc/304-305-Astar寻路算法-tilemap几种寻路方式.md: -------------------------------------------------------------------------------- 1 | # 1. 普通寻路 2 | 3 | 4 | # 2. 数据结构简单知识 5 | 6 | ![img.png](image/304/img.png) 7 | - 树 8 | 9 | - 图,有向图,无向图 10 | 11 | # 3. Astar寻路 12 | 13 | - 参考资料 14 | 15 | ``` 16 | https://zhuanlan.zhihu.com/p/443528528 17 | 18 | https://zhuanlan.zhihu.com/p/385733813 19 | ``` 20 | 21 | -------------------------------------------------------------------------------- /doc/306.手机平板做游戏的时代-在手机上运行godot-bird.md: -------------------------------------------------------------------------------- 1 | ![Image text](image/306/img.jpg) 2 | ![Image text](image/306/img.png) -------------------------------------------------------------------------------- /doc/flappybird/FlappyBird.rar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zfoo-project/godot-bird/449520e8d4e611345aad3fb59559da273c85aa35/doc/flappybird/FlappyBird.rar -------------------------------------------------------------------------------- /doc/flappybird/FlappyBirdBili.rar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zfoo-project/godot-bird/449520e8d4e611345aad3fb59559da273c85aa35/doc/flappybird/FlappyBirdBili.rar -------------------------------------------------------------------------------- /doc/flappybird/flappy-bird-tutorial.rar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zfoo-project/godot-bird/449520e8d4e611345aad3fb59559da273c85aa35/doc/flappybird/flappy-bird-tutorial.rar -------------------------------------------------------------------------------- /doc/image/200/200-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zfoo-project/godot-bird/449520e8d4e611345aad3fb59559da273c85aa35/doc/image/200/200-1.png -------------------------------------------------------------------------------- /doc/image/200/200-1.png.import: -------------------------------------------------------------------------------- 1 | [remap] 2 | 3 | importer="texture" 4 | type="CompressedTexture2D" 5 | uid="uid://c4wmqurl3ca8w" 6 | path="res://.godot/imported/200-1.png-fc51eba5f88dade99d6a3953c939245b.ctex" 7 | metadata={ 8 | "vram_texture": false 9 | } 10 | 11 | [deps] 12 | 13 | source_file="res://doc/image/200/200-1.png" 14 | dest_files=["res://.godot/imported/200-1.png-fc51eba5f88dade99d6a3953c939245b.ctex"] 15 | 16 | [params] 17 | 18 | compress/mode=0 19 | compress/high_quality=false 20 | compress/lossy_quality=0.7 21 | compress/hdr_compression=1 22 | compress/normal_map=0 23 | compress/channel_pack=0 24 | mipmaps/generate=false 25 | mipmaps/limit=-1 26 | roughness/mode=0 27 | roughness/src_normal="" 28 | process/fix_alpha_border=true 29 | process/premult_alpha=false 30 | process/normal_map_invert_y=false 31 | process/hdr_as_srgb=false 32 | process/hdr_clamp_exposure=false 33 | process/size_limit=0 34 | detect_3d/compress_to=1 35 | -------------------------------------------------------------------------------- /doc/image/200/200-10.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zfoo-project/godot-bird/449520e8d4e611345aad3fb59559da273c85aa35/doc/image/200/200-10.png -------------------------------------------------------------------------------- /doc/image/200/200-10.png.import: -------------------------------------------------------------------------------- 1 | [remap] 2 | 3 | importer="texture" 4 | type="CompressedTexture2D" 5 | uid="uid://dyb6ti4qm782i" 6 | path="res://.godot/imported/200-10.png-3f524e110db8ad740b3876d4cd9085ca.ctex" 7 | metadata={ 8 | "vram_texture": false 9 | } 10 | 11 | [deps] 12 | 13 | source_file="res://doc/image/200/200-10.png" 14 | dest_files=["res://.godot/imported/200-10.png-3f524e110db8ad740b3876d4cd9085ca.ctex"] 15 | 16 | [params] 17 | 18 | compress/mode=0 19 | compress/high_quality=false 20 | compress/lossy_quality=0.7 21 | compress/hdr_compression=1 22 | compress/normal_map=0 23 | compress/channel_pack=0 24 | mipmaps/generate=false 25 | mipmaps/limit=-1 26 | roughness/mode=0 27 | roughness/src_normal="" 28 | process/fix_alpha_border=true 29 | process/premult_alpha=false 30 | process/normal_map_invert_y=false 31 | process/hdr_as_srgb=false 32 | process/hdr_clamp_exposure=false 33 | process/size_limit=0 34 | detect_3d/compress_to=1 35 | -------------------------------------------------------------------------------- /doc/image/200/200-11.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zfoo-project/godot-bird/449520e8d4e611345aad3fb59559da273c85aa35/doc/image/200/200-11.png -------------------------------------------------------------------------------- /doc/image/200/200-11.png.import: -------------------------------------------------------------------------------- 1 | [remap] 2 | 3 | importer="texture" 4 | type="CompressedTexture2D" 5 | uid="uid://wrcgy4t2svu7" 6 | path="res://.godot/imported/200-11.png-a13b1c96be86b8a39060ad4246343bdb.ctex" 7 | metadata={ 8 | "vram_texture": false 9 | } 10 | 11 | [deps] 12 | 13 | source_file="res://doc/image/200/200-11.png" 14 | dest_files=["res://.godot/imported/200-11.png-a13b1c96be86b8a39060ad4246343bdb.ctex"] 15 | 16 | [params] 17 | 18 | compress/mode=0 19 | compress/high_quality=false 20 | compress/lossy_quality=0.7 21 | compress/hdr_compression=1 22 | compress/normal_map=0 23 | compress/channel_pack=0 24 | mipmaps/generate=false 25 | mipmaps/limit=-1 26 | roughness/mode=0 27 | roughness/src_normal="" 28 | process/fix_alpha_border=true 29 | process/premult_alpha=false 30 | process/normal_map_invert_y=false 31 | process/hdr_as_srgb=false 32 | process/hdr_clamp_exposure=false 33 | process/size_limit=0 34 | detect_3d/compress_to=1 35 | -------------------------------------------------------------------------------- /doc/image/200/200-2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zfoo-project/godot-bird/449520e8d4e611345aad3fb59559da273c85aa35/doc/image/200/200-2.png -------------------------------------------------------------------------------- /doc/image/200/200-2.png.import: -------------------------------------------------------------------------------- 1 | [remap] 2 | 3 | importer="texture" 4 | type="CompressedTexture2D" 5 | uid="uid://b5na7khg1wv5x" 6 | path="res://.godot/imported/200-2.png-85339324473b7203a3657b497c7fc522.ctex" 7 | metadata={ 8 | "vram_texture": false 9 | } 10 | 11 | [deps] 12 | 13 | source_file="res://doc/image/200/200-2.png" 14 | dest_files=["res://.godot/imported/200-2.png-85339324473b7203a3657b497c7fc522.ctex"] 15 | 16 | [params] 17 | 18 | compress/mode=0 19 | compress/high_quality=false 20 | compress/lossy_quality=0.7 21 | compress/hdr_compression=1 22 | compress/normal_map=0 23 | compress/channel_pack=0 24 | mipmaps/generate=false 25 | mipmaps/limit=-1 26 | roughness/mode=0 27 | roughness/src_normal="" 28 | process/fix_alpha_border=true 29 | process/premult_alpha=false 30 | process/normal_map_invert_y=false 31 | process/hdr_as_srgb=false 32 | process/hdr_clamp_exposure=false 33 | process/size_limit=0 34 | detect_3d/compress_to=1 35 | -------------------------------------------------------------------------------- /doc/image/200/200-3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zfoo-project/godot-bird/449520e8d4e611345aad3fb59559da273c85aa35/doc/image/200/200-3.png -------------------------------------------------------------------------------- /doc/image/200/200-3.png.import: -------------------------------------------------------------------------------- 1 | [remap] 2 | 3 | importer="texture" 4 | type="CompressedTexture2D" 5 | uid="uid://ccwu3lkpvibtu" 6 | path="res://.godot/imported/200-3.png-625c288c2ae5c35dca263b0a51d4fdb7.ctex" 7 | metadata={ 8 | "vram_texture": false 9 | } 10 | 11 | [deps] 12 | 13 | source_file="res://doc/image/200/200-3.png" 14 | dest_files=["res://.godot/imported/200-3.png-625c288c2ae5c35dca263b0a51d4fdb7.ctex"] 15 | 16 | [params] 17 | 18 | compress/mode=0 19 | compress/high_quality=false 20 | compress/lossy_quality=0.7 21 | compress/hdr_compression=1 22 | compress/normal_map=0 23 | compress/channel_pack=0 24 | mipmaps/generate=false 25 | mipmaps/limit=-1 26 | roughness/mode=0 27 | roughness/src_normal="" 28 | process/fix_alpha_border=true 29 | process/premult_alpha=false 30 | process/normal_map_invert_y=false 31 | process/hdr_as_srgb=false 32 | process/hdr_clamp_exposure=false 33 | process/size_limit=0 34 | detect_3d/compress_to=1 35 | -------------------------------------------------------------------------------- /doc/image/200/200-4.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zfoo-project/godot-bird/449520e8d4e611345aad3fb59559da273c85aa35/doc/image/200/200-4.png -------------------------------------------------------------------------------- /doc/image/200/200-4.png.import: -------------------------------------------------------------------------------- 1 | [remap] 2 | 3 | importer="texture" 4 | type="CompressedTexture2D" 5 | uid="uid://ospvymhnp1do" 6 | path="res://.godot/imported/200-4.png-ad1746b1899199478366b3aa8fc905d2.ctex" 7 | metadata={ 8 | "vram_texture": false 9 | } 10 | 11 | [deps] 12 | 13 | source_file="res://doc/image/200/200-4.png" 14 | dest_files=["res://.godot/imported/200-4.png-ad1746b1899199478366b3aa8fc905d2.ctex"] 15 | 16 | [params] 17 | 18 | compress/mode=0 19 | compress/high_quality=false 20 | compress/lossy_quality=0.7 21 | compress/hdr_compression=1 22 | compress/normal_map=0 23 | compress/channel_pack=0 24 | mipmaps/generate=false 25 | mipmaps/limit=-1 26 | roughness/mode=0 27 | roughness/src_normal="" 28 | process/fix_alpha_border=true 29 | process/premult_alpha=false 30 | process/normal_map_invert_y=false 31 | process/hdr_as_srgb=false 32 | process/hdr_clamp_exposure=false 33 | process/size_limit=0 34 | detect_3d/compress_to=1 35 | -------------------------------------------------------------------------------- /doc/image/200/200-5.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zfoo-project/godot-bird/449520e8d4e611345aad3fb59559da273c85aa35/doc/image/200/200-5.png -------------------------------------------------------------------------------- /doc/image/200/200-5.png.import: -------------------------------------------------------------------------------- 1 | [remap] 2 | 3 | importer="texture" 4 | type="CompressedTexture2D" 5 | uid="uid://bacidhovdmqbg" 6 | path="res://.godot/imported/200-5.png-1a1af40e054609b6271cbd80481187b3.ctex" 7 | metadata={ 8 | "vram_texture": false 9 | } 10 | 11 | [deps] 12 | 13 | source_file="res://doc/image/200/200-5.png" 14 | dest_files=["res://.godot/imported/200-5.png-1a1af40e054609b6271cbd80481187b3.ctex"] 15 | 16 | [params] 17 | 18 | compress/mode=0 19 | compress/high_quality=false 20 | compress/lossy_quality=0.7 21 | compress/hdr_compression=1 22 | compress/normal_map=0 23 | compress/channel_pack=0 24 | mipmaps/generate=false 25 | mipmaps/limit=-1 26 | roughness/mode=0 27 | roughness/src_normal="" 28 | process/fix_alpha_border=true 29 | process/premult_alpha=false 30 | process/normal_map_invert_y=false 31 | process/hdr_as_srgb=false 32 | process/hdr_clamp_exposure=false 33 | process/size_limit=0 34 | detect_3d/compress_to=1 35 | -------------------------------------------------------------------------------- /doc/image/200/200-6.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zfoo-project/godot-bird/449520e8d4e611345aad3fb59559da273c85aa35/doc/image/200/200-6.png -------------------------------------------------------------------------------- /doc/image/200/200-6.png.import: -------------------------------------------------------------------------------- 1 | [remap] 2 | 3 | importer="texture" 4 | type="CompressedTexture2D" 5 | uid="uid://bjwcippvyebmf" 6 | path="res://.godot/imported/200-6.png-927233938fe55e75d5cb6d02c961e7bb.ctex" 7 | metadata={ 8 | "vram_texture": false 9 | } 10 | 11 | [deps] 12 | 13 | source_file="res://doc/image/200/200-6.png" 14 | dest_files=["res://.godot/imported/200-6.png-927233938fe55e75d5cb6d02c961e7bb.ctex"] 15 | 16 | [params] 17 | 18 | compress/mode=0 19 | compress/high_quality=false 20 | compress/lossy_quality=0.7 21 | compress/hdr_compression=1 22 | compress/normal_map=0 23 | compress/channel_pack=0 24 | mipmaps/generate=false 25 | mipmaps/limit=-1 26 | roughness/mode=0 27 | roughness/src_normal="" 28 | process/fix_alpha_border=true 29 | process/premult_alpha=false 30 | process/normal_map_invert_y=false 31 | process/hdr_as_srgb=false 32 | process/hdr_clamp_exposure=false 33 | process/size_limit=0 34 | detect_3d/compress_to=1 35 | -------------------------------------------------------------------------------- /doc/image/200/200-7.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zfoo-project/godot-bird/449520e8d4e611345aad3fb59559da273c85aa35/doc/image/200/200-7.png -------------------------------------------------------------------------------- /doc/image/200/200-7.png.import: -------------------------------------------------------------------------------- 1 | [remap] 2 | 3 | importer="texture" 4 | type="CompressedTexture2D" 5 | uid="uid://db3pn4kmq7uob" 6 | path="res://.godot/imported/200-7.png-1cfb75dc65ddc00f2bbdacca4bda12e0.ctex" 7 | metadata={ 8 | "vram_texture": false 9 | } 10 | 11 | [deps] 12 | 13 | source_file="res://doc/image/200/200-7.png" 14 | dest_files=["res://.godot/imported/200-7.png-1cfb75dc65ddc00f2bbdacca4bda12e0.ctex"] 15 | 16 | [params] 17 | 18 | compress/mode=0 19 | compress/high_quality=false 20 | compress/lossy_quality=0.7 21 | compress/hdr_compression=1 22 | compress/normal_map=0 23 | compress/channel_pack=0 24 | mipmaps/generate=false 25 | mipmaps/limit=-1 26 | roughness/mode=0 27 | roughness/src_normal="" 28 | process/fix_alpha_border=true 29 | process/premult_alpha=false 30 | process/normal_map_invert_y=false 31 | process/hdr_as_srgb=false 32 | process/hdr_clamp_exposure=false 33 | process/size_limit=0 34 | detect_3d/compress_to=1 35 | -------------------------------------------------------------------------------- /doc/image/200/200-8.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zfoo-project/godot-bird/449520e8d4e611345aad3fb59559da273c85aa35/doc/image/200/200-8.png -------------------------------------------------------------------------------- /doc/image/200/200-8.png.import: -------------------------------------------------------------------------------- 1 | [remap] 2 | 3 | importer="texture" 4 | type="CompressedTexture2D" 5 | uid="uid://brgi7cpgvuocd" 6 | path="res://.godot/imported/200-8.png-455b543a46275f34c8dddeea8f134bb5.ctex" 7 | metadata={ 8 | "vram_texture": false 9 | } 10 | 11 | [deps] 12 | 13 | source_file="res://doc/image/200/200-8.png" 14 | dest_files=["res://.godot/imported/200-8.png-455b543a46275f34c8dddeea8f134bb5.ctex"] 15 | 16 | [params] 17 | 18 | compress/mode=0 19 | compress/high_quality=false 20 | compress/lossy_quality=0.7 21 | compress/hdr_compression=1 22 | compress/normal_map=0 23 | compress/channel_pack=0 24 | mipmaps/generate=false 25 | mipmaps/limit=-1 26 | roughness/mode=0 27 | roughness/src_normal="" 28 | process/fix_alpha_border=true 29 | process/premult_alpha=false 30 | process/normal_map_invert_y=false 31 | process/hdr_as_srgb=false 32 | process/hdr_clamp_exposure=false 33 | process/size_limit=0 34 | detect_3d/compress_to=1 35 | -------------------------------------------------------------------------------- /doc/image/200/200-9.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zfoo-project/godot-bird/449520e8d4e611345aad3fb59559da273c85aa35/doc/image/200/200-9.png -------------------------------------------------------------------------------- /doc/image/200/200-9.png.import: -------------------------------------------------------------------------------- 1 | [remap] 2 | 3 | importer="texture" 4 | type="CompressedTexture2D" 5 | uid="uid://507udif2nwk4" 6 | path="res://.godot/imported/200-9.png-88f30a9eb0f861cf5134d6007bc67dbf.ctex" 7 | metadata={ 8 | "vram_texture": false 9 | } 10 | 11 | [deps] 12 | 13 | source_file="res://doc/image/200/200-9.png" 14 | dest_files=["res://.godot/imported/200-9.png-88f30a9eb0f861cf5134d6007bc67dbf.ctex"] 15 | 16 | [params] 17 | 18 | compress/mode=0 19 | compress/high_quality=false 20 | compress/lossy_quality=0.7 21 | compress/hdr_compression=1 22 | compress/normal_map=0 23 | compress/channel_pack=0 24 | mipmaps/generate=false 25 | mipmaps/limit=-1 26 | roughness/mode=0 27 | roughness/src_normal="" 28 | process/fix_alpha_border=true 29 | process/premult_alpha=false 30 | process/normal_map_invert_y=false 31 | process/hdr_as_srgb=false 32 | process/hdr_clamp_exposure=false 33 | process/size_limit=0 34 | detect_3d/compress_to=1 35 | -------------------------------------------------------------------------------- /doc/image/205/205-0.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zfoo-project/godot-bird/449520e8d4e611345aad3fb59559da273c85aa35/doc/image/205/205-0.png -------------------------------------------------------------------------------- /doc/image/205/205-0.png.import: -------------------------------------------------------------------------------- 1 | [remap] 2 | 3 | importer="texture" 4 | type="CompressedTexture2D" 5 | uid="uid://16nwch8hhjc7" 6 | path="res://.godot/imported/205-0.png-911af88a8195244d02333e9d2a9d17c6.ctex" 7 | metadata={ 8 | "vram_texture": false 9 | } 10 | 11 | [deps] 12 | 13 | source_file="res://doc/image/205/205-0.png" 14 | dest_files=["res://.godot/imported/205-0.png-911af88a8195244d02333e9d2a9d17c6.ctex"] 15 | 16 | [params] 17 | 18 | compress/mode=0 19 | compress/high_quality=false 20 | compress/lossy_quality=0.7 21 | compress/hdr_compression=1 22 | compress/normal_map=0 23 | compress/channel_pack=0 24 | mipmaps/generate=false 25 | mipmaps/limit=-1 26 | roughness/mode=0 27 | roughness/src_normal="" 28 | process/fix_alpha_border=true 29 | process/premult_alpha=false 30 | process/normal_map_invert_y=false 31 | process/hdr_as_srgb=false 32 | process/hdr_clamp_exposure=false 33 | process/size_limit=0 34 | detect_3d/compress_to=1 35 | -------------------------------------------------------------------------------- /doc/image/224/img.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zfoo-project/godot-bird/449520e8d4e611345aad3fb59559da273c85aa35/doc/image/224/img.png -------------------------------------------------------------------------------- /doc/image/224/img.png.import: -------------------------------------------------------------------------------- 1 | [remap] 2 | 3 | importer="texture" 4 | type="CompressedTexture2D" 5 | uid="uid://cai7e4w0cel75" 6 | path="res://.godot/imported/img.png-9f842926121817ff009ab85c21d5f058.ctex" 7 | metadata={ 8 | "vram_texture": false 9 | } 10 | 11 | [deps] 12 | 13 | source_file="res://doc/image/224/img.png" 14 | dest_files=["res://.godot/imported/img.png-9f842926121817ff009ab85c21d5f058.ctex"] 15 | 16 | [params] 17 | 18 | compress/mode=0 19 | compress/high_quality=false 20 | compress/lossy_quality=0.7 21 | compress/hdr_compression=1 22 | compress/normal_map=0 23 | compress/channel_pack=0 24 | mipmaps/generate=false 25 | mipmaps/limit=-1 26 | roughness/mode=0 27 | roughness/src_normal="" 28 | process/fix_alpha_border=true 29 | process/premult_alpha=false 30 | process/normal_map_invert_y=false 31 | process/hdr_as_srgb=false 32 | process/hdr_clamp_exposure=false 33 | process/size_limit=0 34 | detect_3d/compress_to=1 35 | -------------------------------------------------------------------------------- /doc/image/227/img.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zfoo-project/godot-bird/449520e8d4e611345aad3fb59559da273c85aa35/doc/image/227/img.png -------------------------------------------------------------------------------- /doc/image/227/img.png.import: -------------------------------------------------------------------------------- 1 | [remap] 2 | 3 | importer="texture" 4 | type="CompressedTexture2D" 5 | uid="uid://b6rn3uc6h8tit" 6 | path="res://.godot/imported/img.png-651d1e7e3a2e4ca054186a06f0d3e082.ctex" 7 | metadata={ 8 | "vram_texture": false 9 | } 10 | 11 | [deps] 12 | 13 | source_file="res://doc/image/227/img.png" 14 | dest_files=["res://.godot/imported/img.png-651d1e7e3a2e4ca054186a06f0d3e082.ctex"] 15 | 16 | [params] 17 | 18 | compress/mode=0 19 | compress/high_quality=false 20 | compress/lossy_quality=0.7 21 | compress/hdr_compression=1 22 | compress/normal_map=0 23 | compress/channel_pack=0 24 | mipmaps/generate=false 25 | mipmaps/limit=-1 26 | roughness/mode=0 27 | roughness/src_normal="" 28 | process/fix_alpha_border=true 29 | process/premult_alpha=false 30 | process/normal_map_invert_y=false 31 | process/hdr_as_srgb=false 32 | process/hdr_clamp_exposure=false 33 | process/size_limit=0 34 | detect_3d/compress_to=1 35 | -------------------------------------------------------------------------------- /doc/image/227/img_1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zfoo-project/godot-bird/449520e8d4e611345aad3fb59559da273c85aa35/doc/image/227/img_1.png -------------------------------------------------------------------------------- /doc/image/227/img_1.png.import: -------------------------------------------------------------------------------- 1 | [remap] 2 | 3 | importer="texture" 4 | type="CompressedTexture2D" 5 | uid="uid://cgfpuctgbbkmr" 6 | path="res://.godot/imported/img_1.png-2aaa4292c7a83ed78cdf3a7da6afc68a.ctex" 7 | metadata={ 8 | "vram_texture": false 9 | } 10 | 11 | [deps] 12 | 13 | source_file="res://doc/image/227/img_1.png" 14 | dest_files=["res://.godot/imported/img_1.png-2aaa4292c7a83ed78cdf3a7da6afc68a.ctex"] 15 | 16 | [params] 17 | 18 | compress/mode=0 19 | compress/high_quality=false 20 | compress/lossy_quality=0.7 21 | compress/hdr_compression=1 22 | compress/normal_map=0 23 | compress/channel_pack=0 24 | mipmaps/generate=false 25 | mipmaps/limit=-1 26 | roughness/mode=0 27 | roughness/src_normal="" 28 | process/fix_alpha_border=true 29 | process/premult_alpha=false 30 | process/normal_map_invert_y=false 31 | process/hdr_as_srgb=false 32 | process/hdr_clamp_exposure=false 33 | process/size_limit=0 34 | detect_3d/compress_to=1 35 | -------------------------------------------------------------------------------- /doc/image/232/img.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zfoo-project/godot-bird/449520e8d4e611345aad3fb59559da273c85aa35/doc/image/232/img.png -------------------------------------------------------------------------------- /doc/image/232/img.png.import: -------------------------------------------------------------------------------- 1 | [remap] 2 | 3 | importer="texture" 4 | type="CompressedTexture2D" 5 | uid="uid://brv6erugfo4rj" 6 | path="res://.godot/imported/img.png-5b1f7e1c2e50a18d67c37b0fd727fe95.ctex" 7 | metadata={ 8 | "vram_texture": false 9 | } 10 | 11 | [deps] 12 | 13 | source_file="res://doc/image/232/img.png" 14 | dest_files=["res://.godot/imported/img.png-5b1f7e1c2e50a18d67c37b0fd727fe95.ctex"] 15 | 16 | [params] 17 | 18 | compress/mode=0 19 | compress/high_quality=false 20 | compress/lossy_quality=0.7 21 | compress/hdr_compression=1 22 | compress/normal_map=0 23 | compress/channel_pack=0 24 | mipmaps/generate=false 25 | mipmaps/limit=-1 26 | roughness/mode=0 27 | roughness/src_normal="" 28 | process/fix_alpha_border=true 29 | process/premult_alpha=false 30 | process/normal_map_invert_y=false 31 | process/hdr_as_srgb=false 32 | process/hdr_clamp_exposure=false 33 | process/size_limit=0 34 | detect_3d/compress_to=1 35 | -------------------------------------------------------------------------------- /doc/image/237/img.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zfoo-project/godot-bird/449520e8d4e611345aad3fb59559da273c85aa35/doc/image/237/img.png -------------------------------------------------------------------------------- /doc/image/237/img.png.import: -------------------------------------------------------------------------------- 1 | [remap] 2 | 3 | importer="texture" 4 | type="CompressedTexture2D" 5 | uid="uid://bfigxootgysr2" 6 | path="res://.godot/imported/img.png-5b423365b304aca909cd9101c3948ead.ctex" 7 | metadata={ 8 | "vram_texture": false 9 | } 10 | 11 | [deps] 12 | 13 | source_file="res://doc/image/237/img.png" 14 | dest_files=["res://.godot/imported/img.png-5b423365b304aca909cd9101c3948ead.ctex"] 15 | 16 | [params] 17 | 18 | compress/mode=0 19 | compress/high_quality=false 20 | compress/lossy_quality=0.7 21 | compress/hdr_compression=1 22 | compress/normal_map=0 23 | compress/channel_pack=0 24 | mipmaps/generate=false 25 | mipmaps/limit=-1 26 | roughness/mode=0 27 | roughness/src_normal="" 28 | process/fix_alpha_border=true 29 | process/premult_alpha=false 30 | process/normal_map_invert_y=false 31 | process/hdr_as_srgb=false 32 | process/hdr_clamp_exposure=false 33 | process/size_limit=0 34 | detect_3d/compress_to=1 35 | -------------------------------------------------------------------------------- /doc/image/237/img_1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zfoo-project/godot-bird/449520e8d4e611345aad3fb59559da273c85aa35/doc/image/237/img_1.png -------------------------------------------------------------------------------- /doc/image/237/img_1.png.import: -------------------------------------------------------------------------------- 1 | [remap] 2 | 3 | importer="texture" 4 | type="CompressedTexture2D" 5 | uid="uid://dtr7drdkqsqii" 6 | path="res://.godot/imported/img_1.png-2077a2ca5ec89cd163fbe0cfb6f25fed.ctex" 7 | metadata={ 8 | "vram_texture": false 9 | } 10 | 11 | [deps] 12 | 13 | source_file="res://doc/image/237/img_1.png" 14 | dest_files=["res://.godot/imported/img_1.png-2077a2ca5ec89cd163fbe0cfb6f25fed.ctex"] 15 | 16 | [params] 17 | 18 | compress/mode=0 19 | compress/high_quality=false 20 | compress/lossy_quality=0.7 21 | compress/hdr_compression=1 22 | compress/normal_map=0 23 | compress/channel_pack=0 24 | mipmaps/generate=false 25 | mipmaps/limit=-1 26 | roughness/mode=0 27 | roughness/src_normal="" 28 | process/fix_alpha_border=true 29 | process/premult_alpha=false 30 | process/normal_map_invert_y=false 31 | process/hdr_as_srgb=false 32 | process/hdr_clamp_exposure=false 33 | process/size_limit=0 34 | detect_3d/compress_to=1 35 | -------------------------------------------------------------------------------- /doc/image/298/img.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zfoo-project/godot-bird/449520e8d4e611345aad3fb59559da273c85aa35/doc/image/298/img.png -------------------------------------------------------------------------------- /doc/image/298/img.png.import: -------------------------------------------------------------------------------- 1 | [remap] 2 | 3 | importer="texture" 4 | type="CompressedTexture2D" 5 | uid="uid://ckv4ymbrkdruv" 6 | path="res://.godot/imported/img.png-fb7fe73611848a7376930c50b1c1380d.ctex" 7 | metadata={ 8 | "vram_texture": false 9 | } 10 | 11 | [deps] 12 | 13 | source_file="res://doc/image/298/img.png" 14 | dest_files=["res://.godot/imported/img.png-fb7fe73611848a7376930c50b1c1380d.ctex"] 15 | 16 | [params] 17 | 18 | compress/mode=0 19 | compress/high_quality=false 20 | compress/lossy_quality=0.7 21 | compress/hdr_compression=1 22 | compress/normal_map=0 23 | compress/channel_pack=0 24 | mipmaps/generate=false 25 | mipmaps/limit=-1 26 | roughness/mode=0 27 | roughness/src_normal="" 28 | process/fix_alpha_border=true 29 | process/premult_alpha=false 30 | process/normal_map_invert_y=false 31 | process/hdr_as_srgb=false 32 | process/hdr_clamp_exposure=false 33 | process/size_limit=0 34 | detect_3d/compress_to=1 35 | -------------------------------------------------------------------------------- /doc/image/298/img_1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zfoo-project/godot-bird/449520e8d4e611345aad3fb59559da273c85aa35/doc/image/298/img_1.png -------------------------------------------------------------------------------- /doc/image/298/img_1.png.import: -------------------------------------------------------------------------------- 1 | [remap] 2 | 3 | importer="texture" 4 | type="CompressedTexture2D" 5 | uid="uid://si0v6addd8fi" 6 | path="res://.godot/imported/img_1.png-4392f8e1f011c2e8abd0b52f5baa94d3.ctex" 7 | metadata={ 8 | "vram_texture": false 9 | } 10 | 11 | [deps] 12 | 13 | source_file="res://doc/image/298/img_1.png" 14 | dest_files=["res://.godot/imported/img_1.png-4392f8e1f011c2e8abd0b52f5baa94d3.ctex"] 15 | 16 | [params] 17 | 18 | compress/mode=0 19 | compress/high_quality=false 20 | compress/lossy_quality=0.7 21 | compress/hdr_compression=1 22 | compress/normal_map=0 23 | compress/channel_pack=0 24 | mipmaps/generate=false 25 | mipmaps/limit=-1 26 | roughness/mode=0 27 | roughness/src_normal="" 28 | process/fix_alpha_border=true 29 | process/premult_alpha=false 30 | process/normal_map_invert_y=false 31 | process/hdr_as_srgb=false 32 | process/hdr_clamp_exposure=false 33 | process/size_limit=0 34 | detect_3d/compress_to=1 35 | -------------------------------------------------------------------------------- /doc/image/298/img_10.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zfoo-project/godot-bird/449520e8d4e611345aad3fb59559da273c85aa35/doc/image/298/img_10.png -------------------------------------------------------------------------------- /doc/image/298/img_11.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zfoo-project/godot-bird/449520e8d4e611345aad3fb59559da273c85aa35/doc/image/298/img_11.png -------------------------------------------------------------------------------- /doc/image/298/img_2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zfoo-project/godot-bird/449520e8d4e611345aad3fb59559da273c85aa35/doc/image/298/img_2.png -------------------------------------------------------------------------------- /doc/image/298/img_3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zfoo-project/godot-bird/449520e8d4e611345aad3fb59559da273c85aa35/doc/image/298/img_3.png -------------------------------------------------------------------------------- /doc/image/298/img_4.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zfoo-project/godot-bird/449520e8d4e611345aad3fb59559da273c85aa35/doc/image/298/img_4.png -------------------------------------------------------------------------------- /doc/image/298/img_4.png.import: -------------------------------------------------------------------------------- 1 | [remap] 2 | 3 | importer="texture" 4 | type="CompressedTexture2D" 5 | uid="uid://mpeqrkrwvro" 6 | path="res://.godot/imported/img_4.png-c0918f1147de1a4a7fccf27d98d34d6c.ctex" 7 | metadata={ 8 | "vram_texture": false 9 | } 10 | 11 | [deps] 12 | 13 | source_file="res://doc/image/298/img_4.png" 14 | dest_files=["res://.godot/imported/img_4.png-c0918f1147de1a4a7fccf27d98d34d6c.ctex"] 15 | 16 | [params] 17 | 18 | compress/mode=0 19 | compress/high_quality=false 20 | compress/lossy_quality=0.7 21 | compress/hdr_compression=1 22 | compress/normal_map=0 23 | compress/channel_pack=0 24 | mipmaps/generate=false 25 | mipmaps/limit=-1 26 | roughness/mode=0 27 | roughness/src_normal="" 28 | process/fix_alpha_border=true 29 | process/premult_alpha=false 30 | process/normal_map_invert_y=false 31 | process/hdr_as_srgb=false 32 | process/hdr_clamp_exposure=false 33 | process/size_limit=0 34 | detect_3d/compress_to=1 35 | -------------------------------------------------------------------------------- /doc/image/298/img_5.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zfoo-project/godot-bird/449520e8d4e611345aad3fb59559da273c85aa35/doc/image/298/img_5.png -------------------------------------------------------------------------------- /doc/image/298/img_6.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zfoo-project/godot-bird/449520e8d4e611345aad3fb59559da273c85aa35/doc/image/298/img_6.png -------------------------------------------------------------------------------- /doc/image/298/img_6.png.import: -------------------------------------------------------------------------------- 1 | [remap] 2 | 3 | importer="texture" 4 | type="CompressedTexture2D" 5 | uid="uid://ufoipsutsvrw" 6 | path="res://.godot/imported/img_6.png-628932cf4840577d7e96b968a3fb3cf6.ctex" 7 | metadata={ 8 | "vram_texture": false 9 | } 10 | 11 | [deps] 12 | 13 | source_file="res://doc/image/298/img_6.png" 14 | dest_files=["res://.godot/imported/img_6.png-628932cf4840577d7e96b968a3fb3cf6.ctex"] 15 | 16 | [params] 17 | 18 | compress/mode=0 19 | compress/high_quality=false 20 | compress/lossy_quality=0.7 21 | compress/hdr_compression=1 22 | compress/normal_map=0 23 | compress/channel_pack=0 24 | mipmaps/generate=false 25 | mipmaps/limit=-1 26 | roughness/mode=0 27 | roughness/src_normal="" 28 | process/fix_alpha_border=true 29 | process/premult_alpha=false 30 | process/normal_map_invert_y=false 31 | process/hdr_as_srgb=false 32 | process/hdr_clamp_exposure=false 33 | process/size_limit=0 34 | detect_3d/compress_to=1 35 | -------------------------------------------------------------------------------- /doc/image/298/img_7.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zfoo-project/godot-bird/449520e8d4e611345aad3fb59559da273c85aa35/doc/image/298/img_7.png -------------------------------------------------------------------------------- /doc/image/298/img_7.png.import: -------------------------------------------------------------------------------- 1 | [remap] 2 | 3 | importer="texture" 4 | type="CompressedTexture2D" 5 | uid="uid://758otkdwwagf" 6 | path="res://.godot/imported/img_7.png-3337cb396383d271a57438c55dcba632.ctex" 7 | metadata={ 8 | "vram_texture": false 9 | } 10 | 11 | [deps] 12 | 13 | source_file="res://doc/image/298/img_7.png" 14 | dest_files=["res://.godot/imported/img_7.png-3337cb396383d271a57438c55dcba632.ctex"] 15 | 16 | [params] 17 | 18 | compress/mode=0 19 | compress/high_quality=false 20 | compress/lossy_quality=0.7 21 | compress/hdr_compression=1 22 | compress/normal_map=0 23 | compress/channel_pack=0 24 | mipmaps/generate=false 25 | mipmaps/limit=-1 26 | roughness/mode=0 27 | roughness/src_normal="" 28 | process/fix_alpha_border=true 29 | process/premult_alpha=false 30 | process/normal_map_invert_y=false 31 | process/hdr_as_srgb=false 32 | process/hdr_clamp_exposure=false 33 | process/size_limit=0 34 | detect_3d/compress_to=1 35 | -------------------------------------------------------------------------------- /doc/image/298/img_8.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zfoo-project/godot-bird/449520e8d4e611345aad3fb59559da273c85aa35/doc/image/298/img_8.png -------------------------------------------------------------------------------- /doc/image/298/img_9.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zfoo-project/godot-bird/449520e8d4e611345aad3fb59559da273c85aa35/doc/image/298/img_9.png -------------------------------------------------------------------------------- /doc/image/299/img.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zfoo-project/godot-bird/449520e8d4e611345aad3fb59559da273c85aa35/doc/image/299/img.png -------------------------------------------------------------------------------- /doc/image/299/img.png.import: -------------------------------------------------------------------------------- 1 | [remap] 2 | 3 | importer="texture" 4 | type="CompressedTexture2D" 5 | uid="uid://dmi0tnxn46h2u" 6 | path="res://.godot/imported/img.png-feb74a742eba167cb6c0594334ebd545.ctex" 7 | metadata={ 8 | "vram_texture": false 9 | } 10 | 11 | [deps] 12 | 13 | source_file="res://doc/image/299/img.png" 14 | dest_files=["res://.godot/imported/img.png-feb74a742eba167cb6c0594334ebd545.ctex"] 15 | 16 | [params] 17 | 18 | compress/mode=0 19 | compress/high_quality=false 20 | compress/lossy_quality=0.7 21 | compress/hdr_compression=1 22 | compress/normal_map=0 23 | compress/channel_pack=0 24 | mipmaps/generate=false 25 | mipmaps/limit=-1 26 | roughness/mode=0 27 | roughness/src_normal="" 28 | process/fix_alpha_border=true 29 | process/premult_alpha=false 30 | process/normal_map_invert_y=false 31 | process/hdr_as_srgb=false 32 | process/hdr_clamp_exposure=false 33 | process/size_limit=0 34 | detect_3d/compress_to=1 35 | -------------------------------------------------------------------------------- /doc/image/299/img_1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zfoo-project/godot-bird/449520e8d4e611345aad3fb59559da273c85aa35/doc/image/299/img_1.png -------------------------------------------------------------------------------- /doc/image/299/img_2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zfoo-project/godot-bird/449520e8d4e611345aad3fb59559da273c85aa35/doc/image/299/img_2.png -------------------------------------------------------------------------------- /doc/image/299/img_2.png.import: -------------------------------------------------------------------------------- 1 | [remap] 2 | 3 | importer="texture" 4 | type="CompressedTexture2D" 5 | uid="uid://ha7dsh71wji3" 6 | path="res://.godot/imported/img_2.png-e769a72771deee350a8335fc20e2b8cb.ctex" 7 | metadata={ 8 | "vram_texture": false 9 | } 10 | 11 | [deps] 12 | 13 | source_file="res://doc/image/299/img_2.png" 14 | dest_files=["res://.godot/imported/img_2.png-e769a72771deee350a8335fc20e2b8cb.ctex"] 15 | 16 | [params] 17 | 18 | compress/mode=0 19 | compress/high_quality=false 20 | compress/lossy_quality=0.7 21 | compress/hdr_compression=1 22 | compress/normal_map=0 23 | compress/channel_pack=0 24 | mipmaps/generate=false 25 | mipmaps/limit=-1 26 | roughness/mode=0 27 | roughness/src_normal="" 28 | process/fix_alpha_border=true 29 | process/premult_alpha=false 30 | process/normal_map_invert_y=false 31 | process/hdr_as_srgb=false 32 | process/hdr_clamp_exposure=false 33 | process/size_limit=0 34 | detect_3d/compress_to=1 35 | -------------------------------------------------------------------------------- /doc/image/304/img.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zfoo-project/godot-bird/449520e8d4e611345aad3fb59559da273c85aa35/doc/image/304/img.png -------------------------------------------------------------------------------- /doc/image/304/img.png.import: -------------------------------------------------------------------------------- 1 | [remap] 2 | 3 | importer="texture" 4 | type="CompressedTexture2D" 5 | uid="uid://cq5osoaivh7dd" 6 | path="res://.godot/imported/img.png-db6b3eceba1bf655023725757486a3f0.ctex" 7 | metadata={ 8 | "vram_texture": false 9 | } 10 | 11 | [deps] 12 | 13 | source_file="res://doc/image/304/img.png" 14 | dest_files=["res://.godot/imported/img.png-db6b3eceba1bf655023725757486a3f0.ctex"] 15 | 16 | [params] 17 | 18 | compress/mode=0 19 | compress/high_quality=false 20 | compress/lossy_quality=0.7 21 | compress/hdr_compression=1 22 | compress/normal_map=0 23 | compress/channel_pack=0 24 | mipmaps/generate=false 25 | mipmaps/limit=-1 26 | roughness/mode=0 27 | roughness/src_normal="" 28 | process/fix_alpha_border=true 29 | process/premult_alpha=false 30 | process/normal_map_invert_y=false 31 | process/hdr_as_srgb=false 32 | process/hdr_clamp_exposure=false 33 | process/size_limit=0 34 | detect_3d/compress_to=1 35 | -------------------------------------------------------------------------------- /doc/image/306/img.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zfoo-project/godot-bird/449520e8d4e611345aad3fb59559da273c85aa35/doc/image/306/img.jpg -------------------------------------------------------------------------------- /doc/image/306/img.jpg.import: -------------------------------------------------------------------------------- 1 | [remap] 2 | 3 | importer="texture" 4 | type="CompressedTexture2D" 5 | uid="uid://dpfbajye4qurs" 6 | path="res://.godot/imported/img.jpg-436d00b2e8888bcb446bbd2b7d30fadd.ctex" 7 | metadata={ 8 | "vram_texture": false 9 | } 10 | 11 | [deps] 12 | 13 | source_file="res://doc/image/306/img.jpg" 14 | dest_files=["res://.godot/imported/img.jpg-436d00b2e8888bcb446bbd2b7d30fadd.ctex"] 15 | 16 | [params] 17 | 18 | compress/mode=0 19 | compress/high_quality=false 20 | compress/lossy_quality=0.7 21 | compress/hdr_compression=1 22 | compress/normal_map=0 23 | compress/channel_pack=0 24 | mipmaps/generate=false 25 | mipmaps/limit=-1 26 | roughness/mode=0 27 | roughness/src_normal="" 28 | process/fix_alpha_border=true 29 | process/premult_alpha=false 30 | process/normal_map_invert_y=false 31 | process/hdr_as_srgb=false 32 | process/hdr_clamp_exposure=false 33 | process/size_limit=0 34 | detect_3d/compress_to=1 35 | -------------------------------------------------------------------------------- /doc/image/306/img.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zfoo-project/godot-bird/449520e8d4e611345aad3fb59559da273c85aa35/doc/image/306/img.png -------------------------------------------------------------------------------- /doc/image/306/img.png.import: -------------------------------------------------------------------------------- 1 | [remap] 2 | 3 | importer="texture" 4 | type="CompressedTexture2D" 5 | uid="uid://8rqac1a61jrk" 6 | path="res://.godot/imported/img.png-b154fb3a3c09cc4ca0fbb03796d99cb2.ctex" 7 | metadata={ 8 | "vram_texture": false 9 | } 10 | 11 | [deps] 12 | 13 | source_file="res://doc/image/306/img.png" 14 | dest_files=["res://.godot/imported/img.png-b154fb3a3c09cc4ca0fbb03796d99cb2.ctex"] 15 | 16 | [params] 17 | 18 | compress/mode=0 19 | compress/high_quality=false 20 | compress/lossy_quality=0.7 21 | compress/hdr_compression=1 22 | compress/normal_map=0 23 | compress/channel_pack=0 24 | mipmaps/generate=false 25 | mipmaps/limit=-1 26 | roughness/mode=0 27 | roughness/src_normal="" 28 | process/fix_alpha_border=true 29 | process/premult_alpha=false 30 | process/normal_map_invert_y=false 31 | process/hdr_as_srgb=false 32 | process/hdr_clamp_exposure=false 33 | process/size_limit=0 34 | detect_3d/compress_to=1 35 | -------------------------------------------------------------------------------- /doc/image/canvaslayers.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zfoo-project/godot-bird/449520e8d4e611345aad3fb59559da273c85aa35/doc/image/canvaslayers.png -------------------------------------------------------------------------------- /doc/software/TexturePacker.rar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zfoo-project/godot-bird/449520e8d4e611345aad3fb59559da273c85aa35/doc/software/TexturePacker.rar -------------------------------------------------------------------------------- /font/FB.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zfoo-project/godot-bird/449520e8d4e611345aad3fb59559da273c85aa35/font/FB.ttf -------------------------------------------------------------------------------- /font/FB.ttf.import: -------------------------------------------------------------------------------- 1 | [remap] 2 | 3 | importer="font_data_dynamic" 4 | type="FontFile" 5 | uid="uid://y6i73v06b3es" 6 | path="res://.godot/imported/FB.ttf-9b0a953f89b4a28a0cc96f372e4488e1.fontdata" 7 | 8 | [deps] 9 | 10 | source_file="res://font/FB.ttf" 11 | dest_files=["res://.godot/imported/FB.ttf-9b0a953f89b4a28a0cc96f372e4488e1.fontdata"] 12 | 13 | [params] 14 | 15 | Rendering=null 16 | antialiasing=1 17 | generate_mipmaps=false 18 | disable_embedded_bitmaps=true 19 | multichannel_signed_distance_field=false 20 | msdf_pixel_range=8 21 | msdf_size=48 22 | allow_system_fallback=true 23 | force_autohinter=false 24 | hinting=1 25 | subpixel_positioning=1 26 | keep_rounding_remainders=true 27 | oversampling=0.0 28 | Fallbacks=null 29 | fallbacks=[] 30 | Compress=null 31 | compress=true 32 | preload=[] 33 | language_support={} 34 | script_support={} 35 | opentype_features={} 36 | -------------------------------------------------------------------------------- /font/HarmonyOS_Sans_SC_Medium.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zfoo-project/godot-bird/449520e8d4e611345aad3fb59559da273c85aa35/font/HarmonyOS_Sans_SC_Medium.ttf -------------------------------------------------------------------------------- /godot_resource_storage.bin.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zfoo-project/godot-bird/449520e8d4e611345aad3fb59559da273c85aa35/godot_resource_storage.bin.txt -------------------------------------------------------------------------------- /image/Bush.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zfoo-project/godot-bird/449520e8d4e611345aad3fb59559da273c85aa35/image/Bush.png -------------------------------------------------------------------------------- /image/Bush.png.import: -------------------------------------------------------------------------------- 1 | [remap] 2 | 3 | importer="texture" 4 | type="CompressedTexture2D" 5 | uid="uid://dgkjy5kedj3q1" 6 | path="res://.godot/imported/Bush.png-3fb78668fa48ceebe9d7323a7ee4be64.ctex" 7 | metadata={ 8 | "vram_texture": false 9 | } 10 | 11 | [deps] 12 | 13 | source_file="res://image/Bush.png" 14 | dest_files=["res://.godot/imported/Bush.png-3fb78668fa48ceebe9d7323a7ee4be64.ctex"] 15 | 16 | [params] 17 | 18 | compress/mode=0 19 | compress/high_quality=false 20 | compress/lossy_quality=0.7 21 | compress/hdr_compression=1 22 | compress/normal_map=0 23 | compress/channel_pack=0 24 | mipmaps/generate=false 25 | mipmaps/limit=-1 26 | roughness/mode=0 27 | roughness/src_normal="" 28 | process/fix_alpha_border=true 29 | process/premult_alpha=false 30 | process/normal_map_invert_y=false 31 | process/hdr_as_srgb=false 32 | process/hdr_clamp_exposure=false 33 | process/size_limit=0 34 | detect_3d/compress_to=1 35 | -------------------------------------------------------------------------------- /image/Foreground.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zfoo-project/godot-bird/449520e8d4e611345aad3fb59559da273c85aa35/image/Foreground.png -------------------------------------------------------------------------------- /image/background.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zfoo-project/godot-bird/449520e8d4e611345aad3fb59559da273c85aa35/image/background.png -------------------------------------------------------------------------------- /image/bg_day.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zfoo-project/godot-bird/449520e8d4e611345aad3fb59559da273c85aa35/image/bg_day.png -------------------------------------------------------------------------------- /image/bg_day.png.import: -------------------------------------------------------------------------------- 1 | [remap] 2 | 3 | importer="texture" 4 | type="CompressedTexture2D" 5 | uid="uid://ollibr005jsd" 6 | path="res://.godot/imported/bg_day.png-c0957932880766cfddf7706e82db0a09.ctex" 7 | metadata={ 8 | "vram_texture": false 9 | } 10 | 11 | [deps] 12 | 13 | source_file="res://image/bg_day.png" 14 | dest_files=["res://.godot/imported/bg_day.png-c0957932880766cfddf7706e82db0a09.ctex"] 15 | 16 | [params] 17 | 18 | compress/mode=0 19 | compress/high_quality=false 20 | compress/lossy_quality=0.7 21 | compress/hdr_compression=1 22 | compress/normal_map=0 23 | compress/channel_pack=0 24 | mipmaps/generate=false 25 | mipmaps/limit=-1 26 | roughness/mode=0 27 | roughness/src_normal="" 28 | process/fix_alpha_border=true 29 | process/premult_alpha=false 30 | process/normal_map_invert_y=false 31 | process/hdr_as_srgb=false 32 | process/hdr_clamp_exposure=false 33 | process/size_limit=0 34 | detect_3d/compress_to=1 35 | -------------------------------------------------------------------------------- /image/bg_night.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zfoo-project/godot-bird/449520e8d4e611345aad3fb59559da273c85aa35/image/bg_night.png -------------------------------------------------------------------------------- /image/bg_night.png.import: -------------------------------------------------------------------------------- 1 | [remap] 2 | 3 | importer="texture" 4 | type="CompressedTexture2D" 5 | uid="uid://6o05o1c7xtj0" 6 | path="res://.godot/imported/bg_night.png-f33a9950e24604fbd76a8904e6e53c64.ctex" 7 | metadata={ 8 | "vram_texture": false 9 | } 10 | 11 | [deps] 12 | 13 | source_file="res://image/bg_night.png" 14 | dest_files=["res://.godot/imported/bg_night.png-f33a9950e24604fbd76a8904e6e53c64.ctex"] 15 | 16 | [params] 17 | 18 | compress/mode=0 19 | compress/high_quality=false 20 | compress/lossy_quality=0.7 21 | compress/hdr_compression=1 22 | compress/normal_map=0 23 | compress/channel_pack=0 24 | mipmaps/generate=false 25 | mipmaps/limit=-1 26 | roughness/mode=0 27 | roughness/src_normal="" 28 | process/fix_alpha_border=true 29 | process/premult_alpha=false 30 | process/normal_map_invert_y=false 31 | process/hdr_as_srgb=false 32 | process/hdr_clamp_exposure=false 33 | process/size_limit=0 34 | detect_3d/compress_to=1 35 | -------------------------------------------------------------------------------- /image/bird0_0.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zfoo-project/godot-bird/449520e8d4e611345aad3fb59559da273c85aa35/image/bird0_0.png -------------------------------------------------------------------------------- /image/bird0_0.png.import: -------------------------------------------------------------------------------- 1 | [remap] 2 | 3 | importer="texture" 4 | type="CompressedTexture2D" 5 | uid="uid://3x7ym4gw2wdi" 6 | path="res://.godot/imported/bird0_0.png-96cb75585236d2c5c16e7e4852a39d0c.ctex" 7 | metadata={ 8 | "vram_texture": false 9 | } 10 | 11 | [deps] 12 | 13 | source_file="res://image/bird0_0.png" 14 | dest_files=["res://.godot/imported/bird0_0.png-96cb75585236d2c5c16e7e4852a39d0c.ctex"] 15 | 16 | [params] 17 | 18 | compress/mode=0 19 | compress/high_quality=false 20 | compress/lossy_quality=0.7 21 | compress/hdr_compression=1 22 | compress/normal_map=0 23 | compress/channel_pack=0 24 | mipmaps/generate=false 25 | mipmaps/limit=-1 26 | roughness/mode=0 27 | roughness/src_normal="" 28 | process/fix_alpha_border=true 29 | process/premult_alpha=false 30 | process/normal_map_invert_y=false 31 | process/hdr_as_srgb=false 32 | process/hdr_clamp_exposure=false 33 | process/size_limit=0 34 | detect_3d/compress_to=1 35 | -------------------------------------------------------------------------------- /image/bird0_1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zfoo-project/godot-bird/449520e8d4e611345aad3fb59559da273c85aa35/image/bird0_1.png -------------------------------------------------------------------------------- /image/bird0_1.png.import: -------------------------------------------------------------------------------- 1 | [remap] 2 | 3 | importer="texture" 4 | type="CompressedTexture2D" 5 | uid="uid://bhq2q5csrvf6c" 6 | path="res://.godot/imported/bird0_1.png-1fffb2d416a186f77965d44ab4458a24.ctex" 7 | metadata={ 8 | "vram_texture": false 9 | } 10 | 11 | [deps] 12 | 13 | source_file="res://image/bird0_1.png" 14 | dest_files=["res://.godot/imported/bird0_1.png-1fffb2d416a186f77965d44ab4458a24.ctex"] 15 | 16 | [params] 17 | 18 | compress/mode=0 19 | compress/high_quality=false 20 | compress/lossy_quality=0.7 21 | compress/hdr_compression=1 22 | compress/normal_map=0 23 | compress/channel_pack=0 24 | mipmaps/generate=false 25 | mipmaps/limit=-1 26 | roughness/mode=0 27 | roughness/src_normal="" 28 | process/fix_alpha_border=true 29 | process/premult_alpha=false 30 | process/normal_map_invert_y=false 31 | process/hdr_as_srgb=false 32 | process/hdr_clamp_exposure=false 33 | process/size_limit=0 34 | detect_3d/compress_to=1 35 | -------------------------------------------------------------------------------- /image/bird0_2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zfoo-project/godot-bird/449520e8d4e611345aad3fb59559da273c85aa35/image/bird0_2.png -------------------------------------------------------------------------------- /image/bird0_2.png.import: -------------------------------------------------------------------------------- 1 | [remap] 2 | 3 | importer="texture" 4 | type="CompressedTexture2D" 5 | uid="uid://ffqyrvetr2n2" 6 | path="res://.godot/imported/bird0_2.png-7813351fa11116df6ef04235301eac0b.ctex" 7 | metadata={ 8 | "vram_texture": false 9 | } 10 | 11 | [deps] 12 | 13 | source_file="res://image/bird0_2.png" 14 | dest_files=["res://.godot/imported/bird0_2.png-7813351fa11116df6ef04235301eac0b.ctex"] 15 | 16 | [params] 17 | 18 | compress/mode=0 19 | compress/high_quality=false 20 | compress/lossy_quality=0.7 21 | compress/hdr_compression=1 22 | compress/normal_map=0 23 | compress/channel_pack=0 24 | mipmaps/generate=false 25 | mipmaps/limit=-1 26 | roughness/mode=0 27 | roughness/src_normal="" 28 | process/fix_alpha_border=true 29 | process/premult_alpha=false 30 | process/normal_map_invert_y=false 31 | process/hdr_as_srgb=false 32 | process/hdr_clamp_exposure=false 33 | process/size_limit=0 34 | detect_3d/compress_to=1 35 | -------------------------------------------------------------------------------- /image/bird1_0.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zfoo-project/godot-bird/449520e8d4e611345aad3fb59559da273c85aa35/image/bird1_0.png -------------------------------------------------------------------------------- /image/bird1_0.png.import: -------------------------------------------------------------------------------- 1 | [remap] 2 | 3 | importer="texture" 4 | type="CompressedTexture2D" 5 | uid="uid://dynec8127lrcn" 6 | path="res://.godot/imported/bird1_0.png-494e12214013349b372314484081033b.ctex" 7 | metadata={ 8 | "vram_texture": false 9 | } 10 | 11 | [deps] 12 | 13 | source_file="res://image/bird1_0.png" 14 | dest_files=["res://.godot/imported/bird1_0.png-494e12214013349b372314484081033b.ctex"] 15 | 16 | [params] 17 | 18 | compress/mode=0 19 | compress/high_quality=false 20 | compress/lossy_quality=0.7 21 | compress/hdr_compression=1 22 | compress/normal_map=0 23 | compress/channel_pack=0 24 | mipmaps/generate=false 25 | mipmaps/limit=-1 26 | roughness/mode=0 27 | roughness/src_normal="" 28 | process/fix_alpha_border=true 29 | process/premult_alpha=false 30 | process/normal_map_invert_y=false 31 | process/hdr_as_srgb=false 32 | process/hdr_clamp_exposure=false 33 | process/size_limit=0 34 | detect_3d/compress_to=1 35 | -------------------------------------------------------------------------------- /image/bird1_1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zfoo-project/godot-bird/449520e8d4e611345aad3fb59559da273c85aa35/image/bird1_1.png -------------------------------------------------------------------------------- /image/bird1_1.png.import: -------------------------------------------------------------------------------- 1 | [remap] 2 | 3 | importer="texture" 4 | type="CompressedTexture2D" 5 | uid="uid://1pqepk4bsrym" 6 | path="res://.godot/imported/bird1_1.png-0860f5c3cc6c2ed9b64bca4a8a66d744.ctex" 7 | metadata={ 8 | "vram_texture": false 9 | } 10 | 11 | [deps] 12 | 13 | source_file="res://image/bird1_1.png" 14 | dest_files=["res://.godot/imported/bird1_1.png-0860f5c3cc6c2ed9b64bca4a8a66d744.ctex"] 15 | 16 | [params] 17 | 18 | compress/mode=0 19 | compress/high_quality=false 20 | compress/lossy_quality=0.7 21 | compress/hdr_compression=1 22 | compress/normal_map=0 23 | compress/channel_pack=0 24 | mipmaps/generate=false 25 | mipmaps/limit=-1 26 | roughness/mode=0 27 | roughness/src_normal="" 28 | process/fix_alpha_border=true 29 | process/premult_alpha=false 30 | process/normal_map_invert_y=false 31 | process/hdr_as_srgb=false 32 | process/hdr_clamp_exposure=false 33 | process/size_limit=0 34 | detect_3d/compress_to=1 35 | -------------------------------------------------------------------------------- /image/bird1_2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zfoo-project/godot-bird/449520e8d4e611345aad3fb59559da273c85aa35/image/bird1_2.png -------------------------------------------------------------------------------- /image/bird1_2.png.import: -------------------------------------------------------------------------------- 1 | [remap] 2 | 3 | importer="texture" 4 | type="CompressedTexture2D" 5 | uid="uid://co3v3ascl0p3o" 6 | path="res://.godot/imported/bird1_2.png-1ab7d5d6a96848d6446e2b835fe2d3e8.ctex" 7 | metadata={ 8 | "vram_texture": false 9 | } 10 | 11 | [deps] 12 | 13 | source_file="res://image/bird1_2.png" 14 | dest_files=["res://.godot/imported/bird1_2.png-1ab7d5d6a96848d6446e2b835fe2d3e8.ctex"] 15 | 16 | [params] 17 | 18 | compress/mode=0 19 | compress/high_quality=false 20 | compress/lossy_quality=0.7 21 | compress/hdr_compression=1 22 | compress/normal_map=0 23 | compress/channel_pack=0 24 | mipmaps/generate=false 25 | mipmaps/limit=-1 26 | roughness/mode=0 27 | roughness/src_normal="" 28 | process/fix_alpha_border=true 29 | process/premult_alpha=false 30 | process/normal_map_invert_y=false 31 | process/hdr_as_srgb=false 32 | process/hdr_clamp_exposure=false 33 | process/size_limit=0 34 | detect_3d/compress_to=1 35 | -------------------------------------------------------------------------------- /image/bird2_0.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zfoo-project/godot-bird/449520e8d4e611345aad3fb59559da273c85aa35/image/bird2_0.png -------------------------------------------------------------------------------- /image/bird2_0.png.import: -------------------------------------------------------------------------------- 1 | [remap] 2 | 3 | importer="texture" 4 | type="CompressedTexture2D" 5 | uid="uid://dg8hoe7a44hyj" 6 | path="res://.godot/imported/bird2_0.png-1099d280ae873f686c78e0b2bfb6c1b3.ctex" 7 | metadata={ 8 | "vram_texture": false 9 | } 10 | 11 | [deps] 12 | 13 | source_file="res://image/bird2_0.png" 14 | dest_files=["res://.godot/imported/bird2_0.png-1099d280ae873f686c78e0b2bfb6c1b3.ctex"] 15 | 16 | [params] 17 | 18 | compress/mode=0 19 | compress/high_quality=false 20 | compress/lossy_quality=0.7 21 | compress/hdr_compression=1 22 | compress/normal_map=0 23 | compress/channel_pack=0 24 | mipmaps/generate=false 25 | mipmaps/limit=-1 26 | roughness/mode=0 27 | roughness/src_normal="" 28 | process/fix_alpha_border=true 29 | process/premult_alpha=false 30 | process/normal_map_invert_y=false 31 | process/hdr_as_srgb=false 32 | process/hdr_clamp_exposure=false 33 | process/size_limit=0 34 | detect_3d/compress_to=1 35 | -------------------------------------------------------------------------------- /image/bird2_1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zfoo-project/godot-bird/449520e8d4e611345aad3fb59559da273c85aa35/image/bird2_1.png -------------------------------------------------------------------------------- /image/bird2_1.png.import: -------------------------------------------------------------------------------- 1 | [remap] 2 | 3 | importer="texture" 4 | type="CompressedTexture2D" 5 | uid="uid://k0mn4lk3kb00" 6 | path="res://.godot/imported/bird2_1.png-e2e4ed9eb400946f3dfd9ccee79bf61b.ctex" 7 | metadata={ 8 | "vram_texture": false 9 | } 10 | 11 | [deps] 12 | 13 | source_file="res://image/bird2_1.png" 14 | dest_files=["res://.godot/imported/bird2_1.png-e2e4ed9eb400946f3dfd9ccee79bf61b.ctex"] 15 | 16 | [params] 17 | 18 | compress/mode=0 19 | compress/high_quality=false 20 | compress/lossy_quality=0.7 21 | compress/hdr_compression=1 22 | compress/normal_map=0 23 | compress/channel_pack=0 24 | mipmaps/generate=false 25 | mipmaps/limit=-1 26 | roughness/mode=0 27 | roughness/src_normal="" 28 | process/fix_alpha_border=true 29 | process/premult_alpha=false 30 | process/normal_map_invert_y=false 31 | process/hdr_as_srgb=false 32 | process/hdr_clamp_exposure=false 33 | process/size_limit=0 34 | detect_3d/compress_to=1 35 | -------------------------------------------------------------------------------- /image/bird2_2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zfoo-project/godot-bird/449520e8d4e611345aad3fb59559da273c85aa35/image/bird2_2.png -------------------------------------------------------------------------------- /image/bird2_2.png.import: -------------------------------------------------------------------------------- 1 | [remap] 2 | 3 | importer="texture" 4 | type="CompressedTexture2D" 5 | uid="uid://brwfyolfyudk8" 6 | path="res://.godot/imported/bird2_2.png-139dd45a69eeca00d97d22a65172fdfa.ctex" 7 | metadata={ 8 | "vram_texture": false 9 | } 10 | 11 | [deps] 12 | 13 | source_file="res://image/bird2_2.png" 14 | dest_files=["res://.godot/imported/bird2_2.png-139dd45a69eeca00d97d22a65172fdfa.ctex"] 15 | 16 | [params] 17 | 18 | compress/mode=0 19 | compress/high_quality=false 20 | compress/lossy_quality=0.7 21 | compress/hdr_compression=1 22 | compress/normal_map=0 23 | compress/channel_pack=0 24 | mipmaps/generate=false 25 | mipmaps/limit=-1 26 | roughness/mode=0 27 | roughness/src_normal="" 28 | process/fix_alpha_border=true 29 | process/premult_alpha=false 30 | process/normal_map_invert_y=false 31 | process/hdr_as_srgb=false 32 | process/hdr_clamp_exposure=false 33 | process/size_limit=0 34 | detect_3d/compress_to=1 35 | -------------------------------------------------------------------------------- /image/button_menu.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zfoo-project/godot-bird/449520e8d4e611345aad3fb59559da273c85aa35/image/button_menu.png -------------------------------------------------------------------------------- /image/button_ok.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zfoo-project/godot-bird/449520e8d4e611345aad3fb59559da273c85aa35/image/button_ok.png -------------------------------------------------------------------------------- /image/button_ok.png.import: -------------------------------------------------------------------------------- 1 | [remap] 2 | 3 | importer="texture" 4 | type="CompressedTexture2D" 5 | uid="uid://fuq40j1kh0e1" 6 | path="res://.godot/imported/button_ok.png-c4c5408ed69ee5f2e88f3d788ed29c96.ctex" 7 | metadata={ 8 | "vram_texture": false 9 | } 10 | 11 | [deps] 12 | 13 | source_file="res://image/button_ok.png" 14 | dest_files=["res://.godot/imported/button_ok.png-c4c5408ed69ee5f2e88f3d788ed29c96.ctex"] 15 | 16 | [params] 17 | 18 | compress/mode=0 19 | compress/high_quality=false 20 | compress/lossy_quality=0.7 21 | compress/hdr_compression=1 22 | compress/normal_map=0 23 | compress/channel_pack=0 24 | mipmaps/generate=false 25 | mipmaps/limit=-1 26 | roughness/mode=0 27 | roughness/src_normal="" 28 | process/fix_alpha_border=true 29 | process/premult_alpha=false 30 | process/normal_map_invert_y=false 31 | process/hdr_as_srgb=false 32 | process/hdr_clamp_exposure=false 33 | process/size_limit=0 34 | detect_3d/compress_to=1 35 | -------------------------------------------------------------------------------- /image/button_pause.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zfoo-project/godot-bird/449520e8d4e611345aad3fb59559da273c85aa35/image/button_pause.png -------------------------------------------------------------------------------- /image/button_play.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zfoo-project/godot-bird/449520e8d4e611345aad3fb59559da273c85aa35/image/button_play.png -------------------------------------------------------------------------------- /image/button_resume.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zfoo-project/godot-bird/449520e8d4e611345aad3fb59559da273c85aa35/image/button_resume.png -------------------------------------------------------------------------------- /image/button_score.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zfoo-project/godot-bird/449520e8d4e611345aad3fb59559da273c85aa35/image/button_score.png -------------------------------------------------------------------------------- /image/button_share.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zfoo-project/godot-bird/449520e8d4e611345aad3fb59559da273c85aa35/image/button_share.png -------------------------------------------------------------------------------- /image/currency/icon_offline_gem.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zfoo-project/godot-bird/449520e8d4e611345aad3fb59559da273c85aa35/image/currency/icon_offline_gem.png -------------------------------------------------------------------------------- /image/currency/icon_offline_gold.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zfoo-project/godot-bird/449520e8d4e611345aad3fb59559da273c85aa35/image/currency/icon_offline_gold.png -------------------------------------------------------------------------------- /image/currency/result_star.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zfoo-project/godot-bird/449520e8d4e611345aad3fb59559da273c85aa35/image/currency/result_star.png -------------------------------------------------------------------------------- /image/effect/attack.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zfoo-project/godot-bird/449520e8d4e611345aad3fb59559da273c85aa35/image/effect/attack.png -------------------------------------------------------------------------------- /image/effect/hit/0.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zfoo-project/godot-bird/449520e8d4e611345aad3fb59559da273c85aa35/image/effect/hit/0.png -------------------------------------------------------------------------------- /image/effect/hit/0.png.import: -------------------------------------------------------------------------------- 1 | [remap] 2 | 3 | importer="texture" 4 | type="CompressedTexture2D" 5 | uid="uid://2t7a1oswkoml" 6 | path="res://.godot/imported/0.png-c86b532510d61835c3f6040ea8f1a141.ctex" 7 | metadata={ 8 | "vram_texture": false 9 | } 10 | 11 | [deps] 12 | 13 | source_file="res://image/effect/hit/0.png" 14 | dest_files=["res://.godot/imported/0.png-c86b532510d61835c3f6040ea8f1a141.ctex"] 15 | 16 | [params] 17 | 18 | compress/mode=0 19 | compress/high_quality=false 20 | compress/lossy_quality=0.7 21 | compress/hdr_compression=1 22 | compress/normal_map=0 23 | compress/channel_pack=0 24 | mipmaps/generate=false 25 | mipmaps/limit=-1 26 | roughness/mode=0 27 | roughness/src_normal="" 28 | process/fix_alpha_border=true 29 | process/premult_alpha=false 30 | process/normal_map_invert_y=false 31 | process/hdr_as_srgb=false 32 | process/hdr_clamp_exposure=false 33 | process/size_limit=0 34 | detect_3d/compress_to=1 35 | -------------------------------------------------------------------------------- /image/effect/hit/1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zfoo-project/godot-bird/449520e8d4e611345aad3fb59559da273c85aa35/image/effect/hit/1.png -------------------------------------------------------------------------------- /image/effect/hit/1.png.import: -------------------------------------------------------------------------------- 1 | [remap] 2 | 3 | importer="texture" 4 | type="CompressedTexture2D" 5 | uid="uid://dgd5vy6v4qa18" 6 | path="res://.godot/imported/1.png-567e69c22e14f72204794b337f48a2fa.ctex" 7 | metadata={ 8 | "vram_texture": false 9 | } 10 | 11 | [deps] 12 | 13 | source_file="res://image/effect/hit/1.png" 14 | dest_files=["res://.godot/imported/1.png-567e69c22e14f72204794b337f48a2fa.ctex"] 15 | 16 | [params] 17 | 18 | compress/mode=0 19 | compress/high_quality=false 20 | compress/lossy_quality=0.7 21 | compress/hdr_compression=1 22 | compress/normal_map=0 23 | compress/channel_pack=0 24 | mipmaps/generate=false 25 | mipmaps/limit=-1 26 | roughness/mode=0 27 | roughness/src_normal="" 28 | process/fix_alpha_border=true 29 | process/premult_alpha=false 30 | process/normal_map_invert_y=false 31 | process/hdr_as_srgb=false 32 | process/hdr_clamp_exposure=false 33 | process/size_limit=0 34 | detect_3d/compress_to=1 35 | -------------------------------------------------------------------------------- /image/effect/hit/2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zfoo-project/godot-bird/449520e8d4e611345aad3fb59559da273c85aa35/image/effect/hit/2.png -------------------------------------------------------------------------------- /image/effect/hit/2.png.import: -------------------------------------------------------------------------------- 1 | [remap] 2 | 3 | importer="texture" 4 | type="CompressedTexture2D" 5 | uid="uid://8hu4hmy48u8f" 6 | path="res://.godot/imported/2.png-2f90722134b108ebbcd659ad187c56cb.ctex" 7 | metadata={ 8 | "vram_texture": false 9 | } 10 | 11 | [deps] 12 | 13 | source_file="res://image/effect/hit/2.png" 14 | dest_files=["res://.godot/imported/2.png-2f90722134b108ebbcd659ad187c56cb.ctex"] 15 | 16 | [params] 17 | 18 | compress/mode=0 19 | compress/high_quality=false 20 | compress/lossy_quality=0.7 21 | compress/hdr_compression=1 22 | compress/normal_map=0 23 | compress/channel_pack=0 24 | mipmaps/generate=false 25 | mipmaps/limit=-1 26 | roughness/mode=0 27 | roughness/src_normal="" 28 | process/fix_alpha_border=true 29 | process/premult_alpha=false 30 | process/normal_map_invert_y=false 31 | process/hdr_as_srgb=false 32 | process/hdr_clamp_exposure=false 33 | process/size_limit=0 34 | detect_3d/compress_to=1 35 | -------------------------------------------------------------------------------- /image/effect/hit/3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zfoo-project/godot-bird/449520e8d4e611345aad3fb59559da273c85aa35/image/effect/hit/3.png -------------------------------------------------------------------------------- /image/effect/hit/3.png.import: -------------------------------------------------------------------------------- 1 | [remap] 2 | 3 | importer="texture" 4 | type="CompressedTexture2D" 5 | uid="uid://cccsoswowobp7" 6 | path="res://.godot/imported/3.png-e469d566421c9611c51d6ba0dea1bb33.ctex" 7 | metadata={ 8 | "vram_texture": false 9 | } 10 | 11 | [deps] 12 | 13 | source_file="res://image/effect/hit/3.png" 14 | dest_files=["res://.godot/imported/3.png-e469d566421c9611c51d6ba0dea1bb33.ctex"] 15 | 16 | [params] 17 | 18 | compress/mode=0 19 | compress/high_quality=false 20 | compress/lossy_quality=0.7 21 | compress/hdr_compression=1 22 | compress/normal_map=0 23 | compress/channel_pack=0 24 | mipmaps/generate=false 25 | mipmaps/limit=-1 26 | roughness/mode=0 27 | roughness/src_normal="" 28 | process/fix_alpha_border=true 29 | process/premult_alpha=false 30 | process/normal_map_invert_y=false 31 | process/hdr_as_srgb=false 32 | process/hdr_clamp_exposure=false 33 | process/size_limit=0 34 | detect_3d/compress_to=1 35 | -------------------------------------------------------------------------------- /image/effect/hit/4.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zfoo-project/godot-bird/449520e8d4e611345aad3fb59559da273c85aa35/image/effect/hit/4.png -------------------------------------------------------------------------------- /image/effect/hit/4.png.import: -------------------------------------------------------------------------------- 1 | [remap] 2 | 3 | importer="texture" 4 | type="CompressedTexture2D" 5 | uid="uid://b66fs8xtm2ean" 6 | path="res://.godot/imported/4.png-ab3541d156d3786eed62664d5e9cd388.ctex" 7 | metadata={ 8 | "vram_texture": false 9 | } 10 | 11 | [deps] 12 | 13 | source_file="res://image/effect/hit/4.png" 14 | dest_files=["res://.godot/imported/4.png-ab3541d156d3786eed62664d5e9cd388.ctex"] 15 | 16 | [params] 17 | 18 | compress/mode=0 19 | compress/high_quality=false 20 | compress/lossy_quality=0.7 21 | compress/hdr_compression=1 22 | compress/normal_map=0 23 | compress/channel_pack=0 24 | mipmaps/generate=false 25 | mipmaps/limit=-1 26 | roughness/mode=0 27 | roughness/src_normal="" 28 | process/fix_alpha_border=true 29 | process/premult_alpha=false 30 | process/normal_map_invert_y=false 31 | process/hdr_as_srgb=false 32 | process/hdr_clamp_exposure=false 33 | process/size_limit=0 34 | detect_3d/compress_to=1 35 | -------------------------------------------------------------------------------- /image/effect/speedup/0.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zfoo-project/godot-bird/449520e8d4e611345aad3fb59559da273c85aa35/image/effect/speedup/0.png -------------------------------------------------------------------------------- /image/effect/speedup/0.png.import: -------------------------------------------------------------------------------- 1 | [remap] 2 | 3 | importer="texture" 4 | type="CompressedTexture2D" 5 | uid="uid://cqoia0n6a0pjt" 6 | path="res://.godot/imported/0.png-4562b27683a307a9043d6f0b95b6cf48.ctex" 7 | metadata={ 8 | "vram_texture": false 9 | } 10 | 11 | [deps] 12 | 13 | source_file="res://image/effect/speedup/0.png" 14 | dest_files=["res://.godot/imported/0.png-4562b27683a307a9043d6f0b95b6cf48.ctex"] 15 | 16 | [params] 17 | 18 | compress/mode=0 19 | compress/high_quality=false 20 | compress/lossy_quality=0.7 21 | compress/hdr_compression=1 22 | compress/normal_map=0 23 | compress/channel_pack=0 24 | mipmaps/generate=false 25 | mipmaps/limit=-1 26 | roughness/mode=0 27 | roughness/src_normal="" 28 | process/fix_alpha_border=true 29 | process/premult_alpha=false 30 | process/normal_map_invert_y=false 31 | process/hdr_as_srgb=false 32 | process/hdr_clamp_exposure=false 33 | process/size_limit=0 34 | detect_3d/compress_to=1 35 | -------------------------------------------------------------------------------- /image/effect/speedup/1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zfoo-project/godot-bird/449520e8d4e611345aad3fb59559da273c85aa35/image/effect/speedup/1.png -------------------------------------------------------------------------------- /image/effect/speedup/1.png.import: -------------------------------------------------------------------------------- 1 | [remap] 2 | 3 | importer="texture" 4 | type="CompressedTexture2D" 5 | uid="uid://bcfdqlfecinii" 6 | path="res://.godot/imported/1.png-a568a25fd4343c0e1c655f19d3b5ba2d.ctex" 7 | metadata={ 8 | "vram_texture": false 9 | } 10 | 11 | [deps] 12 | 13 | source_file="res://image/effect/speedup/1.png" 14 | dest_files=["res://.godot/imported/1.png-a568a25fd4343c0e1c655f19d3b5ba2d.ctex"] 15 | 16 | [params] 17 | 18 | compress/mode=0 19 | compress/high_quality=false 20 | compress/lossy_quality=0.7 21 | compress/hdr_compression=1 22 | compress/normal_map=0 23 | compress/channel_pack=0 24 | mipmaps/generate=false 25 | mipmaps/limit=-1 26 | roughness/mode=0 27 | roughness/src_normal="" 28 | process/fix_alpha_border=true 29 | process/premult_alpha=false 30 | process/normal_map_invert_y=false 31 | process/hdr_as_srgb=false 32 | process/hdr_clamp_exposure=false 33 | process/size_limit=0 34 | detect_3d/compress_to=1 35 | -------------------------------------------------------------------------------- /image/effect/speedup/2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zfoo-project/godot-bird/449520e8d4e611345aad3fb59559da273c85aa35/image/effect/speedup/2.png -------------------------------------------------------------------------------- /image/effect/speedup/2.png.import: -------------------------------------------------------------------------------- 1 | [remap] 2 | 3 | importer="texture" 4 | type="CompressedTexture2D" 5 | uid="uid://b1liwj34355h2" 6 | path="res://.godot/imported/2.png-09844e491d68d3383a8dc4597f9cb446.ctex" 7 | metadata={ 8 | "vram_texture": false 9 | } 10 | 11 | [deps] 12 | 13 | source_file="res://image/effect/speedup/2.png" 14 | dest_files=["res://.godot/imported/2.png-09844e491d68d3383a8dc4597f9cb446.ctex"] 15 | 16 | [params] 17 | 18 | compress/mode=0 19 | compress/high_quality=false 20 | compress/lossy_quality=0.7 21 | compress/hdr_compression=1 22 | compress/normal_map=0 23 | compress/channel_pack=0 24 | mipmaps/generate=false 25 | mipmaps/limit=-1 26 | roughness/mode=0 27 | roughness/src_normal="" 28 | process/fix_alpha_border=true 29 | process/premult_alpha=false 30 | process/normal_map_invert_y=false 31 | process/hdr_as_srgb=false 32 | process/hdr_clamp_exposure=false 33 | process/size_limit=0 34 | detect_3d/compress_to=1 35 | -------------------------------------------------------------------------------- /image/enemy/bilibili.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zfoo-project/godot-bird/449520e8d4e611345aad3fb59559da273c85aa35/image/enemy/bilibili.png -------------------------------------------------------------------------------- /image/enemy/cloud/0.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zfoo-project/godot-bird/449520e8d4e611345aad3fb59559da273c85aa35/image/enemy/cloud/0.png -------------------------------------------------------------------------------- /image/enemy/cloud/0.png.import: -------------------------------------------------------------------------------- 1 | [remap] 2 | 3 | importer="texture" 4 | type="CompressedTexture2D" 5 | uid="uid://ck1wulbkxkbvs" 6 | path="res://.godot/imported/0.png-1b1947b50d0a9a06eb782759df84c99e.ctex" 7 | metadata={ 8 | "vram_texture": false 9 | } 10 | 11 | [deps] 12 | 13 | source_file="res://image/enemy/cloud/0.png" 14 | dest_files=["res://.godot/imported/0.png-1b1947b50d0a9a06eb782759df84c99e.ctex"] 15 | 16 | [params] 17 | 18 | compress/mode=0 19 | compress/high_quality=false 20 | compress/lossy_quality=0.7 21 | compress/hdr_compression=1 22 | compress/normal_map=0 23 | compress/channel_pack=0 24 | mipmaps/generate=false 25 | mipmaps/limit=-1 26 | roughness/mode=0 27 | roughness/src_normal="" 28 | process/fix_alpha_border=true 29 | process/premult_alpha=false 30 | process/normal_map_invert_y=false 31 | process/hdr_as_srgb=false 32 | process/hdr_clamp_exposure=false 33 | process/size_limit=0 34 | detect_3d/compress_to=1 35 | -------------------------------------------------------------------------------- /image/enemy/cloud/1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zfoo-project/godot-bird/449520e8d4e611345aad3fb59559da273c85aa35/image/enemy/cloud/1.png -------------------------------------------------------------------------------- /image/enemy/cloud/1.png.import: -------------------------------------------------------------------------------- 1 | [remap] 2 | 3 | importer="texture" 4 | type="CompressedTexture2D" 5 | uid="uid://dpw5e4joft2hh" 6 | path="res://.godot/imported/1.png-eadec76c3c2ee1a60d05c46d23a7a993.ctex" 7 | metadata={ 8 | "vram_texture": false 9 | } 10 | 11 | [deps] 12 | 13 | source_file="res://image/enemy/cloud/1.png" 14 | dest_files=["res://.godot/imported/1.png-eadec76c3c2ee1a60d05c46d23a7a993.ctex"] 15 | 16 | [params] 17 | 18 | compress/mode=0 19 | compress/high_quality=false 20 | compress/lossy_quality=0.7 21 | compress/hdr_compression=1 22 | compress/normal_map=0 23 | compress/channel_pack=0 24 | mipmaps/generate=false 25 | mipmaps/limit=-1 26 | roughness/mode=0 27 | roughness/src_normal="" 28 | process/fix_alpha_border=true 29 | process/premult_alpha=false 30 | process/normal_map_invert_y=false 31 | process/hdr_as_srgb=false 32 | process/hdr_clamp_exposure=false 33 | process/size_limit=0 34 | detect_3d/compress_to=1 35 | -------------------------------------------------------------------------------- /image/enemy/cloud/2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zfoo-project/godot-bird/449520e8d4e611345aad3fb59559da273c85aa35/image/enemy/cloud/2.png -------------------------------------------------------------------------------- /image/enemy/cloud/2.png.import: -------------------------------------------------------------------------------- 1 | [remap] 2 | 3 | importer="texture" 4 | type="CompressedTexture2D" 5 | uid="uid://dsag87y63qte6" 6 | path="res://.godot/imported/2.png-8d5d4cb4a59093f7ae73f6554d2150da.ctex" 7 | metadata={ 8 | "vram_texture": false 9 | } 10 | 11 | [deps] 12 | 13 | source_file="res://image/enemy/cloud/2.png" 14 | dest_files=["res://.godot/imported/2.png-8d5d4cb4a59093f7ae73f6554d2150da.ctex"] 15 | 16 | [params] 17 | 18 | compress/mode=0 19 | compress/high_quality=false 20 | compress/lossy_quality=0.7 21 | compress/hdr_compression=1 22 | compress/normal_map=0 23 | compress/channel_pack=0 24 | mipmaps/generate=false 25 | mipmaps/limit=-1 26 | roughness/mode=0 27 | roughness/src_normal="" 28 | process/fix_alpha_border=true 29 | process/premult_alpha=false 30 | process/normal_map_invert_y=false 31 | process/hdr_as_srgb=false 32 | process/hdr_clamp_exposure=false 33 | process/size_limit=0 34 | detect_3d/compress_to=1 35 | -------------------------------------------------------------------------------- /image/enemy/cloud/3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zfoo-project/godot-bird/449520e8d4e611345aad3fb59559da273c85aa35/image/enemy/cloud/3.png -------------------------------------------------------------------------------- /image/enemy/cloud/3.png.import: -------------------------------------------------------------------------------- 1 | [remap] 2 | 3 | importer="texture" 4 | type="CompressedTexture2D" 5 | uid="uid://b2fyooh2058hl" 6 | path="res://.godot/imported/3.png-9fb110d2872c4833df388d99d1e73155.ctex" 7 | metadata={ 8 | "vram_texture": false 9 | } 10 | 11 | [deps] 12 | 13 | source_file="res://image/enemy/cloud/3.png" 14 | dest_files=["res://.godot/imported/3.png-9fb110d2872c4833df388d99d1e73155.ctex"] 15 | 16 | [params] 17 | 18 | compress/mode=0 19 | compress/high_quality=false 20 | compress/lossy_quality=0.7 21 | compress/hdr_compression=1 22 | compress/normal_map=0 23 | compress/channel_pack=0 24 | mipmaps/generate=false 25 | mipmaps/limit=-1 26 | roughness/mode=0 27 | roughness/src_normal="" 28 | process/fix_alpha_border=true 29 | process/premult_alpha=false 30 | process/normal_map_invert_y=false 31 | process/hdr_as_srgb=false 32 | process/hdr_clamp_exposure=false 33 | process/size_limit=0 34 | detect_3d/compress_to=1 35 | -------------------------------------------------------------------------------- /image/enemy/fish/0.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zfoo-project/godot-bird/449520e8d4e611345aad3fb59559da273c85aa35/image/enemy/fish/0.png -------------------------------------------------------------------------------- /image/enemy/fish/0.png.import: -------------------------------------------------------------------------------- 1 | [remap] 2 | 3 | importer="texture" 4 | type="CompressedTexture2D" 5 | uid="uid://c5p7que5k1uyt" 6 | path="res://.godot/imported/0.png-155c8f5171292a4b8dfec5f42283c704.ctex" 7 | metadata={ 8 | "vram_texture": false 9 | } 10 | 11 | [deps] 12 | 13 | source_file="res://image/enemy/fish/0.png" 14 | dest_files=["res://.godot/imported/0.png-155c8f5171292a4b8dfec5f42283c704.ctex"] 15 | 16 | [params] 17 | 18 | compress/mode=0 19 | compress/high_quality=false 20 | compress/lossy_quality=0.7 21 | compress/hdr_compression=1 22 | compress/normal_map=0 23 | compress/channel_pack=0 24 | mipmaps/generate=false 25 | mipmaps/limit=-1 26 | roughness/mode=0 27 | roughness/src_normal="" 28 | process/fix_alpha_border=true 29 | process/premult_alpha=false 30 | process/normal_map_invert_y=false 31 | process/hdr_as_srgb=false 32 | process/hdr_clamp_exposure=false 33 | process/size_limit=0 34 | detect_3d/compress_to=1 35 | -------------------------------------------------------------------------------- /image/enemy/fish/1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zfoo-project/godot-bird/449520e8d4e611345aad3fb59559da273c85aa35/image/enemy/fish/1.png -------------------------------------------------------------------------------- /image/enemy/fish/1.png.import: -------------------------------------------------------------------------------- 1 | [remap] 2 | 3 | importer="texture" 4 | type="CompressedTexture2D" 5 | uid="uid://b17djrlnlg482" 6 | path="res://.godot/imported/1.png-a897d2058216dbfab7b097d5facb01de.ctex" 7 | metadata={ 8 | "vram_texture": false 9 | } 10 | 11 | [deps] 12 | 13 | source_file="res://image/enemy/fish/1.png" 14 | dest_files=["res://.godot/imported/1.png-a897d2058216dbfab7b097d5facb01de.ctex"] 15 | 16 | [params] 17 | 18 | compress/mode=0 19 | compress/high_quality=false 20 | compress/lossy_quality=0.7 21 | compress/hdr_compression=1 22 | compress/normal_map=0 23 | compress/channel_pack=0 24 | mipmaps/generate=false 25 | mipmaps/limit=-1 26 | roughness/mode=0 27 | roughness/src_normal="" 28 | process/fix_alpha_border=true 29 | process/premult_alpha=false 30 | process/normal_map_invert_y=false 31 | process/hdr_as_srgb=false 32 | process/hdr_clamp_exposure=false 33 | process/size_limit=0 34 | detect_3d/compress_to=1 35 | -------------------------------------------------------------------------------- /image/enemy/fish/2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zfoo-project/godot-bird/449520e8d4e611345aad3fb59559da273c85aa35/image/enemy/fish/2.png -------------------------------------------------------------------------------- /image/enemy/fish/2.png.import: -------------------------------------------------------------------------------- 1 | [remap] 2 | 3 | importer="texture" 4 | type="CompressedTexture2D" 5 | uid="uid://dv1ux1pk5kspr" 6 | path="res://.godot/imported/2.png-3264f999698dfce6e0c6ee9ca118d968.ctex" 7 | metadata={ 8 | "vram_texture": false 9 | } 10 | 11 | [deps] 12 | 13 | source_file="res://image/enemy/fish/2.png" 14 | dest_files=["res://.godot/imported/2.png-3264f999698dfce6e0c6ee9ca118d968.ctex"] 15 | 16 | [params] 17 | 18 | compress/mode=0 19 | compress/high_quality=false 20 | compress/lossy_quality=0.7 21 | compress/hdr_compression=1 22 | compress/normal_map=0 23 | compress/channel_pack=0 24 | mipmaps/generate=false 25 | mipmaps/limit=-1 26 | roughness/mode=0 27 | roughness/src_normal="" 28 | process/fix_alpha_border=true 29 | process/premult_alpha=false 30 | process/normal_map_invert_y=false 31 | process/hdr_as_srgb=false 32 | process/hdr_clamp_exposure=false 33 | process/size_limit=0 34 | detect_3d/compress_to=1 35 | -------------------------------------------------------------------------------- /image/enemy/fish/3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zfoo-project/godot-bird/449520e8d4e611345aad3fb59559da273c85aa35/image/enemy/fish/3.png -------------------------------------------------------------------------------- /image/enemy/fish/3.png.import: -------------------------------------------------------------------------------- 1 | [remap] 2 | 3 | importer="texture" 4 | type="CompressedTexture2D" 5 | uid="uid://bm53bpchkbs3v" 6 | path="res://.godot/imported/3.png-06364b2da9443a770f9b78001a48c916.ctex" 7 | metadata={ 8 | "vram_texture": false 9 | } 10 | 11 | [deps] 12 | 13 | source_file="res://image/enemy/fish/3.png" 14 | dest_files=["res://.godot/imported/3.png-06364b2da9443a770f9b78001a48c916.ctex"] 15 | 16 | [params] 17 | 18 | compress/mode=0 19 | compress/high_quality=false 20 | compress/lossy_quality=0.7 21 | compress/hdr_compression=1 22 | compress/normal_map=0 23 | compress/channel_pack=0 24 | mipmaps/generate=false 25 | mipmaps/limit=-1 26 | roughness/mode=0 27 | roughness/src_normal="" 28 | process/fix_alpha_border=true 29 | process/premult_alpha=false 30 | process/normal_map_invert_y=false 31 | process/hdr_as_srgb=false 32 | process/hdr_clamp_exposure=false 33 | process/size_limit=0 34 | detect_3d/compress_to=1 35 | -------------------------------------------------------------------------------- /image/enemy/fish/4.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zfoo-project/godot-bird/449520e8d4e611345aad3fb59559da273c85aa35/image/enemy/fish/4.png -------------------------------------------------------------------------------- /image/enemy/fish/4.png.import: -------------------------------------------------------------------------------- 1 | [remap] 2 | 3 | importer="texture" 4 | type="CompressedTexture2D" 5 | uid="uid://byepg000d5pno" 6 | path="res://.godot/imported/4.png-e1e965bfad8088d34f29a47bb94f82b5.ctex" 7 | metadata={ 8 | "vram_texture": false 9 | } 10 | 11 | [deps] 12 | 13 | source_file="res://image/enemy/fish/4.png" 14 | dest_files=["res://.godot/imported/4.png-e1e965bfad8088d34f29a47bb94f82b5.ctex"] 15 | 16 | [params] 17 | 18 | compress/mode=0 19 | compress/high_quality=false 20 | compress/lossy_quality=0.7 21 | compress/hdr_compression=1 22 | compress/normal_map=0 23 | compress/channel_pack=0 24 | mipmaps/generate=false 25 | mipmaps/limit=-1 26 | roughness/mode=0 27 | roughness/src_normal="" 28 | process/fix_alpha_border=true 29 | process/premult_alpha=false 30 | process/normal_map_invert_y=false 31 | process/hdr_as_srgb=false 32 | process/hdr_clamp_exposure=false 33 | process/size_limit=0 34 | detect_3d/compress_to=1 35 | -------------------------------------------------------------------------------- /image/enemy/fish/5.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zfoo-project/godot-bird/449520e8d4e611345aad3fb59559da273c85aa35/image/enemy/fish/5.png -------------------------------------------------------------------------------- /image/enemy/fish/5.png.import: -------------------------------------------------------------------------------- 1 | [remap] 2 | 3 | importer="texture" 4 | type="CompressedTexture2D" 5 | uid="uid://cgentivkmu3kb" 6 | path="res://.godot/imported/5.png-7ef8803ec00eb9266443cb65f571cf40.ctex" 7 | metadata={ 8 | "vram_texture": false 9 | } 10 | 11 | [deps] 12 | 13 | source_file="res://image/enemy/fish/5.png" 14 | dest_files=["res://.godot/imported/5.png-7ef8803ec00eb9266443cb65f571cf40.ctex"] 15 | 16 | [params] 17 | 18 | compress/mode=0 19 | compress/high_quality=false 20 | compress/lossy_quality=0.7 21 | compress/hdr_compression=1 22 | compress/normal_map=0 23 | compress/channel_pack=0 24 | mipmaps/generate=false 25 | mipmaps/limit=-1 26 | roughness/mode=0 27 | roughness/src_normal="" 28 | process/fix_alpha_border=true 29 | process/premult_alpha=false 30 | process/normal_map_invert_y=false 31 | process/hdr_as_srgb=false 32 | process/hdr_clamp_exposure=false 33 | process/size_limit=0 34 | detect_3d/compress_to=1 35 | -------------------------------------------------------------------------------- /image/enemy/shark/0.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zfoo-project/godot-bird/449520e8d4e611345aad3fb59559da273c85aa35/image/enemy/shark/0.png -------------------------------------------------------------------------------- /image/enemy/shark/0.png.import: -------------------------------------------------------------------------------- 1 | [remap] 2 | 3 | importer="texture" 4 | type="CompressedTexture2D" 5 | uid="uid://cssabo7s5sx5f" 6 | path="res://.godot/imported/0.png-d92d6be0a37b1e0cc98ece8a03206e9d.ctex" 7 | metadata={ 8 | "vram_texture": false 9 | } 10 | 11 | [deps] 12 | 13 | source_file="res://image/enemy/shark/0.png" 14 | dest_files=["res://.godot/imported/0.png-d92d6be0a37b1e0cc98ece8a03206e9d.ctex"] 15 | 16 | [params] 17 | 18 | compress/mode=0 19 | compress/high_quality=false 20 | compress/lossy_quality=0.7 21 | compress/hdr_compression=1 22 | compress/normal_map=0 23 | compress/channel_pack=0 24 | mipmaps/generate=false 25 | mipmaps/limit=-1 26 | roughness/mode=0 27 | roughness/src_normal="" 28 | process/fix_alpha_border=true 29 | process/premult_alpha=false 30 | process/normal_map_invert_y=false 31 | process/hdr_as_srgb=false 32 | process/hdr_clamp_exposure=false 33 | process/size_limit=0 34 | detect_3d/compress_to=1 35 | -------------------------------------------------------------------------------- /image/enemy/shark/1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zfoo-project/godot-bird/449520e8d4e611345aad3fb59559da273c85aa35/image/enemy/shark/1.png -------------------------------------------------------------------------------- /image/enemy/shark/1.png.import: -------------------------------------------------------------------------------- 1 | [remap] 2 | 3 | importer="texture" 4 | type="CompressedTexture2D" 5 | uid="uid://daix2ya461gsn" 6 | path="res://.godot/imported/1.png-d8ba201421886abe84eb5cc32da1404f.ctex" 7 | metadata={ 8 | "vram_texture": false 9 | } 10 | 11 | [deps] 12 | 13 | source_file="res://image/enemy/shark/1.png" 14 | dest_files=["res://.godot/imported/1.png-d8ba201421886abe84eb5cc32da1404f.ctex"] 15 | 16 | [params] 17 | 18 | compress/mode=0 19 | compress/high_quality=false 20 | compress/lossy_quality=0.7 21 | compress/hdr_compression=1 22 | compress/normal_map=0 23 | compress/channel_pack=0 24 | mipmaps/generate=false 25 | mipmaps/limit=-1 26 | roughness/mode=0 27 | roughness/src_normal="" 28 | process/fix_alpha_border=true 29 | process/premult_alpha=false 30 | process/normal_map_invert_y=false 31 | process/hdr_as_srgb=false 32 | process/hdr_clamp_exposure=false 33 | process/size_limit=0 34 | detect_3d/compress_to=1 35 | -------------------------------------------------------------------------------- /image/enemy/shark/2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zfoo-project/godot-bird/449520e8d4e611345aad3fb59559da273c85aa35/image/enemy/shark/2.png -------------------------------------------------------------------------------- /image/enemy/shark/2.png.import: -------------------------------------------------------------------------------- 1 | [remap] 2 | 3 | importer="texture" 4 | type="CompressedTexture2D" 5 | uid="uid://l1f7akor6ie1" 6 | path="res://.godot/imported/2.png-e873d9fb5458749d3391b73c3058e91f.ctex" 7 | metadata={ 8 | "vram_texture": false 9 | } 10 | 11 | [deps] 12 | 13 | source_file="res://image/enemy/shark/2.png" 14 | dest_files=["res://.godot/imported/2.png-e873d9fb5458749d3391b73c3058e91f.ctex"] 15 | 16 | [params] 17 | 18 | compress/mode=0 19 | compress/high_quality=false 20 | compress/lossy_quality=0.7 21 | compress/hdr_compression=1 22 | compress/normal_map=0 23 | compress/channel_pack=0 24 | mipmaps/generate=false 25 | mipmaps/limit=-1 26 | roughness/mode=0 27 | roughness/src_normal="" 28 | process/fix_alpha_border=true 29 | process/premult_alpha=false 30 | process/normal_map_invert_y=false 31 | process/hdr_as_srgb=false 32 | process/hdr_clamp_exposure=false 33 | process/size_limit=0 34 | detect_3d/compress_to=1 35 | -------------------------------------------------------------------------------- /image/enemy/shark/3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zfoo-project/godot-bird/449520e8d4e611345aad3fb59559da273c85aa35/image/enemy/shark/3.png -------------------------------------------------------------------------------- /image/enemy/shark/3.png.import: -------------------------------------------------------------------------------- 1 | [remap] 2 | 3 | importer="texture" 4 | type="CompressedTexture2D" 5 | uid="uid://b3hdthdt4kqe3" 6 | path="res://.godot/imported/3.png-b39e29cce5c8d0b4caafb39d0de78acc.ctex" 7 | metadata={ 8 | "vram_texture": false 9 | } 10 | 11 | [deps] 12 | 13 | source_file="res://image/enemy/shark/3.png" 14 | dest_files=["res://.godot/imported/3.png-b39e29cce5c8d0b4caafb39d0de78acc.ctex"] 15 | 16 | [params] 17 | 18 | compress/mode=0 19 | compress/high_quality=false 20 | compress/lossy_quality=0.7 21 | compress/hdr_compression=1 22 | compress/normal_map=0 23 | compress/channel_pack=0 24 | mipmaps/generate=false 25 | mipmaps/limit=-1 26 | roughness/mode=0 27 | roughness/src_normal="" 28 | process/fix_alpha_border=true 29 | process/premult_alpha=false 30 | process/normal_map_invert_y=false 31 | process/hdr_as_srgb=false 32 | process/hdr_clamp_exposure=false 33 | process/size_limit=0 34 | detect_3d/compress_to=1 35 | -------------------------------------------------------------------------------- /image/enemy/shark/4.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zfoo-project/godot-bird/449520e8d4e611345aad3fb59559da273c85aa35/image/enemy/shark/4.png -------------------------------------------------------------------------------- /image/enemy/shark/4.png.import: -------------------------------------------------------------------------------- 1 | [remap] 2 | 3 | importer="texture" 4 | type="CompressedTexture2D" 5 | uid="uid://pdg18rgf2i7j" 6 | path="res://.godot/imported/4.png-595def850ea715809e64b6c75c46ca98.ctex" 7 | metadata={ 8 | "vram_texture": false 9 | } 10 | 11 | [deps] 12 | 13 | source_file="res://image/enemy/shark/4.png" 14 | dest_files=["res://.godot/imported/4.png-595def850ea715809e64b6c75c46ca98.ctex"] 15 | 16 | [params] 17 | 18 | compress/mode=0 19 | compress/high_quality=false 20 | compress/lossy_quality=0.7 21 | compress/hdr_compression=1 22 | compress/normal_map=0 23 | compress/channel_pack=0 24 | mipmaps/generate=false 25 | mipmaps/limit=-1 26 | roughness/mode=0 27 | roughness/src_normal="" 28 | process/fix_alpha_border=true 29 | process/premult_alpha=false 30 | process/normal_map_invert_y=false 31 | process/hdr_as_srgb=false 32 | process/hdr_clamp_exposure=false 33 | process/size_limit=0 34 | detect_3d/compress_to=1 35 | -------------------------------------------------------------------------------- /image/enemy/shark/5.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zfoo-project/godot-bird/449520e8d4e611345aad3fb59559da273c85aa35/image/enemy/shark/5.png -------------------------------------------------------------------------------- /image/enemy/shark/5.png.import: -------------------------------------------------------------------------------- 1 | [remap] 2 | 3 | importer="texture" 4 | type="CompressedTexture2D" 5 | uid="uid://d4dwcto8q2d33" 6 | path="res://.godot/imported/5.png-749ab509708b7e28ba2dccb28ed24462.ctex" 7 | metadata={ 8 | "vram_texture": false 9 | } 10 | 11 | [deps] 12 | 13 | source_file="res://image/enemy/shark/5.png" 14 | dest_files=["res://.godot/imported/5.png-749ab509708b7e28ba2dccb28ed24462.ctex"] 15 | 16 | [params] 17 | 18 | compress/mode=0 19 | compress/high_quality=false 20 | compress/lossy_quality=0.7 21 | compress/hdr_compression=1 22 | compress/normal_map=0 23 | compress/channel_pack=0 24 | mipmaps/generate=false 25 | mipmaps/limit=-1 26 | roughness/mode=0 27 | roughness/src_normal="" 28 | process/fix_alpha_border=true 29 | process/premult_alpha=false 30 | process/normal_map_invert_y=false 31 | process/hdr_as_srgb=false 32 | process/hdr_clamp_exposure=false 33 | process/size_limit=0 34 | detect_3d/compress_to=1 35 | -------------------------------------------------------------------------------- /image/enemy/shark/6.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zfoo-project/godot-bird/449520e8d4e611345aad3fb59559da273c85aa35/image/enemy/shark/6.png -------------------------------------------------------------------------------- /image/enemy/shark/6.png.import: -------------------------------------------------------------------------------- 1 | [remap] 2 | 3 | importer="texture" 4 | type="CompressedTexture2D" 5 | uid="uid://2okxmtwt5w0h" 6 | path="res://.godot/imported/6.png-9c714e36bcadd3a1dd71ef795cd43c7d.ctex" 7 | metadata={ 8 | "vram_texture": false 9 | } 10 | 11 | [deps] 12 | 13 | source_file="res://image/enemy/shark/6.png" 14 | dest_files=["res://.godot/imported/6.png-9c714e36bcadd3a1dd71ef795cd43c7d.ctex"] 15 | 16 | [params] 17 | 18 | compress/mode=0 19 | compress/high_quality=false 20 | compress/lossy_quality=0.7 21 | compress/hdr_compression=1 22 | compress/normal_map=0 23 | compress/channel_pack=0 24 | mipmaps/generate=false 25 | mipmaps/limit=-1 26 | roughness/mode=0 27 | roughness/src_normal="" 28 | process/fix_alpha_border=true 29 | process/premult_alpha=false 30 | process/normal_map_invert_y=false 31 | process/hdr_as_srgb=false 32 | process/hdr_clamp_exposure=false 33 | process/size_limit=0 34 | detect_3d/compress_to=1 35 | -------------------------------------------------------------------------------- /image/enemy/shark/7.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zfoo-project/godot-bird/449520e8d4e611345aad3fb59559da273c85aa35/image/enemy/shark/7.png -------------------------------------------------------------------------------- /image/enemy/shark/7.png.import: -------------------------------------------------------------------------------- 1 | [remap] 2 | 3 | importer="texture" 4 | type="CompressedTexture2D" 5 | uid="uid://bkwts1m3hcvgd" 6 | path="res://.godot/imported/7.png-ff9fd2a6f77697ece1e40b6bc82a9ff1.ctex" 7 | metadata={ 8 | "vram_texture": false 9 | } 10 | 11 | [deps] 12 | 13 | source_file="res://image/enemy/shark/7.png" 14 | dest_files=["res://.godot/imported/7.png-ff9fd2a6f77697ece1e40b6bc82a9ff1.ctex"] 15 | 16 | [params] 17 | 18 | compress/mode=0 19 | compress/high_quality=false 20 | compress/lossy_quality=0.7 21 | compress/hdr_compression=1 22 | compress/normal_map=0 23 | compress/channel_pack=0 24 | mipmaps/generate=false 25 | mipmaps/limit=-1 26 | roughness/mode=0 27 | roughness/src_normal="" 28 | process/fix_alpha_border=true 29 | process/premult_alpha=false 30 | process/normal_map_invert_y=false 31 | process/hdr_as_srgb=false 32 | process/hdr_clamp_exposure=false 33 | process/size_limit=0 34 | detect_3d/compress_to=1 35 | -------------------------------------------------------------------------------- /image/hp/0.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zfoo-project/godot-bird/449520e8d4e611345aad3fb59559da273c85aa35/image/hp/0.png -------------------------------------------------------------------------------- /image/hp/0.png.import: -------------------------------------------------------------------------------- 1 | [remap] 2 | 3 | importer="texture" 4 | type="CompressedTexture2D" 5 | uid="uid://baywi268vk2wi" 6 | path="res://.godot/imported/0.png-6b5b5058a67cfa4c5bcf8e6f9f6daabc.ctex" 7 | metadata={ 8 | "vram_texture": false 9 | } 10 | 11 | [deps] 12 | 13 | source_file="res://image/hp/0.png" 14 | dest_files=["res://.godot/imported/0.png-6b5b5058a67cfa4c5bcf8e6f9f6daabc.ctex"] 15 | 16 | [params] 17 | 18 | compress/mode=0 19 | compress/high_quality=false 20 | compress/lossy_quality=0.7 21 | compress/hdr_compression=1 22 | compress/normal_map=0 23 | compress/channel_pack=0 24 | mipmaps/generate=false 25 | mipmaps/limit=-1 26 | roughness/mode=0 27 | roughness/src_normal="" 28 | process/fix_alpha_border=true 29 | process/premult_alpha=false 30 | process/normal_map_invert_y=false 31 | process/hdr_as_srgb=false 32 | process/hdr_clamp_exposure=false 33 | process/size_limit=0 34 | detect_3d/compress_to=1 35 | -------------------------------------------------------------------------------- /image/hp/1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zfoo-project/godot-bird/449520e8d4e611345aad3fb59559da273c85aa35/image/hp/1.png -------------------------------------------------------------------------------- /image/hp/1.png.import: -------------------------------------------------------------------------------- 1 | [remap] 2 | 3 | importer="texture" 4 | type="CompressedTexture2D" 5 | uid="uid://cy84765p4s40s" 6 | path="res://.godot/imported/1.png-2d5db7aeb70024f8c920db3e388b55f6.ctex" 7 | metadata={ 8 | "vram_texture": false 9 | } 10 | 11 | [deps] 12 | 13 | source_file="res://image/hp/1.png" 14 | dest_files=["res://.godot/imported/1.png-2d5db7aeb70024f8c920db3e388b55f6.ctex"] 15 | 16 | [params] 17 | 18 | compress/mode=0 19 | compress/high_quality=false 20 | compress/lossy_quality=0.7 21 | compress/hdr_compression=1 22 | compress/normal_map=0 23 | compress/channel_pack=0 24 | mipmaps/generate=false 25 | mipmaps/limit=-1 26 | roughness/mode=0 27 | roughness/src_normal="" 28 | process/fix_alpha_border=true 29 | process/premult_alpha=false 30 | process/normal_map_invert_y=false 31 | process/hdr_as_srgb=false 32 | process/hdr_clamp_exposure=false 33 | process/size_limit=0 34 | detect_3d/compress_to=1 35 | -------------------------------------------------------------------------------- /image/hp/2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zfoo-project/godot-bird/449520e8d4e611345aad3fb59559da273c85aa35/image/hp/2.png -------------------------------------------------------------------------------- /image/hp/2.png.import: -------------------------------------------------------------------------------- 1 | [remap] 2 | 3 | importer="texture" 4 | type="CompressedTexture2D" 5 | uid="uid://dcceghnl5gjwq" 6 | path="res://.godot/imported/2.png-442edd156caf068e6910fdd855c141a9.ctex" 7 | metadata={ 8 | "vram_texture": false 9 | } 10 | 11 | [deps] 12 | 13 | source_file="res://image/hp/2.png" 14 | dest_files=["res://.godot/imported/2.png-442edd156caf068e6910fdd855c141a9.ctex"] 15 | 16 | [params] 17 | 18 | compress/mode=0 19 | compress/high_quality=false 20 | compress/lossy_quality=0.7 21 | compress/hdr_compression=1 22 | compress/normal_map=0 23 | compress/channel_pack=0 24 | mipmaps/generate=false 25 | mipmaps/limit=-1 26 | roughness/mode=0 27 | roughness/src_normal="" 28 | process/fix_alpha_border=true 29 | process/premult_alpha=false 30 | process/normal_map_invert_y=false 31 | process/hdr_as_srgb=false 32 | process/hdr_clamp_exposure=false 33 | process/size_limit=0 34 | detect_3d/compress_to=1 35 | -------------------------------------------------------------------------------- /image/hp/3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zfoo-project/godot-bird/449520e8d4e611345aad3fb59559da273c85aa35/image/hp/3.png -------------------------------------------------------------------------------- /image/hp/3.png.import: -------------------------------------------------------------------------------- 1 | [remap] 2 | 3 | importer="texture" 4 | type="CompressedTexture2D" 5 | uid="uid://db4jd354mqudu" 6 | path="res://.godot/imported/3.png-f1d4157958306db389dac82a7be87b29.ctex" 7 | metadata={ 8 | "vram_texture": false 9 | } 10 | 11 | [deps] 12 | 13 | source_file="res://image/hp/3.png" 14 | dest_files=["res://.godot/imported/3.png-f1d4157958306db389dac82a7be87b29.ctex"] 15 | 16 | [params] 17 | 18 | compress/mode=0 19 | compress/high_quality=false 20 | compress/lossy_quality=0.7 21 | compress/hdr_compression=1 22 | compress/normal_map=0 23 | compress/channel_pack=0 24 | mipmaps/generate=false 25 | mipmaps/limit=-1 26 | roughness/mode=0 27 | roughness/src_normal="" 28 | process/fix_alpha_border=true 29 | process/premult_alpha=false 30 | process/normal_map_invert_y=false 31 | process/hdr_as_srgb=false 32 | process/hdr_clamp_exposure=false 33 | process/size_limit=0 34 | detect_3d/compress_to=1 35 | -------------------------------------------------------------------------------- /image/land.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zfoo-project/godot-bird/449520e8d4e611345aad3fb59559da273c85aa35/image/land.png -------------------------------------------------------------------------------- /image/land.png.import: -------------------------------------------------------------------------------- 1 | [remap] 2 | 3 | importer="texture" 4 | type="CompressedTexture2D" 5 | uid="uid://bw4k3kxyen6yg" 6 | path="res://.godot/imported/land.png-b50e0493ba005fa73cb958388dd54a60.ctex" 7 | metadata={ 8 | "vram_texture": false 9 | } 10 | 11 | [deps] 12 | 13 | source_file="res://image/land.png" 14 | dest_files=["res://.godot/imported/land.png-b50e0493ba005fa73cb958388dd54a60.ctex"] 15 | 16 | [params] 17 | 18 | compress/mode=0 19 | compress/high_quality=false 20 | compress/lossy_quality=0.7 21 | compress/hdr_compression=1 22 | compress/normal_map=0 23 | compress/channel_pack=0 24 | mipmaps/generate=false 25 | mipmaps/limit=-1 26 | roughness/mode=0 27 | roughness/src_normal="" 28 | process/fix_alpha_border=true 29 | process/premult_alpha=false 30 | process/normal_map_invert_y=false 31 | process/hdr_as_srgb=false 32 | process/hdr_clamp_exposure=false 33 | process/size_limit=0 34 | detect_3d/compress_to=1 35 | -------------------------------------------------------------------------------- /image/medals_0.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zfoo-project/godot-bird/449520e8d4e611345aad3fb59559da273c85aa35/image/medals_0.png -------------------------------------------------------------------------------- /image/medals_0.png.import: -------------------------------------------------------------------------------- 1 | [remap] 2 | 3 | importer="texture" 4 | type="CompressedTexture2D" 5 | uid="uid://c5v3skdlp04ff" 6 | path="res://.godot/imported/medals_0.png-fcf24018e91c869d1fc8a1c4834157e5.ctex" 7 | metadata={ 8 | "vram_texture": false 9 | } 10 | 11 | [deps] 12 | 13 | source_file="res://image/medals_0.png" 14 | dest_files=["res://.godot/imported/medals_0.png-fcf24018e91c869d1fc8a1c4834157e5.ctex"] 15 | 16 | [params] 17 | 18 | compress/mode=0 19 | compress/high_quality=false 20 | compress/lossy_quality=0.7 21 | compress/hdr_compression=1 22 | compress/normal_map=0 23 | compress/channel_pack=0 24 | mipmaps/generate=false 25 | mipmaps/limit=-1 26 | roughness/mode=0 27 | roughness/src_normal="" 28 | process/fix_alpha_border=true 29 | process/premult_alpha=false 30 | process/normal_map_invert_y=false 31 | process/hdr_as_srgb=false 32 | process/hdr_clamp_exposure=false 33 | process/size_limit=0 34 | detect_3d/compress_to=1 35 | -------------------------------------------------------------------------------- /image/medals_1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zfoo-project/godot-bird/449520e8d4e611345aad3fb59559da273c85aa35/image/medals_1.png -------------------------------------------------------------------------------- /image/medals_1.png.import: -------------------------------------------------------------------------------- 1 | [remap] 2 | 3 | importer="texture" 4 | type="CompressedTexture2D" 5 | uid="uid://f5igud48a0od" 6 | path="res://.godot/imported/medals_1.png-07984b9abc452239f7c407cddb6ed612.ctex" 7 | metadata={ 8 | "vram_texture": false 9 | } 10 | 11 | [deps] 12 | 13 | source_file="res://image/medals_1.png" 14 | dest_files=["res://.godot/imported/medals_1.png-07984b9abc452239f7c407cddb6ed612.ctex"] 15 | 16 | [params] 17 | 18 | compress/mode=0 19 | compress/high_quality=false 20 | compress/lossy_quality=0.7 21 | compress/hdr_compression=1 22 | compress/normal_map=0 23 | compress/channel_pack=0 24 | mipmaps/generate=false 25 | mipmaps/limit=-1 26 | roughness/mode=0 27 | roughness/src_normal="" 28 | process/fix_alpha_border=true 29 | process/premult_alpha=false 30 | process/normal_map_invert_y=false 31 | process/hdr_as_srgb=false 32 | process/hdr_clamp_exposure=false 33 | process/size_limit=0 34 | detect_3d/compress_to=1 35 | -------------------------------------------------------------------------------- /image/medals_2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zfoo-project/godot-bird/449520e8d4e611345aad3fb59559da273c85aa35/image/medals_2.png -------------------------------------------------------------------------------- /image/medals_2.png.import: -------------------------------------------------------------------------------- 1 | [remap] 2 | 3 | importer="texture" 4 | type="CompressedTexture2D" 5 | uid="uid://baoxc3hostrie" 6 | path="res://.godot/imported/medals_2.png-c65e9c98a907ffba254bef463280f37e.ctex" 7 | metadata={ 8 | "vram_texture": false 9 | } 10 | 11 | [deps] 12 | 13 | source_file="res://image/medals_2.png" 14 | dest_files=["res://.godot/imported/medals_2.png-c65e9c98a907ffba254bef463280f37e.ctex"] 15 | 16 | [params] 17 | 18 | compress/mode=0 19 | compress/high_quality=false 20 | compress/lossy_quality=0.7 21 | compress/hdr_compression=1 22 | compress/normal_map=0 23 | compress/channel_pack=0 24 | mipmaps/generate=false 25 | mipmaps/limit=-1 26 | roughness/mode=0 27 | roughness/src_normal="" 28 | process/fix_alpha_border=true 29 | process/premult_alpha=false 30 | process/normal_map_invert_y=false 31 | process/hdr_as_srgb=false 32 | process/hdr_clamp_exposure=false 33 | process/size_limit=0 34 | detect_3d/compress_to=1 35 | -------------------------------------------------------------------------------- /image/medals_3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zfoo-project/godot-bird/449520e8d4e611345aad3fb59559da273c85aa35/image/medals_3.png -------------------------------------------------------------------------------- /image/medals_3.png.import: -------------------------------------------------------------------------------- 1 | [remap] 2 | 3 | importer="texture" 4 | type="CompressedTexture2D" 5 | uid="uid://c2gv5avidglqo" 6 | path="res://.godot/imported/medals_3.png-2cbcca209d4f2e12100e4d7c64d4eab6.ctex" 7 | metadata={ 8 | "vram_texture": false 9 | } 10 | 11 | [deps] 12 | 13 | source_file="res://image/medals_3.png" 14 | dest_files=["res://.godot/imported/medals_3.png-2cbcca209d4f2e12100e4d7c64d4eab6.ctex"] 15 | 16 | [params] 17 | 18 | compress/mode=0 19 | compress/high_quality=false 20 | compress/lossy_quality=0.7 21 | compress/hdr_compression=1 22 | compress/normal_map=0 23 | compress/channel_pack=0 24 | mipmaps/generate=false 25 | mipmaps/limit=-1 26 | roughness/mode=0 27 | roughness/src_normal="" 28 | process/fix_alpha_border=true 29 | process/premult_alpha=false 30 | process/normal_map_invert_y=false 31 | process/hdr_as_srgb=false 32 | process/hdr_clamp_exposure=false 33 | process/size_limit=0 34 | detect_3d/compress_to=1 35 | -------------------------------------------------------------------------------- /image/pipe2_down.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zfoo-project/godot-bird/449520e8d4e611345aad3fb59559da273c85aa35/image/pipe2_down.png -------------------------------------------------------------------------------- /image/pipe2_up.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zfoo-project/godot-bird/449520e8d4e611345aad3fb59559da273c85aa35/image/pipe2_up.png -------------------------------------------------------------------------------- /image/pipe2_up.png.import: -------------------------------------------------------------------------------- 1 | [remap] 2 | 3 | importer="texture" 4 | type="CompressedTexture2D" 5 | uid="uid://jqt6m8m4e22w" 6 | path="res://.godot/imported/pipe2_up.png-b306dda6f7b761e3521b8ac7ead4d919.ctex" 7 | metadata={ 8 | "vram_texture": false 9 | } 10 | 11 | [deps] 12 | 13 | source_file="res://image/pipe2_up.png" 14 | dest_files=["res://.godot/imported/pipe2_up.png-b306dda6f7b761e3521b8ac7ead4d919.ctex"] 15 | 16 | [params] 17 | 18 | compress/mode=0 19 | compress/high_quality=false 20 | compress/lossy_quality=0.7 21 | compress/hdr_compression=1 22 | compress/normal_map=0 23 | compress/channel_pack=0 24 | mipmaps/generate=false 25 | mipmaps/limit=-1 26 | roughness/mode=0 27 | roughness/src_normal="" 28 | process/fix_alpha_border=true 29 | process/premult_alpha=false 30 | process/normal_map_invert_y=false 31 | process/hdr_as_srgb=false 32 | process/hdr_clamp_exposure=false 33 | process/size_limit=0 34 | detect_3d/compress_to=1 35 | -------------------------------------------------------------------------------- /image/pipe_down.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zfoo-project/godot-bird/449520e8d4e611345aad3fb59559da273c85aa35/image/pipe_down.png -------------------------------------------------------------------------------- /image/pipe_up.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zfoo-project/godot-bird/449520e8d4e611345aad3fb59559da273c85aa35/image/pipe_up.png -------------------------------------------------------------------------------- /image/pipe_up.png.import: -------------------------------------------------------------------------------- 1 | [remap] 2 | 3 | importer="texture" 4 | type="CompressedTexture2D" 5 | uid="uid://cqgbgrjed5hnm" 6 | path="res://.godot/imported/pipe_up.png-3c9773c08158a106876fce4df3d72910.ctex" 7 | metadata={ 8 | "vram_texture": false 9 | } 10 | 11 | [deps] 12 | 13 | source_file="res://image/pipe_up.png" 14 | dest_files=["res://.godot/imported/pipe_up.png-3c9773c08158a106876fce4df3d72910.ctex"] 15 | 16 | [params] 17 | 18 | compress/mode=0 19 | compress/high_quality=false 20 | compress/lossy_quality=0.7 21 | compress/hdr_compression=1 22 | compress/normal_map=0 23 | compress/channel_pack=0 24 | mipmaps/generate=false 25 | mipmaps/limit=-1 26 | roughness/mode=0 27 | roughness/src_normal="" 28 | process/fix_alpha_border=true 29 | process/premult_alpha=false 30 | process/normal_map_invert_y=false 31 | process/hdr_as_srgb=false 32 | process/hdr_clamp_exposure=false 33 | process/size_limit=0 34 | detect_3d/compress_to=1 35 | -------------------------------------------------------------------------------- /image/score_panel.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zfoo-project/godot-bird/449520e8d4e611345aad3fb59559da273c85aa35/image/score_panel.png -------------------------------------------------------------------------------- /image/text_game_over.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zfoo-project/godot-bird/449520e8d4e611345aad3fb59559da273c85aa35/image/text_game_over.png -------------------------------------------------------------------------------- /image/text_ready.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zfoo-project/godot-bird/449520e8d4e611345aad3fb59559da273c85aa35/image/text_ready.png -------------------------------------------------------------------------------- /image/tile/Modern_Office-48-48.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zfoo-project/godot-bird/449520e8d4e611345aad3fb59559da273c85aa35/image/tile/Modern_Office-48-48.png -------------------------------------------------------------------------------- /image/tile/Modern_Office_Decoration-48-48.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zfoo-project/godot-bird/449520e8d4e611345aad3fb59559da273c85aa35/image/tile/Modern_Office_Decoration-48-48.png -------------------------------------------------------------------------------- /image/titile7.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zfoo-project/godot-bird/449520e8d4e611345aad3fb59559da273c85aa35/image/titile7.png -------------------------------------------------------------------------------- /image/titile7.png.import: -------------------------------------------------------------------------------- 1 | [remap] 2 | 3 | importer="texture" 4 | type="CompressedTexture2D" 5 | uid="uid://bj0km8pnflson" 6 | path="res://.godot/imported/titile7.png-f137808b138ac3b68469544e390a5302.ctex" 7 | metadata={ 8 | "vram_texture": false 9 | } 10 | 11 | [deps] 12 | 13 | source_file="res://image/titile7.png" 14 | dest_files=["res://.godot/imported/titile7.png-f137808b138ac3b68469544e390a5302.ctex"] 15 | 16 | [params] 17 | 18 | compress/mode=0 19 | compress/high_quality=false 20 | compress/lossy_quality=0.7 21 | compress/hdr_compression=1 22 | compress/normal_map=0 23 | compress/channel_pack=0 24 | mipmaps/generate=false 25 | mipmaps/limit=-1 26 | roughness/mode=0 27 | roughness/src_normal="" 28 | process/fix_alpha_border=true 29 | process/premult_alpha=false 30 | process/normal_map_invert_y=false 31 | process/hdr_as_srgb=false 32 | process/hdr_clamp_exposure=false 33 | process/size_limit=0 34 | detect_3d/compress_to=1 35 | -------------------------------------------------------------------------------- /image/title.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zfoo-project/godot-bird/449520e8d4e611345aad3fb59559da273c85aa35/image/title.png -------------------------------------------------------------------------------- /image/title.png.import: -------------------------------------------------------------------------------- 1 | [remap] 2 | 3 | importer="texture" 4 | type="CompressedTexture2D" 5 | uid="uid://bw845aaa6sbnj" 6 | path="res://.godot/imported/title.png-8fb1adeee0c639754b2939b182c98475.ctex" 7 | metadata={ 8 | "vram_texture": false 9 | } 10 | 11 | [deps] 12 | 13 | source_file="res://image/title.png" 14 | dest_files=["res://.godot/imported/title.png-8fb1adeee0c639754b2939b182c98475.ctex"] 15 | 16 | [params] 17 | 18 | compress/mode=0 19 | compress/high_quality=false 20 | compress/lossy_quality=0.7 21 | compress/hdr_compression=1 22 | compress/normal_map=0 23 | compress/channel_pack=0 24 | mipmaps/generate=false 25 | mipmaps/limit=-1 26 | roughness/mode=0 27 | roughness/src_normal="" 28 | process/fix_alpha_border=true 29 | process/premult_alpha=false 30 | process/normal_map_invert_y=false 31 | process/hdr_as_srgb=false 32 | process/hdr_clamp_exposure=false 33 | process/size_limit=0 34 | detect_3d/compress_to=1 35 | -------------------------------------------------------------------------------- /image/tutorial.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zfoo-project/godot-bird/449520e8d4e611345aad3fb59559da273c85aa35/image/tutorial.png -------------------------------------------------------------------------------- /image/tutorial.png.import: -------------------------------------------------------------------------------- 1 | [remap] 2 | 3 | importer="texture" 4 | type="CompressedTexture2D" 5 | uid="uid://bt6x8remmjgap" 6 | path="res://.godot/imported/tutorial.png-84d9677abc3d2399af66c44216da2671.ctex" 7 | metadata={ 8 | "vram_texture": false 9 | } 10 | 11 | [deps] 12 | 13 | source_file="res://image/tutorial.png" 14 | dest_files=["res://.godot/imported/tutorial.png-84d9677abc3d2399af66c44216da2671.ctex"] 15 | 16 | [params] 17 | 18 | compress/mode=0 19 | compress/high_quality=false 20 | compress/lossy_quality=0.7 21 | compress/hdr_compression=1 22 | compress/normal_map=0 23 | compress/channel_pack=0 24 | mipmaps/generate=false 25 | mipmaps/limit=-1 26 | roughness/mode=0 27 | roughness/src_normal="" 28 | process/fix_alpha_border=true 29 | process/premult_alpha=false 30 | process/normal_map_invert_y=false 31 | process/hdr_as_srgb=false 32 | process/hdr_clamp_exposure=false 33 | process/size_limit=0 34 | detect_3d/compress_to=1 35 | -------------------------------------------------------------------------------- /image/ui/LOADING_ICON_01.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zfoo-project/godot-bird/449520e8d4e611345aad3fb59559da273c85aa35/image/ui/LOADING_ICON_01.png -------------------------------------------------------------------------------- /image/ui/LOADING_MOON_BG.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zfoo-project/godot-bird/449520e8d4e611345aad3fb59559da273c85aa35/image/ui/LOADING_MOON_BG.png -------------------------------------------------------------------------------- /image/ui/UI_CLAUSE_BTN.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zfoo-project/godot-bird/449520e8d4e611345aad3fb59559da273c85aa35/image/ui/UI_CLAUSE_BTN.png -------------------------------------------------------------------------------- /image/ui/UI_Loading_Tip_Popup.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zfoo-project/godot-bird/449520e8d4e611345aad3fb59559da273c85aa35/image/ui/UI_Loading_Tip_Popup.png -------------------------------------------------------------------------------- /image/ui/UI_Main_Adventure_Friend_BuyBG.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zfoo-project/godot-bird/449520e8d4e611345aad3fb59559da273c85aa35/image/ui/UI_Main_Adventure_Friend_BuyBG.png -------------------------------------------------------------------------------- /image/ui/UI_Main_Adventure_ProfileEdge_01.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zfoo-project/godot-bird/449520e8d4e611345aad3fb59559da273c85aa35/image/ui/UI_Main_Adventure_ProfileEdge_01.png -------------------------------------------------------------------------------- /image/ui/UI_Main_Adventure_ProfileEdge_02.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zfoo-project/godot-bird/449520e8d4e611345aad3fb59559da273c85aa35/image/ui/UI_Main_Adventure_ProfileEdge_02.png -------------------------------------------------------------------------------- /image/ui/UI_Main_Adventure_ShopBox.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zfoo-project/godot-bird/449520e8d4e611345aad3fb59559da273c85aa35/image/ui/UI_Main_Adventure_ShopBox.png -------------------------------------------------------------------------------- /image/ui/UI_Main_Adventure_ready_BTN.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zfoo-project/godot-bird/449520e8d4e611345aad3fb59559da273c85aa35/image/ui/UI_Main_Adventure_ready_BTN.png -------------------------------------------------------------------------------- /image/ui/UI_Main_Adventure_ready_BTN_2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zfoo-project/godot-bird/449520e8d4e611345aad3fb59559da273c85aa35/image/ui/UI_Main_Adventure_ready_BTN_2.png -------------------------------------------------------------------------------- /image/ui/UI_Main_ArrowOff.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zfoo-project/godot-bird/449520e8d4e611345aad3fb59559da273c85aa35/image/ui/UI_Main_ArrowOff.png -------------------------------------------------------------------------------- /image/ui/UI_Main_ArrowOn.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zfoo-project/godot-bird/449520e8d4e611345aad3fb59559da273c85aa35/image/ui/UI_Main_ArrowOn.png -------------------------------------------------------------------------------- /image/ui/UI_Main_ArrowSmall.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zfoo-project/godot-bird/449520e8d4e611345aad3fb59559da273c85aa35/image/ui/UI_Main_ArrowSmall.png -------------------------------------------------------------------------------- /image/ui/UI_Main_BuyResourcePopup_Band.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zfoo-project/godot-bird/449520e8d4e611345aad3fb59559da273c85aa35/image/ui/UI_Main_BuyResourcePopup_Band.png -------------------------------------------------------------------------------- /image/ui/UI_Main_BuyResourcePopup_Band_02.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zfoo-project/godot-bird/449520e8d4e611345aad3fb59559da273c85aa35/image/ui/UI_Main_BuyResourcePopup_Band_02.png -------------------------------------------------------------------------------- /image/ui/UI_Main_Common_BG.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zfoo-project/godot-bird/449520e8d4e611345aad3fb59559da273c85aa35/image/ui/UI_Main_Common_BG.png -------------------------------------------------------------------------------- /image/ui/UI_Main_Common_BG_02.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zfoo-project/godot-bird/449520e8d4e611345aad3fb59559da273c85aa35/image/ui/UI_Main_Common_BG_02.png -------------------------------------------------------------------------------- /image/ui/UI_Main_Event_BG.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zfoo-project/godot-bird/449520e8d4e611345aad3fb59559da273c85aa35/image/ui/UI_Main_Event_BG.png -------------------------------------------------------------------------------- /image/ui/UI_Main_IconBand.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zfoo-project/godot-bird/449520e8d4e611345aad3fb59559da273c85aa35/image/ui/UI_Main_IconBand.png -------------------------------------------------------------------------------- /image/ui/UI_Main_InvenPopup_BG.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zfoo-project/godot-bird/449520e8d4e611345aad3fb59559da273c85aa35/image/ui/UI_Main_InvenPopup_BG.png -------------------------------------------------------------------------------- /image/ui/UI_Main_Inven_Item.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zfoo-project/godot-bird/449520e8d4e611345aad3fb59559da273c85aa35/image/ui/UI_Main_Inven_Item.png -------------------------------------------------------------------------------- /image/ui/UI_Main_Inven_ItemBand.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zfoo-project/godot-bird/449520e8d4e611345aad3fb59559da273c85aa35/image/ui/UI_Main_Inven_ItemBand.png -------------------------------------------------------------------------------- /image/ui/UI_Main_Inven_ItemPetBand.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zfoo-project/godot-bird/449520e8d4e611345aad3fb59559da273c85aa35/image/ui/UI_Main_Inven_ItemPetBand.png -------------------------------------------------------------------------------- /image/ui/UI_Main_Inven_Item_Pet.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zfoo-project/godot-bird/449520e8d4e611345aad3fb59559da273c85aa35/image/ui/UI_Main_Inven_Item_Pet.png -------------------------------------------------------------------------------- /image/ui/UI_Main_Inven_Item_PetGrade_A.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zfoo-project/godot-bird/449520e8d4e611345aad3fb59559da273c85aa35/image/ui/UI_Main_Inven_Item_PetGrade_A.png -------------------------------------------------------------------------------- /image/ui/UI_Main_Inven_Item_PetGrade_B.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zfoo-project/godot-bird/449520e8d4e611345aad3fb59559da273c85aa35/image/ui/UI_Main_Inven_Item_PetGrade_B.png -------------------------------------------------------------------------------- /image/ui/UI_Main_Inven_Item_PetGrade_C.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zfoo-project/godot-bird/449520e8d4e611345aad3fb59559da273c85aa35/image/ui/UI_Main_Inven_Item_PetGrade_C.png -------------------------------------------------------------------------------- /image/ui/UI_Main_Inven_Item_Pet_Select.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zfoo-project/godot-bird/449520e8d4e611345aad3fb59559da273c85aa35/image/ui/UI_Main_Inven_Item_Pet_Select.png -------------------------------------------------------------------------------- /image/ui/UI_Main_Inven_Pet_Title_01.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zfoo-project/godot-bird/449520e8d4e611345aad3fb59559da273c85aa35/image/ui/UI_Main_Inven_Pet_Title_01.png -------------------------------------------------------------------------------- /image/ui/UI_Main_InvitePopup_BG5.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zfoo-project/godot-bird/449520e8d4e611345aad3fb59559da273c85aa35/image/ui/UI_Main_InvitePopup_BG5.png -------------------------------------------------------------------------------- /image/ui/UI_Main_ItemInfo_BG.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zfoo-project/godot-bird/449520e8d4e611345aad3fb59559da273c85aa35/image/ui/UI_Main_ItemInfo_BG.png -------------------------------------------------------------------------------- /image/ui/UI_Main_ItemInfo_BG2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zfoo-project/godot-bird/449520e8d4e611345aad3fb59559da273c85aa35/image/ui/UI_Main_ItemInfo_BG2.png -------------------------------------------------------------------------------- /image/ui/UI_Main_Levelup_Band.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zfoo-project/godot-bird/449520e8d4e611345aad3fb59559da273c85aa35/image/ui/UI_Main_Levelup_Band.png -------------------------------------------------------------------------------- /image/ui/UI_Main_Lucky_BG.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zfoo-project/godot-bird/449520e8d4e611345aad3fb59559da273c85aa35/image/ui/UI_Main_Lucky_BG.png -------------------------------------------------------------------------------- /image/ui/UI_Main_Lucky_GaugeShape.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zfoo-project/godot-bird/449520e8d4e611345aad3fb59559da273c85aa35/image/ui/UI_Main_Lucky_GaugeShape.png -------------------------------------------------------------------------------- /image/ui/UI_Main_Lucky_GaugeShapeBG.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zfoo-project/godot-bird/449520e8d4e611345aad3fb59559da273c85aa35/image/ui/UI_Main_Lucky_GaugeShapeBG.png -------------------------------------------------------------------------------- /image/ui/UI_Main_MessageBox.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zfoo-project/godot-bird/449520e8d4e611345aad3fb59559da273c85aa35/image/ui/UI_Main_MessageBox.png -------------------------------------------------------------------------------- /image/ui/UI_Main_NEW.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zfoo-project/godot-bird/449520e8d4e611345aad3fb59559da273c85aa35/image/ui/UI_Main_NEW.png -------------------------------------------------------------------------------- /image/ui/UI_Main_OFF.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zfoo-project/godot-bird/449520e8d4e611345aad3fb59559da273c85aa35/image/ui/UI_Main_OFF.png -------------------------------------------------------------------------------- /image/ui/UI_Main_ON.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zfoo-project/godot-bird/449520e8d4e611345aad3fb59559da273c85aa35/image/ui/UI_Main_ON.png -------------------------------------------------------------------------------- /image/ui/UI_Main_Pause_BG.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zfoo-project/godot-bird/449520e8d4e611345aad3fb59559da273c85aa35/image/ui/UI_Main_Pause_BG.png -------------------------------------------------------------------------------- /image/ui/UI_Main_Preview_BG.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zfoo-project/godot-bird/449520e8d4e611345aad3fb59559da273c85aa35/image/ui/UI_Main_Preview_BG.png -------------------------------------------------------------------------------- /image/ui/UI_Main_QuestionMark.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zfoo-project/godot-bird/449520e8d4e611345aad3fb59559da273c85aa35/image/ui/UI_Main_QuestionMark.png -------------------------------------------------------------------------------- /image/ui/UI_Main_RankUp_UserBG.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zfoo-project/godot-bird/449520e8d4e611345aad3fb59559da273c85aa35/image/ui/UI_Main_RankUp_UserBG.png -------------------------------------------------------------------------------- /image/ui/UI_Main_Ranking_Mybar.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zfoo-project/godot-bird/449520e8d4e611345aad3fb59559da273c85aa35/image/ui/UI_Main_Ranking_Mybar.png -------------------------------------------------------------------------------- /image/ui/UI_Main_Ranking_UserBG.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zfoo-project/godot-bird/449520e8d4e611345aad3fb59559da273c85aa35/image/ui/UI_Main_Ranking_UserBG.png -------------------------------------------------------------------------------- /image/ui/UI_Main_Ready_BG2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zfoo-project/godot-bird/449520e8d4e611345aad3fb59559da273c85aa35/image/ui/UI_Main_Ready_BG2.png -------------------------------------------------------------------------------- /image/ui/UI_Main_Ready_TimeBG.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zfoo-project/godot-bird/449520e8d4e611345aad3fb59559da273c85aa35/image/ui/UI_Main_Ready_TimeBG.png -------------------------------------------------------------------------------- /image/ui/UI_Main_Result_Arrow.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zfoo-project/godot-bird/449520e8d4e611345aad3fb59559da273c85aa35/image/ui/UI_Main_Result_Arrow.png -------------------------------------------------------------------------------- /image/ui/UI_Main_Result_BG4.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zfoo-project/godot-bird/449520e8d4e611345aad3fb59559da273c85aa35/image/ui/UI_Main_Result_BG4.png -------------------------------------------------------------------------------- /image/ui/UI_Main_Shop_Buff.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zfoo-project/godot-bird/449520e8d4e611345aad3fb59559da273c85aa35/image/ui/UI_Main_Shop_Buff.png -------------------------------------------------------------------------------- /image/ui/UI_Main_Shop_ItemOFF.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zfoo-project/godot-bird/449520e8d4e611345aad3fb59559da273c85aa35/image/ui/UI_Main_Shop_ItemOFF.png -------------------------------------------------------------------------------- /image/ui/UI_Main_Shop_ItemON.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zfoo-project/godot-bird/449520e8d4e611345aad3fb59559da273c85aa35/image/ui/UI_Main_Shop_ItemON.png -------------------------------------------------------------------------------- /image/ui/UI_Main_ranking_ready_BTN.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zfoo-project/godot-bird/449520e8d4e611345aad3fb59559da273c85aa35/image/ui/UI_Main_ranking_ready_BTN.png -------------------------------------------------------------------------------- /image/ui/UI_NULL_Notice.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zfoo-project/godot-bird/449520e8d4e611345aad3fb59559da273c85aa35/image/ui/UI_NULL_Notice.png -------------------------------------------------------------------------------- /image/ui/UI_Popup_BTN1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zfoo-project/godot-bird/449520e8d4e611345aad3fb59559da273c85aa35/image/ui/UI_Popup_BTN1.png -------------------------------------------------------------------------------- /image/ui/UI_Popup_BTN10.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zfoo-project/godot-bird/449520e8d4e611345aad3fb59559da273c85aa35/image/ui/UI_Popup_BTN10.png -------------------------------------------------------------------------------- /image/ui/UI_Popup_BTN2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zfoo-project/godot-bird/449520e8d4e611345aad3fb59559da273c85aa35/image/ui/UI_Popup_BTN2.png -------------------------------------------------------------------------------- /image/ui/UI_Popup_BTN4.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zfoo-project/godot-bird/449520e8d4e611345aad3fb59559da273c85aa35/image/ui/UI_Popup_BTN4.png -------------------------------------------------------------------------------- /image/ui/UI_Popup_BTN5.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zfoo-project/godot-bird/449520e8d4e611345aad3fb59559da273c85aa35/image/ui/UI_Popup_BTN5.png -------------------------------------------------------------------------------- /image/ui/UI_Popup_BTN5_Tab.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zfoo-project/godot-bird/449520e8d4e611345aad3fb59559da273c85aa35/image/ui/UI_Popup_BTN5_Tab.png -------------------------------------------------------------------------------- /image/ui/UI_Popup_BTN6.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zfoo-project/godot-bird/449520e8d4e611345aad3fb59559da273c85aa35/image/ui/UI_Popup_BTN6.png -------------------------------------------------------------------------------- /image/ui/UI_Popup_BTN7.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zfoo-project/godot-bird/449520e8d4e611345aad3fb59559da273c85aa35/image/ui/UI_Popup_BTN7.png -------------------------------------------------------------------------------- /image/ui/UI_Popup_BTN7_Tab.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zfoo-project/godot-bird/449520e8d4e611345aad3fb59559da273c85aa35/image/ui/UI_Popup_BTN7_Tab.png -------------------------------------------------------------------------------- /image/ui/UI_Popup_BTN8.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zfoo-project/godot-bird/449520e8d4e611345aad3fb59559da273c85aa35/image/ui/UI_Popup_BTN8.png -------------------------------------------------------------------------------- /image/ui/UI_Popup_BTN9.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zfoo-project/godot-bird/449520e8d4e611345aad3fb59559da273c85aa35/image/ui/UI_Popup_BTN9.png -------------------------------------------------------------------------------- /image/ui/UI_Popup_ItemBTN1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zfoo-project/godot-bird/449520e8d4e611345aad3fb59559da273c85aa35/image/ui/UI_Popup_ItemBTN1.png -------------------------------------------------------------------------------- /image/ui/UI_Popup_ItemBTN1_Select.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zfoo-project/godot-bird/449520e8d4e611345aad3fb59559da273c85aa35/image/ui/UI_Popup_ItemBTN1_Select.png -------------------------------------------------------------------------------- /image/ui/UI_Popup_Tab_A_01.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zfoo-project/godot-bird/449520e8d4e611345aad3fb59559da273c85aa35/image/ui/UI_Popup_Tab_A_01.png -------------------------------------------------------------------------------- /image/ui/UI_Popup_Tab_A_02.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zfoo-project/godot-bird/449520e8d4e611345aad3fb59559da273c85aa35/image/ui/UI_Popup_Tab_A_02.png -------------------------------------------------------------------------------- /image/ui/UI_Popup_Tab_A_03.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zfoo-project/godot-bird/449520e8d4e611345aad3fb59559da273c85aa35/image/ui/UI_Popup_Tab_A_03.png -------------------------------------------------------------------------------- /image/ui/UI_Popup_Tab_B_01.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zfoo-project/godot-bird/449520e8d4e611345aad3fb59559da273c85aa35/image/ui/UI_Popup_Tab_B_01.png -------------------------------------------------------------------------------- /image/ui/UI_Popup_Tab_B_02.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zfoo-project/godot-bird/449520e8d4e611345aad3fb59559da273c85aa35/image/ui/UI_Popup_Tab_B_02.png -------------------------------------------------------------------------------- /image/ui/UI_Popup_Tab_C_01.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zfoo-project/godot-bird/449520e8d4e611345aad3fb59559da273c85aa35/image/ui/UI_Popup_Tab_C_01.png -------------------------------------------------------------------------------- /image/ui/UI_Popup_Tab_C_02.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zfoo-project/godot-bird/449520e8d4e611345aad3fb59559da273c85aa35/image/ui/UI_Popup_Tab_C_02.png -------------------------------------------------------------------------------- /image/ui/UI_Tutorial_PCDialog.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zfoo-project/godot-bird/449520e8d4e611345aad3fb59559da273c85aa35/image/ui/UI_Tutorial_PCDialog.png -------------------------------------------------------------------------------- /image/ui/UI_Tutorial_SkipBTN.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zfoo-project/godot-bird/449520e8d4e611345aad3fb59559da273c85aa35/image/ui/UI_Tutorial_SkipBTN.png -------------------------------------------------------------------------------- /image/ui/loadingMessageBox.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zfoo-project/godot-bird/449520e8d4e611345aad3fb59559da273c85aa35/image/ui/loadingMessageBox.png -------------------------------------------------------------------------------- /image/water/water.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zfoo-project/godot-bird/449520e8d4e611345aad3fb59559da273c85aa35/image/water/water.png -------------------------------------------------------------------------------- /image/water/water.png.import: -------------------------------------------------------------------------------- 1 | [remap] 2 | 3 | importer="texture" 4 | type="CompressedTexture2D" 5 | uid="uid://bi1w13qjlffi6" 6 | path="res://.godot/imported/water.png-5101c4880ab7f8d91ca9708b559488bb.ctex" 7 | metadata={ 8 | "vram_texture": false 9 | } 10 | 11 | [deps] 12 | 13 | source_file="res://image/water/water.png" 14 | dest_files=["res://.godot/imported/water.png-5101c4880ab7f8d91ca9708b559488bb.ctex"] 15 | 16 | [params] 17 | 18 | compress/mode=0 19 | compress/high_quality=false 20 | compress/lossy_quality=0.7 21 | compress/hdr_compression=1 22 | compress/normal_map=0 23 | compress/channel_pack=0 24 | mipmaps/generate=false 25 | mipmaps/limit=-1 26 | roughness/mode=0 27 | roughness/src_normal="" 28 | process/fix_alpha_border=true 29 | process/premult_alpha=false 30 | process/normal_map_invert_y=false 31 | process/hdr_as_srgb=false 32 | process/hdr_clamp_exposure=false 33 | process/size_limit=0 34 | detect_3d/compress_to=1 35 | -------------------------------------------------------------------------------- /note.md: -------------------------------------------------------------------------------- 1 | ### export Android路径设置 2 | 3 | - android sdk path 4 | 5 | ``` 6 | C:\Users\jaysunxiao\AppData\Local\Android\Sdk 7 | ``` 8 | 9 | - debug key store 10 | 11 | ``` 12 | D:/Program/Godot_v4.0-beta3_win64.exe/debug.keystore 13 | ``` 14 | -------------------------------------------------------------------------------- /protocol/ByteBuffer.gd.uid: -------------------------------------------------------------------------------- 1 | uid://d3a2f753v8nen 2 | -------------------------------------------------------------------------------- /protocol/ProtocolManager.gd.uid: -------------------------------------------------------------------------------- 1 | uid://bgsuk38qjv0dl 2 | -------------------------------------------------------------------------------- /protocol/admin/AdminCurrencyAsk.gd.uid: -------------------------------------------------------------------------------- 1 | uid://d3nv74stgfpnh 2 | -------------------------------------------------------------------------------- /protocol/admin/AdminPlayerLevelAsk.gd.uid: -------------------------------------------------------------------------------- 1 | uid://h07uwmecootp 2 | -------------------------------------------------------------------------------- /protocol/attachment/GatewayAttachment.gd.uid: -------------------------------------------------------------------------------- 1 | uid://c7nfityxo686w 2 | -------------------------------------------------------------------------------- /protocol/attachment/HttpAttachment.gd.uid: -------------------------------------------------------------------------------- 1 | uid://bfl2uqp8wu5k0 2 | -------------------------------------------------------------------------------- /protocol/attachment/NoAnswerAttachment.gd.uid: -------------------------------------------------------------------------------- 1 | uid://d3yaxt5ljm1vl 2 | -------------------------------------------------------------------------------- /protocol/attachment/SignalAttachment.gd.uid: -------------------------------------------------------------------------------- 1 | uid://cxsgihqymogon 2 | -------------------------------------------------------------------------------- /protocol/attachment/UdpAttachment.gd.uid: -------------------------------------------------------------------------------- 1 | uid://cfjltxfl7l75l 2 | -------------------------------------------------------------------------------- /protocol/battle/BattleResultRequest.gd.uid: -------------------------------------------------------------------------------- 1 | uid://cy54kw6slls32 2 | -------------------------------------------------------------------------------- /protocol/battle/BattleResultResponse.gd.uid: -------------------------------------------------------------------------------- 1 | uid://bdfqbrdimqkk3 2 | -------------------------------------------------------------------------------- /protocol/cache/BattleScoreAnswer.gd.uid: -------------------------------------------------------------------------------- 1 | uid://h712ljxe52jr 2 | -------------------------------------------------------------------------------- /protocol/cache/BattleScoreAsk.gd.uid: -------------------------------------------------------------------------------- 1 | uid://cglq6ttq7ykjs 2 | -------------------------------------------------------------------------------- /protocol/cache/ScoreRankRequest.gd: -------------------------------------------------------------------------------- 1 | class_name _ScoreRankRequest 2 | 3 | const ByteBuffer = preload("../ByteBuffer.gd") 4 | 5 | 6 | 7 | 8 | func protocolId() -> int: 9 | return 3002 10 | 11 | func _to_string() -> String: 12 | const jsonTemplate = "{}" 13 | var params = [] 14 | return jsonTemplate.format(params, "{}") 15 | 16 | class ScoreRankRequestRegistration: 17 | func write(buffer: ByteBuffer, packet: _ScoreRankRequest): 18 | if (packet == null): 19 | buffer.writeInt(0) 20 | return 21 | buffer.writeInt(-1) 22 | pass 23 | 24 | func read(buffer: ByteBuffer) -> _ScoreRankRequest: 25 | var length = buffer.readInt() 26 | if (length == 0): 27 | return null 28 | var beforeReadIndex = buffer.getReadOffset() 29 | var packet: _ScoreRankRequest = buffer.newInstance(3002) 30 | 31 | if (length > 0): 32 | buffer.setReadOffset(beforeReadIndex + length) 33 | return packet -------------------------------------------------------------------------------- /protocol/cache/ScoreRankRequest.gd.uid: -------------------------------------------------------------------------------- 1 | uid://dnmr4gncblcfq 2 | -------------------------------------------------------------------------------- /protocol/cache/ScoreRankResponse.gd.uid: -------------------------------------------------------------------------------- 1 | uid://18ias0gd6lun 2 | -------------------------------------------------------------------------------- /protocol/chat/ChatMessage.gd.uid: -------------------------------------------------------------------------------- 1 | uid://c4ps2tbeihwg7 2 | -------------------------------------------------------------------------------- /protocol/chat/GroupChatMessageNotice.gd.uid: -------------------------------------------------------------------------------- 1 | uid://cxllstukucjtr 2 | -------------------------------------------------------------------------------- /protocol/chat/GroupChatRequest.gd.uid: -------------------------------------------------------------------------------- 1 | uid://04vk3448wsx6 2 | -------------------------------------------------------------------------------- /protocol/chat/GroupHistoryMessageRequest.gd.uid: -------------------------------------------------------------------------------- 1 | uid://pggt2uwa7hk4 2 | -------------------------------------------------------------------------------- /protocol/chat/GroupHistoryMessageResponse.gd.uid: -------------------------------------------------------------------------------- 1 | uid://vohg5iebkuyr 2 | -------------------------------------------------------------------------------- /protocol/common/CurrencyVo.gd.uid: -------------------------------------------------------------------------------- 1 | uid://c13kn17re4h1w 2 | -------------------------------------------------------------------------------- /protocol/common/Error.gd.uid: -------------------------------------------------------------------------------- 1 | uid://bfo7avohds3yd 2 | -------------------------------------------------------------------------------- /protocol/common/Heartbeat.gd: -------------------------------------------------------------------------------- 1 | class_name _Heartbeat 2 | 3 | const ByteBuffer = preload("../ByteBuffer.gd") 4 | 5 | 6 | 7 | 8 | func protocolId() -> int: 9 | return 102 10 | 11 | func _to_string() -> String: 12 | const jsonTemplate = "{}" 13 | var params = [] 14 | return jsonTemplate.format(params, "{}") 15 | 16 | class HeartbeatRegistration: 17 | func write(buffer: ByteBuffer, packet: _Heartbeat): 18 | if (packet == null): 19 | buffer.writeInt(0) 20 | return 21 | buffer.writeInt(-1) 22 | pass 23 | 24 | func read(buffer: ByteBuffer) -> _Heartbeat: 25 | var length = buffer.readInt() 26 | if (length == 0): 27 | return null 28 | var beforeReadIndex = buffer.getReadOffset() 29 | var packet: _Heartbeat = buffer.newInstance(102) 30 | 31 | if (length > 0): 32 | buffer.setReadOffset(beforeReadIndex + length) 33 | return packet -------------------------------------------------------------------------------- /protocol/common/Heartbeat.gd.uid: -------------------------------------------------------------------------------- 1 | uid://qlvbu7cn7wum 2 | -------------------------------------------------------------------------------- /protocol/common/Message.gd.uid: -------------------------------------------------------------------------------- 1 | uid://dxdkm7cf7rx57 2 | -------------------------------------------------------------------------------- /protocol/common/PairIntLong.gd.uid: -------------------------------------------------------------------------------- 1 | uid://crv0rrfgelj46 2 | -------------------------------------------------------------------------------- /protocol/common/PairLS.gd.uid: -------------------------------------------------------------------------------- 1 | uid://dti0v70xoa2yj 2 | -------------------------------------------------------------------------------- /protocol/common/PairLong.gd.uid: -------------------------------------------------------------------------------- 1 | uid://tkkd75d1m33r 2 | -------------------------------------------------------------------------------- /protocol/common/PairString.gd.uid: -------------------------------------------------------------------------------- 1 | uid://cyorleq1cqu2k 2 | -------------------------------------------------------------------------------- /protocol/common/Ping.gd: -------------------------------------------------------------------------------- 1 | class_name _Ping 2 | 3 | const ByteBuffer = preload("../ByteBuffer.gd") 4 | 5 | 6 | 7 | 8 | func protocolId() -> int: 9 | return 103 10 | 11 | func _to_string() -> String: 12 | const jsonTemplate = "{}" 13 | var params = [] 14 | return jsonTemplate.format(params, "{}") 15 | 16 | class PingRegistration: 17 | func write(buffer: ByteBuffer, packet: _Ping): 18 | if (packet == null): 19 | buffer.writeInt(0) 20 | return 21 | buffer.writeInt(-1) 22 | pass 23 | 24 | func read(buffer: ByteBuffer) -> _Ping: 25 | var length = buffer.readInt() 26 | if (length == 0): 27 | return null 28 | var beforeReadIndex = buffer.getReadOffset() 29 | var packet: _Ping = buffer.newInstance(103) 30 | 31 | if (length > 0): 32 | buffer.setReadOffset(beforeReadIndex + length) 33 | return packet -------------------------------------------------------------------------------- /protocol/common/Ping.gd.uid: -------------------------------------------------------------------------------- 1 | uid://dd4h30ifai6j2 2 | -------------------------------------------------------------------------------- /protocol/common/PlayerInfo.gd.uid: -------------------------------------------------------------------------------- 1 | uid://cqwp3nhthyoti 2 | -------------------------------------------------------------------------------- /protocol/common/Pong.gd.uid: -------------------------------------------------------------------------------- 1 | uid://cfaljsbaqxt66 2 | -------------------------------------------------------------------------------- /protocol/common/RankInfo.gd.uid: -------------------------------------------------------------------------------- 1 | uid://iouedpr7s8yy 2 | -------------------------------------------------------------------------------- /protocol/common/TripleLSS.gd.uid: -------------------------------------------------------------------------------- 1 | uid://cnjpoxpgh50m5 2 | -------------------------------------------------------------------------------- /protocol/common/TripleLong.gd.uid: -------------------------------------------------------------------------------- 1 | uid://b5pflut2sjv2x 2 | -------------------------------------------------------------------------------- /protocol/common/TripleString.gd.uid: -------------------------------------------------------------------------------- 1 | uid://y0k2l54ujt6o 2 | -------------------------------------------------------------------------------- /protocol/login/GetPlayerInfoRequest.gd.uid: -------------------------------------------------------------------------------- 1 | uid://koom61lpgctc 2 | -------------------------------------------------------------------------------- /protocol/login/GetPlayerInfoResponse.gd.uid: -------------------------------------------------------------------------------- 1 | uid://cdcib26nyjclf 2 | -------------------------------------------------------------------------------- /protocol/login/KickPlayerNotice.gd.uid: -------------------------------------------------------------------------------- 1 | uid://d4lc6uct0h8xd 2 | -------------------------------------------------------------------------------- /protocol/login/LoginRequest.gd.uid: -------------------------------------------------------------------------------- 1 | uid://b0a4b4t17hf14 2 | -------------------------------------------------------------------------------- /protocol/login/LoginResponse.gd.uid: -------------------------------------------------------------------------------- 1 | uid://coilfi02ptmup 2 | -------------------------------------------------------------------------------- /protocol/login/LogoutRequest.gd: -------------------------------------------------------------------------------- 1 | class_name _LogoutRequest 2 | 3 | const ByteBuffer = preload("../ByteBuffer.gd") 4 | 5 | 6 | 7 | 8 | func protocolId() -> int: 9 | return 1002 10 | 11 | func _to_string() -> String: 12 | const jsonTemplate = "{}" 13 | var params = [] 14 | return jsonTemplate.format(params, "{}") 15 | 16 | class LogoutRequestRegistration: 17 | func write(buffer: ByteBuffer, packet: _LogoutRequest): 18 | if (packet == null): 19 | buffer.writeInt(0) 20 | return 21 | buffer.writeInt(-1) 22 | pass 23 | 24 | func read(buffer: ByteBuffer) -> _LogoutRequest: 25 | var length = buffer.readInt() 26 | if (length == 0): 27 | return null 28 | var beforeReadIndex = buffer.getReadOffset() 29 | var packet: _LogoutRequest = buffer.newInstance(1002) 30 | 31 | if (length > 0): 32 | buffer.setReadOffset(beforeReadIndex + length) 33 | return packet -------------------------------------------------------------------------------- /protocol/login/LogoutRequest.gd.uid: -------------------------------------------------------------------------------- 1 | uid://dwm07dj28bnjg 2 | -------------------------------------------------------------------------------- /protocol/login/LogoutResponse.gd: -------------------------------------------------------------------------------- 1 | class_name _LogoutResponse 2 | 3 | const ByteBuffer = preload("../ByteBuffer.gd") 4 | 5 | 6 | 7 | 8 | func protocolId() -> int: 9 | return 1003 10 | 11 | func _to_string() -> String: 12 | const jsonTemplate = "{}" 13 | var params = [] 14 | return jsonTemplate.format(params, "{}") 15 | 16 | class LogoutResponseRegistration: 17 | func write(buffer: ByteBuffer, packet: _LogoutResponse): 18 | if (packet == null): 19 | buffer.writeInt(0) 20 | return 21 | buffer.writeInt(-1) 22 | pass 23 | 24 | func read(buffer: ByteBuffer) -> _LogoutResponse: 25 | var length = buffer.readInt() 26 | if (length == 0): 27 | return null 28 | var beforeReadIndex = buffer.getReadOffset() 29 | var packet: _LogoutResponse = buffer.newInstance(1003) 30 | 31 | if (length > 0): 32 | buffer.setReadOffset(beforeReadIndex + length) 33 | return packet -------------------------------------------------------------------------------- /protocol/login/LogoutResponse.gd.uid: -------------------------------------------------------------------------------- 1 | uid://8jj7qdfi6or 2 | -------------------------------------------------------------------------------- /protocol/notice/CurrencyUpdateNotice.gd.uid: -------------------------------------------------------------------------------- 1 | uid://byacw2b7webrw 2 | -------------------------------------------------------------------------------- /protocol/notice/PlayerExpNotice.gd.uid: -------------------------------------------------------------------------------- 1 | uid://bv2qrlfpa662o 2 | -------------------------------------------------------------------------------- /protocol/room/CreateRoomRequest.gd.uid: -------------------------------------------------------------------------------- 1 | uid://yxjvnsv022uc 2 | -------------------------------------------------------------------------------- /protocol/room/CreateRoomResponse.gd.uid: -------------------------------------------------------------------------------- 1 | uid://c3rgpqt6yi7c 2 | -------------------------------------------------------------------------------- /protocol/room/ExitRoomNotice.gd.uid: -------------------------------------------------------------------------------- 1 | uid://bo560ijdh1fgi 2 | -------------------------------------------------------------------------------- /protocol/room/ExitRoomRequest.gd.uid: -------------------------------------------------------------------------------- 1 | uid://du3ot5hsgi228 2 | -------------------------------------------------------------------------------- /protocol/room/ExitRoomResponse.gd: -------------------------------------------------------------------------------- 1 | class_name _ExitRoomResponse 2 | 3 | const ByteBuffer = preload("../ByteBuffer.gd") 4 | 5 | 6 | 7 | 8 | func protocolId() -> int: 9 | return 6009 10 | 11 | func _to_string() -> String: 12 | const jsonTemplate = "{}" 13 | var params = [] 14 | return jsonTemplate.format(params, "{}") 15 | 16 | class ExitRoomResponseRegistration: 17 | func write(buffer: ByteBuffer, packet: _ExitRoomResponse): 18 | if (packet == null): 19 | buffer.writeInt(0) 20 | return 21 | buffer.writeInt(-1) 22 | pass 23 | 24 | func read(buffer: ByteBuffer) -> _ExitRoomResponse: 25 | var length = buffer.readInt() 26 | if (length == 0): 27 | return null 28 | var beforeReadIndex = buffer.getReadOffset() 29 | var packet: _ExitRoomResponse = buffer.newInstance(6009) 30 | 31 | if (length > 0): 32 | buffer.setReadOffset(beforeReadIndex + length) 33 | return packet -------------------------------------------------------------------------------- /protocol/room/ExitRoomResponse.gd.uid: -------------------------------------------------------------------------------- 1 | uid://bhqecxx25aq8e 2 | -------------------------------------------------------------------------------- /protocol/room/JoinRoomNotice.gd.uid: -------------------------------------------------------------------------------- 1 | uid://ctv1pxq0n81sa 2 | -------------------------------------------------------------------------------- /protocol/room/JoinRoomRequest.gd.uid: -------------------------------------------------------------------------------- 1 | uid://ha1v084pj0l4 2 | -------------------------------------------------------------------------------- /protocol/room/JoinRoomResponse.gd.uid: -------------------------------------------------------------------------------- 1 | uid://cn4dr2bk8dwvr 2 | -------------------------------------------------------------------------------- /protocol/room/Room.gd.uid: -------------------------------------------------------------------------------- 1 | uid://d3w6ralr7c1ms 2 | -------------------------------------------------------------------------------- /protocol/room/RoomInfoAnswer.gd.uid: -------------------------------------------------------------------------------- 1 | uid://q0oq6a6c47gs 2 | -------------------------------------------------------------------------------- /protocol/room/RoomInfoAsk.gd.uid: -------------------------------------------------------------------------------- 1 | uid://00u4hmwgk47n 2 | -------------------------------------------------------------------------------- /scene/Background.tscn: -------------------------------------------------------------------------------- 1 | [gd_scene load_steps=4 format=3 uid="uid://bpggn6rfp70y2"] 2 | 3 | [ext_resource type="Texture2D" uid="uid://ollibr005jsd" path="res://image/bg_day.png" id="1_7cebt"] 4 | [ext_resource type="Texture2D" uid="uid://bw4k3kxyen6yg" path="res://image/land.png" id="2_7ae41"] 5 | 6 | [sub_resource type="RectangleShape2D" id="RectangleShape2D_3d2j4"] 7 | size = Vector2(1142, 110) 8 | 9 | [node name="Background" type="Node2D"] 10 | 11 | [node name="Background" type="Sprite2D" parent="."] 12 | position = Vector2(576, 256) 13 | texture = ExtResource("1_7cebt") 14 | 15 | [node name="Land" type="StaticBody2D" parent="."] 16 | position = Vector2(576, 456) 17 | metadata/_edit_lock_ = true 18 | 19 | [node name="CollisionShape2d" type="CollisionShape2D" parent="Land"] 20 | shape = SubResource("RectangleShape2D_3d2j4") 21 | 22 | [node name="Sprite2d" type="Sprite2D" parent="Land"] 23 | texture = ExtResource("2_7ae41") 24 | -------------------------------------------------------------------------------- /script/Bird.gd.uid: -------------------------------------------------------------------------------- 1 | uid://nod2trj6unjm 2 | -------------------------------------------------------------------------------- /script/Common.gd.uid: -------------------------------------------------------------------------------- 1 | uid://88aqphmhh7rf 2 | -------------------------------------------------------------------------------- /script/Game.gd.uid: -------------------------------------------------------------------------------- 1 | uid://dd2bm3m0raskj 2 | -------------------------------------------------------------------------------- /script/Home.gd.uid: -------------------------------------------------------------------------------- 1 | uid://b6cx2hfnkd057 2 | -------------------------------------------------------------------------------- /script/Login.gd.uid: -------------------------------------------------------------------------------- 1 | uid://cs7vdhf5g65s5 2 | -------------------------------------------------------------------------------- /script/Main.gd.uid: -------------------------------------------------------------------------------- 1 | uid://cfpi15m6a1tow 2 | -------------------------------------------------------------------------------- /script/Notify.gd: -------------------------------------------------------------------------------- 1 | extends Node2D 2 | 3 | const StringUtils = preload("res://zfoo/StringUtils.gd") 4 | 5 | var speed: float = 50 6 | var message: String = StringUtils.EMPTY 7 | 8 | @onready var timer: Timer = $Timer 9 | 10 | func _ready(): 11 | timer.timeout.connect(onTimeout) 12 | $Label.text = message 13 | pass 14 | 15 | func _process(delta): 16 | position.y = position.y + speed * delta 17 | pass 18 | 19 | 20 | func onTimeout(): 21 | queue_free() 22 | pass 23 | -------------------------------------------------------------------------------- /script/Notify.gd.uid: -------------------------------------------------------------------------------- 1 | uid://du0lsrh71d3k0 2 | -------------------------------------------------------------------------------- /script/Over.gd: -------------------------------------------------------------------------------- 1 | extends Node2D 2 | 3 | 4 | func _ready(): 5 | $Control/Score.text = String.num_int64(Main.point) 6 | $Control/Menu.connect("pressed", Callable(self, "home")) 7 | $Background/Background.texture = Main.currentBackground 8 | pass 9 | 10 | func home(): 11 | Main.changeScene(Main.SCENE.Home) 12 | pass 13 | -------------------------------------------------------------------------------- /script/Over.gd.uid: -------------------------------------------------------------------------------- 1 | uid://duk4r6026228q 2 | -------------------------------------------------------------------------------- /script/TcpClient.gd.uid: -------------------------------------------------------------------------------- 1 | uid://o8a567qc5pjk 2 | -------------------------------------------------------------------------------- /script/TcpClientThreads.gd.uid: -------------------------------------------------------------------------------- 1 | uid://cbfs1hfi51ra5 2 | -------------------------------------------------------------------------------- /script/WebsocketClient.gd.uid: -------------------------------------------------------------------------------- 1 | uid://d3vebqqtw21ug 2 | -------------------------------------------------------------------------------- /script/effect/EffectAttack.gd: -------------------------------------------------------------------------------- 1 | extends Node2D 2 | 3 | 4 | @onready var animationPlayer: AnimationPlayer = $AnimationPlayer 5 | 6 | func _ready(): 7 | animationPlayer.animation_finished.connect(onAnimationFinished) 8 | animationPlayer.play() 9 | pass 10 | 11 | 12 | func onAnimationFinished(anim_name): 13 | animationPlayer.stop() 14 | queue_free() 15 | pass 16 | -------------------------------------------------------------------------------- /script/effect/EffectAttack.gd.uid: -------------------------------------------------------------------------------- 1 | uid://bb7jyuciq2hbm 2 | -------------------------------------------------------------------------------- /script/effect/EffectFlyBird.gd: -------------------------------------------------------------------------------- 1 | extends Node2D 2 | 3 | 4 | var speed: float = 100 5 | 6 | func _ready(): 7 | $VisibleOnScreenNotifier2D.screen_exited.connect(onScreenExited) 8 | pass 9 | 10 | func _physics_process(delta): 11 | position.x = position.x + speed * delta 12 | pass 13 | 14 | func onScreenExited(): 15 | queue_free() 16 | pass 17 | -------------------------------------------------------------------------------- /script/effect/EffectFlyBird.gd.uid: -------------------------------------------------------------------------------- 1 | uid://cmkedfcv4agxe 2 | -------------------------------------------------------------------------------- /script/effect/EffectHit.gd: -------------------------------------------------------------------------------- 1 | extends Node2D 2 | 3 | @onready var animatedSprite2D: AnimatedSprite2D = $AnimatedSprite2d 4 | 5 | func _ready(): 6 | animatedSprite2D.animation_finished.connect(onAnimationFinished) 7 | animatedSprite2D.play() 8 | pass 9 | 10 | 11 | func onAnimationFinished(): 12 | animatedSprite2D.stop() 13 | queue_free() 14 | pass 15 | -------------------------------------------------------------------------------- /script/effect/EffectHit.gd.uid: -------------------------------------------------------------------------------- 1 | uid://mu1yw3vquto0 2 | -------------------------------------------------------------------------------- /script/effect/EffectHp.gd: -------------------------------------------------------------------------------- 1 | extends Node2D 2 | 3 | signal addHpSignal(node: Node2D, other) 4 | 5 | func _ready(): 6 | $Area2d.connect("body_entered", Callable(self, "onHpEntered")) 7 | $Area2d/AnimatedSprite2d.play() 8 | pass 9 | 10 | func onHpEntered(other_body): 11 | emit_signal("addHpSignal", self, other_body) 12 | pass 13 | -------------------------------------------------------------------------------- /script/effect/EffectHp.gd.uid: -------------------------------------------------------------------------------- 1 | uid://cd0h1fgrkcoke 2 | -------------------------------------------------------------------------------- /script/effect/EffectSpeedUp.gd: -------------------------------------------------------------------------------- 1 | extends Node2D 2 | 3 | signal speedUpSignal(node: Node2D, other) 4 | 5 | func _ready(): 6 | $Area2d.connect("body_entered", Callable(self, "onSpeedUpEntered")) 7 | $Area2d/AnimatedSprite2d.play() 8 | pass 9 | 10 | func onSpeedUpEntered(other_body): 11 | emit_signal("speedUpSignal", self, other_body) 12 | pass 13 | -------------------------------------------------------------------------------- /script/effect/EffectSpeedUp.gd.uid: -------------------------------------------------------------------------------- 1 | uid://ct1co1vs22mgg 2 | -------------------------------------------------------------------------------- /script/enemy/BiliBili.gd: -------------------------------------------------------------------------------- 1 | extends AnimatableBody2D 2 | 3 | 4 | const Common = preload("res://script/Common.gd") 5 | 6 | var speed: float = Common.speedBiliBili() 7 | 8 | func _ready(): 9 | $VisibleOnScreenNotifier2d.screen_exited.connect(onScreenExited) 10 | pass 11 | 12 | func _physics_process(delta): 13 | position.x = position.x - speed * delta 14 | pass 15 | 16 | func onScreenExited(): 17 | queue_free() 18 | pass 19 | -------------------------------------------------------------------------------- /script/enemy/BiliBili.gd.uid: -------------------------------------------------------------------------------- 1 | uid://27cr0d47btc8 2 | -------------------------------------------------------------------------------- /script/enemy/Cloud.gd: -------------------------------------------------------------------------------- 1 | extends AnimatableBody2D 2 | 3 | const Common = preload("res://script/Common.gd") 4 | 5 | var speed: float = Common.speedCloud() 6 | 7 | func _ready(): 8 | $VisibleOnScreenNotifier2d.screen_exited.connect(onScreenExited) 9 | pass 10 | 11 | func _physics_process(delta): 12 | position.x = position.x - speed * delta 13 | pass 14 | 15 | func onScreenExited(): 16 | queue_free() 17 | pass 18 | -------------------------------------------------------------------------------- /script/enemy/Cloud.gd.uid: -------------------------------------------------------------------------------- 1 | uid://dcswbjnbwos45 2 | -------------------------------------------------------------------------------- /script/enemy/Fish.gd: -------------------------------------------------------------------------------- 1 | extends AnimatableBody2D 2 | 3 | const Common = preload("res://script/Common.gd") 4 | 5 | var speed: float = Common.speedFish() 6 | 7 | func _ready(): 8 | $VisibleOnScreenNotifier2d.screen_exited.connect(onScreenExited) 9 | pass 10 | 11 | func _physics_process(delta): 12 | position.x = position.x - speed * delta 13 | pass 14 | 15 | func onScreenExited(): 16 | queue_free() 17 | pass 18 | -------------------------------------------------------------------------------- /script/enemy/Fish.gd.uid: -------------------------------------------------------------------------------- 1 | uid://cqhcvjngy7df0 2 | -------------------------------------------------------------------------------- /script/enemy/Shark.gd: -------------------------------------------------------------------------------- 1 | extends AnimatableBody2D 2 | 3 | const Common = preload("res://script/Common.gd") 4 | 5 | var speed: float = Common.speedShark() 6 | 7 | func _ready(): 8 | $VisibleOnScreenNotifier2d.screen_exited.connect(onScreenExited) 9 | pass 10 | 11 | func _physics_process(delta): 12 | position.x = position.x - speed * delta 13 | pass 14 | 15 | func onScreenExited(): 16 | queue_free() 17 | pass 18 | -------------------------------------------------------------------------------- /script/enemy/Shark.gd.uid: -------------------------------------------------------------------------------- 1 | uid://irl8ity6xsts 2 | -------------------------------------------------------------------------------- /server/README.md: -------------------------------------------------------------------------------- 1 | # bogers 2 | 赌博割韭菜的人 3 | -------------------------------------------------------------------------------- /server/src/main/java/fun/jiucai/bogers/protocol/login/KickPlayerNotice.java: -------------------------------------------------------------------------------- 1 | package fun.jiucai.bogers.protocol.login; 2 | 3 | 4 | import lombok.AllArgsConstructor; 5 | import lombok.Data; 6 | import lombok.NoArgsConstructor; 7 | 8 | @Data 9 | @NoArgsConstructor 10 | @AllArgsConstructor 11 | public class KickPlayerNotice { 12 | 13 | private long sid; 14 | private long uid; 15 | 16 | } 17 | -------------------------------------------------------------------------------- /server/src/main/java/fun/jiucai/bogers/protocol/login/LogoutRequest.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (C) 2020 The zfoo Authors 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except 5 | * in compliance with the License. You may obtain a copy of the License at 6 | * 7 | * http://www.apache.org/licenses/LICENSE-2.0 8 | * 9 | * Unless required by applicable law or agreed to in writing, software distributed under the License is distributed 10 | * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 11 | * See the License for the specific language governing permissions and limitations under the License. 12 | */ 13 | 14 | package fun.jiucai.bogers.protocol.login; 15 | 16 | 17 | /** 18 | * @author jaysunxiao 19 | * @version 1.0 20 | * @since 2019-10-15 17:55 21 | */ 22 | public class LogoutRequest { 23 | 24 | } 25 | -------------------------------------------------------------------------------- /server/src/main/java/fun/jiucai/bogers/protocol/login/LogoutResponse.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (C) 2020 The zfoo Authors 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except 5 | * in compliance with the License. You may obtain a copy of the License at 6 | * 7 | * http://www.apache.org/licenses/LICENSE-2.0 8 | * 9 | * Unless required by applicable law or agreed to in writing, software distributed under the License is distributed 10 | * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 11 | * See the License for the specific language governing permissions and limitations under the License. 12 | */ 13 | 14 | package fun.jiucai.bogers.protocol.login; 15 | 16 | 17 | /** 18 | * @author jaysunxiao 19 | * @version 1.0 20 | * @since 2019-10-15 17:55 21 | */ 22 | public class LogoutResponse { 23 | 24 | } 25 | -------------------------------------------------------------------------------- /server/src/main/java/fun/jiucai/bogers/protocol/room/CreateRoomRequest.java: -------------------------------------------------------------------------------- 1 | package fun.jiucai.bogers.protocol.room; 2 | 3 | import com.zfoo.protocol.anno.Note; 4 | 5 | @Note("匹配玩家的基本信息") 6 | public record CreateRoomRequest ( 7 | String title, 8 | String subTitle, 9 | String description, 10 | @Note("公开或者私密") 11 | boolean visible, 12 | String password, 13 | String icon, 14 | @Note("游戏类型") 15 | int gameId, 16 | @Note("游戏人数") 17 | int maxNums 18 | ) { 19 | } -------------------------------------------------------------------------------- /server/src/main/java/fun/jiucai/bogers/protocol/room/CreateRoomResponse.java: -------------------------------------------------------------------------------- 1 | package fun.jiucai.bogers.protocol.room; 2 | 3 | public record CreateRoomResponse ( 4 | Room room 5 | ) { 6 | } -------------------------------------------------------------------------------- /server/src/main/java/fun/jiucai/bogers/protocol/room/ExitRoomNotice.java: -------------------------------------------------------------------------------- 1 | package fun.jiucai.bogers.protocol.room; 2 | 3 | import com.zfoo.protocol.anno.Note; 4 | import fun.jiucai.bogers.protocol.common.PlayerInfo; 5 | 6 | import java.util.List; 7 | public record ExitRoomNotice ( 8 | Room room, 9 | @Note("匹配到的玩家基本数据") 10 | List matchPlayerInfos 11 | ) { 12 | } -------------------------------------------------------------------------------- /server/src/main/java/fun/jiucai/bogers/protocol/room/ExitRoomRequest.java: -------------------------------------------------------------------------------- 1 | package fun.jiucai.bogers.protocol.room; 2 | 3 | import com.zfoo.protocol.anno.Note; 4 | 5 | @Note("自己主动退出游戏就等于退出房间") 6 | public record ExitRoomRequest ( 7 | @Note("房间id") 8 | long roomId 9 | ) { 10 | } -------------------------------------------------------------------------------- /server/src/main/java/fun/jiucai/bogers/protocol/room/ExitRoomResponse.java: -------------------------------------------------------------------------------- 1 | package fun.jiucai.bogers.protocol.room; 2 | 3 | public record ExitRoomResponse ( 4 | ) { 5 | } -------------------------------------------------------------------------------- /server/src/main/java/fun/jiucai/bogers/protocol/room/JoinRoomNotice.java: -------------------------------------------------------------------------------- 1 | package fun.jiucai.bogers.protocol.room; 2 | 3 | import com.zfoo.protocol.anno.Note; 4 | import fun.jiucai.bogers.protocol.common.PlayerInfo; 5 | 6 | import java.util.List; 7 | @Note("新玩家加入房间会通知其它所有玩家") 8 | public record JoinRoomNotice ( 9 | Room room, 10 | @Note("匹配到的玩家基本数据") 11 | List matchPlayerInfos 12 | ) { 13 | } -------------------------------------------------------------------------------- /server/src/main/java/fun/jiucai/bogers/protocol/room/JoinRoomRequest.java: -------------------------------------------------------------------------------- 1 | package fun.jiucai.bogers.protocol.room; 2 | 3 | public record JoinRoomRequest ( 4 | long roomId 5 | ) { 6 | } -------------------------------------------------------------------------------- /server/src/main/java/fun/jiucai/bogers/protocol/room/JoinRoomResponse.java: -------------------------------------------------------------------------------- 1 | package fun.jiucai.bogers.protocol.room; 2 | 3 | public record JoinRoomResponse ( 4 | Room room 5 | ) { 6 | } -------------------------------------------------------------------------------- /server/src/main/java/fun/jiucai/bogers/protocol/room/RoomInfoAnswer.java: -------------------------------------------------------------------------------- 1 | package fun.jiucai.bogers.protocol.room; 2 | 3 | 4 | public class RoomInfoAnswer { 5 | 6 | private Room room; 7 | private String roomServerAddress; 8 | 9 | public RoomInfoAnswer() { 10 | } 11 | 12 | public RoomInfoAnswer(Room room, String roomServerAddress) { 13 | this.room = room; 14 | this.roomServerAddress = roomServerAddress; 15 | } 16 | 17 | public Room getRoom() { 18 | return room; 19 | } 20 | 21 | public void setRoom(Room room) { 22 | this.room = room; 23 | } 24 | 25 | public String getRoomServerAddress() { 26 | return roomServerAddress; 27 | } 28 | 29 | public void setRoomServerAddress(String roomServerAddress) { 30 | this.roomServerAddress = roomServerAddress; 31 | } 32 | } 33 | -------------------------------------------------------------------------------- /server/src/main/java/fun/jiucai/bogers/protocol/room/RoomInfoAsk.java: -------------------------------------------------------------------------------- 1 | package fun.jiucai.bogers.protocol.room; 2 | 3 | 4 | public class RoomInfoAsk { 5 | 6 | private long roomId; 7 | 8 | public RoomInfoAsk() { 9 | } 10 | 11 | public RoomInfoAsk(long roomId) { 12 | this.roomId = roomId; 13 | } 14 | 15 | public long getRoomId() { 16 | return roomId; 17 | } 18 | 19 | public void setRoomId(long roomId) { 20 | this.roomId = roomId; 21 | } 22 | } 23 | -------------------------------------------------------------------------------- /server/src/main/resources/application-pro.yml: -------------------------------------------------------------------------------- 1 | storage: 2 | id: storageManager 3 | scan: 4 | package: com.zfoo.tank.common.**.resource 5 | resource: 6 | location: classpath:/excel 7 | 8 | orm: 9 | id: mongodbConfig 10 | entity-package: com.zfoo.tank.common.**.entity 11 | host: 12 | database: tank 13 | user: 14 | password: 15 | address: 16 | - 127.0.0.1:27017 17 | caches: 18 | - strategy: default 19 | size: 6000 20 | expire-millisecond: 600000 21 | - strategy: tenThousand 22 | size: 10000 23 | expire-millisecond: 600000 24 | persisters: 25 | - strategy: default 26 | type: time 27 | config: 60000 28 | - strategy: cron30s 29 | type: cron 30 | config: 0/30 * * * * ? 31 | 32 | net: 33 | id: netConfig 34 | protocol-location: protocol.xml 35 | code-languages: 0 36 | fold-protocol: true 37 | -------------------------------------------------------------------------------- /server/src/main/resources/excel/FilterWordResource.xlsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zfoo-project/godot-bird/449520e8d4e611345aad3fb59559da273c85aa35/server/src/main/resources/excel/FilterWordResource.xlsx -------------------------------------------------------------------------------- /server/src/main/resources/excel/I18n.xlsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zfoo-project/godot-bird/449520e8d4e611345aad3fb59559da273c85aa35/server/src/main/resources/excel/I18n.xlsx -------------------------------------------------------------------------------- /server/src/main/resources/excel/PlayerExpResource.xlsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zfoo-project/godot-bird/449520e8d4e611345aad3fb59559da273c85aa35/server/src/main/resources/excel/PlayerExpResource.xlsx -------------------------------------------------------------------------------- /server/src/main/resources/excel/PropertyResource.xlsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zfoo-project/godot-bird/449520e8d4e611345aad3fb59559da273c85aa35/server/src/main/resources/excel/PropertyResource.xlsx -------------------------------------------------------------------------------- /server/src/test/java/fun/jiucai/bogers/HelloTest.java: -------------------------------------------------------------------------------- 1 | package fun.jiucai.bogers; 2 | 3 | import org.junit.Ignore; 4 | import org.junit.Test; 5 | 6 | @Ignore 7 | public class HelloTest { 8 | 9 | @Test 10 | public void test() { 11 | 12 | 13 | } 14 | 15 | } 16 | -------------------------------------------------------------------------------- /server/src/test/resources/excel-godot/GodotCommonResource.xlsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zfoo-project/godot-bird/449520e8d4e611345aad3fb59559da273c85aa35/server/src/test/resources/excel-godot/GodotCommonResource.xlsx -------------------------------------------------------------------------------- /server/src/test/resources/excel-godot/GodotObjectResource.xlsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zfoo-project/godot-bird/449520e8d4e611345aad3fb59559da273c85aa35/server/src/test/resources/excel-godot/GodotObjectResource.xlsx -------------------------------------------------------------------------------- /server/src/test/resources/logback-test.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | ${PATTERN_CONSOLE} 10 | UTF-8 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | -------------------------------------------------------------------------------- /storage/ByteBuffer.gd.uid: -------------------------------------------------------------------------------- 1 | uid://dtkn824v1gy4l 2 | -------------------------------------------------------------------------------- /storage/GodotCommonResource.gd.uid: -------------------------------------------------------------------------------- 1 | uid://dxaa61eo5q1tt 2 | -------------------------------------------------------------------------------- /storage/GodotObjectResource.gd.uid: -------------------------------------------------------------------------------- 1 | uid://c3pvwvc7ea3wo 2 | -------------------------------------------------------------------------------- /storage/ProtocolManager.gd.uid: -------------------------------------------------------------------------------- 1 | uid://bynj2g84qomtn 2 | -------------------------------------------------------------------------------- /storage/ResourceStorage.gd.uid: -------------------------------------------------------------------------------- 1 | uid://bce8lgkykcfw 2 | -------------------------------------------------------------------------------- /test/Demo1.tscn: -------------------------------------------------------------------------------- 1 | [gd_scene load_steps=3 format=3 uid="uid://cbi8uvck5yguc"] 2 | 3 | [ext_resource type="PackedScene" uid="uid://d34k8bhduppp8" path="res://scene/Bird.tscn" id="1_04pan"] 4 | [ext_resource type="PackedScene" uid="uid://x2j8ifdnka4d" path="res://scene/Pipe.tscn" id="2_erj82"] 5 | 6 | [node name="Demo1" type="Node2D"] 7 | 8 | [node name="Bird" parent="." instance=ExtResource("1_04pan")] 9 | position = Vector2(45, 290) 10 | 11 | [node name="PipeUp" parent="." instance=ExtResource("2_erj82")] 12 | position = Vector2(267, 389) 13 | 14 | [node name="PipeUp2" parent="." instance=ExtResource("2_erj82")] 15 | position = Vector2(452, 266) 16 | 17 | [node name="PipeUp3" parent="." instance=ExtResource("2_erj82")] 18 | position = Vector2(639, 395) 19 | -------------------------------------------------------------------------------- /test/Demo13.tscn: -------------------------------------------------------------------------------- 1 | [gd_scene load_steps=5 format=3 uid="uid://dsepw6t0hvnmo"] 2 | 3 | [ext_resource type="Texture2D" uid="uid://bi1w13qjlffi6" path="res://image/water/water.png" id="1_h0ctn"] 4 | [ext_resource type="Shader" uid="uid://485bcpi3i411" path="res://test/script/Demo13.gdshader" id="2_tg3jd"] 5 | [ext_resource type="Texture2D" uid="uid://bt00wp2ec074e" path="res://icon.svg" id="3_5l2xq"] 6 | 7 | [sub_resource type="ShaderMaterial" id="ShaderMaterial_bwi8r"] 8 | shader = ExtResource("2_tg3jd") 9 | 10 | [node name="Demo13" type="Node2D"] 11 | 12 | [node name="Water" type="Sprite2D" parent="."] 13 | position = Vector2(487, 256) 14 | scale = Vector2(0.465045, 0.523327) 15 | texture = ExtResource("1_h0ctn") 16 | 17 | [node name="Icon" type="Sprite2D" parent="."] 18 | material = SubResource("ShaderMaterial_bwi8r") 19 | position = Vector2(704, 186) 20 | texture = ExtResource("3_5l2xq") 21 | -------------------------------------------------------------------------------- /test/Demo4.tscn: -------------------------------------------------------------------------------- 1 | [gd_scene load_steps=2 format=3 uid="uid://crilhgv8jts8k"] 2 | 3 | [ext_resource type="Script" uid="uid://d13m4kxspkhpx" path="res://test/script/Demo4.gd" id="1_fftc2"] 4 | 5 | [node name="Demo4" type="Node2D"] 6 | script = ExtResource("1_fftc2") 7 | -------------------------------------------------------------------------------- /test/Demo5.tscn: -------------------------------------------------------------------------------- 1 | [gd_scene load_steps=2 format=3 uid="uid://drlkrikcqxcnj"] 2 | 3 | [ext_resource type="Script" uid="uid://ddd5wajjmdt4r" path="res://test/script/Demo5.gd" id="1_orbmh"] 4 | 5 | [node name="Demo5" type="Node2D"] 6 | script = ExtResource("1_orbmh") 7 | 8 | [node name="Timer" type="Timer" parent="."] 9 | autostart = true 10 | 11 | [connection signal="timeout" from="Timer" to="." method="_on_timer_timeout"] 12 | -------------------------------------------------------------------------------- /test/Demo6.tscn: -------------------------------------------------------------------------------- 1 | [gd_scene load_steps=2 format=3 uid="uid://b4ws75118aefg"] 2 | 3 | [ext_resource type="Script" uid="uid://dcsesu6hnki80" path="res://test/script/Demo6.gd" id="1_7oxp8"] 4 | 5 | [node name="Demo6" type="Node2D"] 6 | script = ExtResource("1_7oxp8") 7 | 8 | [node name="Timer" type="Timer" parent="."] 9 | one_shot = true 10 | autostart = true 11 | 12 | [connection signal="timeout" from="Timer" to="." method="_on_timer_timeout"] 13 | -------------------------------------------------------------------------------- /test/Demo7-RayCast2D.tscn: -------------------------------------------------------------------------------- 1 | [gd_scene load_steps=4 format=3 uid="uid://dgkklcqgkjjaa"] 2 | 3 | [ext_resource type="Texture2D" uid="uid://bt00wp2ec074e" path="res://icon.svg" id="1_5xlbh"] 4 | [ext_resource type="PackedScene" uid="uid://x2j8ifdnka4d" path="res://scene/Pipe.tscn" id="2_ht7wp"] 5 | [ext_resource type="Script" uid="uid://be46rmru1ooe4" path="res://test/script/Demo7-RayCast2D.gd" id="2_v855y"] 6 | 7 | [node name="Demo7-RayCast2D" type="Node2D"] 8 | 9 | [node name="Player" type="Sprite2D" parent="."] 10 | position = Vector2(130, 138) 11 | texture = ExtResource("1_5xlbh") 12 | script = ExtResource("2_v855y") 13 | 14 | [node name="RayCast2D" type="RayCast2D" parent="Player"] 15 | target_position = Vector2(153, -1) 16 | 17 | [node name="Pipe" parent="." instance=ExtResource("2_ht7wp")] 18 | position = Vector2(735, 299) 19 | -------------------------------------------------------------------------------- /test/Demo8-PhysicsServer.tscn: -------------------------------------------------------------------------------- 1 | [gd_scene load_steps=4 format=3 uid="uid://dmm7j5vjc147x"] 2 | 3 | [ext_resource type="Texture2D" uid="uid://bt00wp2ec074e" path="res://icon.svg" id="1_we14u"] 4 | [ext_resource type="Script" uid="uid://juwha8cqi42v" path="res://test/script/Demo8.gd" id="2_ps2ho"] 5 | [ext_resource type="PackedScene" uid="uid://x2j8ifdnka4d" path="res://scene/Pipe.tscn" id="3_7stfc"] 6 | 7 | [node name="Demo8" type="Node2D"] 8 | 9 | [node name="Player" type="Sprite2D" parent="."] 10 | position = Vector2(130, 138) 11 | scale = Vector2(0.1, 0.1) 12 | texture = ExtResource("1_we14u") 13 | script = ExtResource("2_ps2ho") 14 | 15 | [node name="Pipe1" parent="." instance=ExtResource("3_7stfc")] 16 | position = Vector2(735, 299) 17 | 18 | [node name="Pipe2" parent="." instance=ExtResource("3_7stfc")] 19 | position = Vector2(972, 300) 20 | -------------------------------------------------------------------------------- /test/Test.gd: -------------------------------------------------------------------------------- 1 | extends Node2D 2 | 3 | const TimeUtils = preload("res://zfoo/TimeUtils.gd") 4 | const GodotCommonResource = preload("res://storage/GodotCommonResource.gd") 5 | 6 | func _ready(): 7 | print("aaaaaaaaaaaaaaaaaaaaaaaaa") 8 | print(TimeUtils.currentTimeMillis()) 9 | print(Time.get_datetime_string_from_system()) 10 | print(TimeUtils.timeToString(TimeUtils.currentTimeMillis())) 11 | 12 | var a = GodotCommonResource.new() 13 | print(a.get_script().get_global_name()) 14 | pass 15 | -------------------------------------------------------------------------------- /test/Test.gd.uid: -------------------------------------------------------------------------------- 1 | uid://l5xoybvxoovk 2 | -------------------------------------------------------------------------------- /test/Test.tscn: -------------------------------------------------------------------------------- 1 | [gd_scene load_steps=2 format=3 uid="uid://cm01tr1e01evo"] 2 | 3 | [ext_resource type="Script" uid="uid://l5xoybvxoovk" path="res://test/Test.gd" id="1_14bxr"] 4 | 5 | [node name="Test" type="Node2D"] 6 | script = ExtResource("1_14bxr") 7 | -------------------------------------------------------------------------------- /test/await/AwaitTest.gd: -------------------------------------------------------------------------------- 1 | extends Node2D 2 | 3 | var count = 0 4 | signal HelloSignal(a: int, b: String) 5 | 6 | func _ready(): 7 | $StartAwait.connect("pressed", Callable(self, "startAwait")) 8 | $EmitSignal.connect("pressed", Callable(self, "emitSignal")) 9 | pass 10 | 11 | 12 | func startAwait(): 13 | print("*******************************************") 14 | var reslt = await wait_confirmation() 15 | print("-------------------------------------------") 16 | print(reslt) 17 | pass 18 | 19 | 20 | func wait_confirmation(): 21 | print("await ", count) 22 | var helloSginal = await self.HelloSignal 23 | print("User confirmed ", helloSginal) 24 | return helloSginal[0] 25 | 26 | 27 | func emitSignal(): 28 | count = count + 1 29 | print("emit signal ", count) 30 | self.emit_signal("HelloSignal", count, "Hello World") 31 | pass 32 | -------------------------------------------------------------------------------- /test/await/AwaitTest.gd.uid: -------------------------------------------------------------------------------- 1 | uid://df2xd250vwlaa 2 | -------------------------------------------------------------------------------- /test/await/AwaitTest.tscn: -------------------------------------------------------------------------------- 1 | [gd_scene load_steps=2 format=3 uid="uid://b8hkjyfbxhjya"] 2 | 3 | [ext_resource type="Script" uid="uid://df2xd250vwlaa" path="res://test/await/AwaitTest.gd" id="1_ivjex"] 4 | 5 | [node name="AwaitTest" type="Node2D"] 6 | script = ExtResource("1_ivjex") 7 | 8 | [node name="StartAwait" type="Button" parent="."] 9 | offset_left = 303.0 10 | offset_top = 153.0 11 | offset_right = 443.0 12 | offset_bottom = 210.0 13 | text = "start await" 14 | 15 | [node name="EmitSignal" type="Button" parent="."] 16 | offset_left = 537.0 17 | offset_top = 152.0 18 | offset_right = 678.0 19 | offset_bottom = 207.0 20 | text = "emit signal" 21 | -------------------------------------------------------------------------------- /test/script/Demo12-navgation-astar.gd.uid: -------------------------------------------------------------------------------- 1 | uid://dxeu378o5hwfg 2 | -------------------------------------------------------------------------------- /test/script/Demo12.gd.uid: -------------------------------------------------------------------------------- 1 | uid://csjd8him3evqh 2 | -------------------------------------------------------------------------------- /test/script/Demo13.gdshader: -------------------------------------------------------------------------------- 1 | shader_type canvas_item; 2 | 3 | void fragment() { 4 | // Place fragment code here. 5 | } 6 | 7 | void vertex() { 8 | VERTEX = VERTEX + 10.0; 9 | } -------------------------------------------------------------------------------- /test/script/Demo13.gdshader.uid: -------------------------------------------------------------------------------- 1 | uid://485bcpi3i411 2 | -------------------------------------------------------------------------------- /test/script/Demo4.gd.uid: -------------------------------------------------------------------------------- 1 | uid://d13m4kxspkhpx 2 | -------------------------------------------------------------------------------- /test/script/Demo5.gd: -------------------------------------------------------------------------------- 1 | extends Node2D 2 | 3 | 4 | const TcpClient = preload("res://script/TcpClient.gd") 5 | const ScoreRankRequest =preload("res://protocol/protocol/cache/ScoreRankRequest.gd") 6 | 7 | var tcpClient = TcpClient.new("127.0.0.1:16000") 8 | 9 | func _ready(): 10 | tcpClient.start() 11 | pass 12 | 13 | 14 | # Called every frame. 'delta' is the elapsed time since the previous frame. 15 | func _process(delta): 16 | var packet = tcpClient.popReceivePacket() 17 | if (packet != null): 18 | print("receive packet ..........................") 19 | print(packet) 20 | pass 21 | 22 | 23 | func _on_timer_timeout(): 24 | tcpClient.send(ScoreRankRequest.new()) 25 | pass 26 | -------------------------------------------------------------------------------- /test/script/Demo5.gd.uid: -------------------------------------------------------------------------------- 1 | uid://ddd5wajjmdt4r 2 | -------------------------------------------------------------------------------- /test/script/Demo6.gd: -------------------------------------------------------------------------------- 1 | extends Node2D 2 | 3 | 4 | const WebsocketClient = preload("res://script/WebsocketClient.gd") 5 | const ScoreRankRequest =preload("res://protocol/protocol/cache/ScoreRankRequest.gd") 6 | 7 | var websocketClient = WebsocketClient.new("ws://127.0.0.1:18000/websocket") 8 | 9 | func _ready(): 10 | websocketClient.start() 11 | pass 12 | 13 | 14 | # Called every frame. 'delta' is the elapsed time since the previous frame. 15 | func _process(delta): 16 | var packet = websocketClient.popReceivePacket() 17 | if (packet != null): 18 | print("receive packet ..........................") 19 | print(packet) 20 | pass 21 | 22 | 23 | func _on_timer_timeout(): 24 | websocketClient.send(ScoreRankRequest.new()) 25 | pass 26 | -------------------------------------------------------------------------------- /test/script/Demo6.gd.uid: -------------------------------------------------------------------------------- 1 | uid://dcsesu6hnki80 2 | -------------------------------------------------------------------------------- /test/script/Demo7-RayCast2D.gd: -------------------------------------------------------------------------------- 1 | extends Sprite2D 2 | 3 | 4 | # How fast the player will move (pixels/sec). 5 | var speed = 400 6 | 7 | func _process(delta): 8 | var velocity = Vector2.ZERO # The player's movement vector. 9 | if Input.is_action_pressed("ui_right"): 10 | velocity.x += 1 11 | if Input.is_action_pressed("ui_left"): 12 | velocity.x -= 1 13 | if Input.is_action_pressed("ui_down"): 14 | velocity.y += 1 15 | if Input.is_action_pressed("ui_up"): 16 | velocity.y -= 1 17 | 18 | if velocity.length() <= 0: 19 | return 20 | 21 | velocity = velocity.normalized() * speed 22 | position += velocity * delta 23 | 24 | func _physics_process(delta): 25 | var rayCast2D: RayCast2D = $RayCast2D 26 | if rayCast2D.is_colliding(): 27 | print(rayCast2D.get_collider()) 28 | -------------------------------------------------------------------------------- /test/script/Demo7-RayCast2D.gd.uid: -------------------------------------------------------------------------------- 1 | uid://be46rmru1ooe4 2 | -------------------------------------------------------------------------------- /test/script/Demo8.gd.uid: -------------------------------------------------------------------------------- 1 | uid://juwha8cqi42v 2 | -------------------------------------------------------------------------------- /test/thread/ThreadTest.gd: -------------------------------------------------------------------------------- 1 | extends Node2D 2 | 3 | 4 | var count = 0 5 | var mutex: Mutex = Mutex.new() 6 | 7 | func _ready(): 8 | for i in range(100): 9 | var thread = Thread.new() 10 | thread.start(Callable(self, "tick")) 11 | pass 12 | 13 | 14 | func tick(): 15 | for i in range(1000000): 16 | mutex.lock() 17 | count = count + 1 18 | mutex.unlock() 19 | pass 20 | 21 | func _process(delta): 22 | if count % 100 == 0: 23 | print(count) 24 | pass 25 | -------------------------------------------------------------------------------- /test/thread/ThreadTest.gd.uid: -------------------------------------------------------------------------------- 1 | uid://repev820bprp 2 | -------------------------------------------------------------------------------- /test/thread/ThreadTest.tscn: -------------------------------------------------------------------------------- 1 | [gd_scene load_steps=2 format=3 uid="uid://bo0b3vmgqepvy"] 2 | 3 | [ext_resource type="Script" uid="uid://repev820bprp" path="res://test/thread/ThreadTest.gd" id="1_a3ouv"] 4 | 5 | [node name="ThreadTest" type="Node2D"] 6 | script = ExtResource("1_a3ouv") 7 | -------------------------------------------------------------------------------- /tools/rcedit-x64.exe: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zfoo-project/godot-bird/449520e8d4e611345aad3fb59559da273c85aa35/tools/rcedit-x64.exe -------------------------------------------------------------------------------- /zfoo/ArrayUtils.gd: -------------------------------------------------------------------------------- 1 | extends Object 2 | 3 | 4 | static func isEmpty(array: Array) -> bool: 5 | return array == null or array.size() == 0 6 | -------------------------------------------------------------------------------- /zfoo/ArrayUtils.gd.uid: -------------------------------------------------------------------------------- 1 | uid://dttag2j7kyglq 2 | -------------------------------------------------------------------------------- /zfoo/CollectionUtils.gd: -------------------------------------------------------------------------------- 1 | extends Object 2 | 3 | 4 | static func isEmpty(dictionary: Dictionary) -> bool: 5 | return dictionary == null or dictionary.size() == 0 6 | -------------------------------------------------------------------------------- /zfoo/CollectionUtils.gd.uid: -------------------------------------------------------------------------------- 1 | uid://cng2oab1pt2dx 2 | -------------------------------------------------------------------------------- /zfoo/FileUtils.gd.uid: -------------------------------------------------------------------------------- 1 | uid://cshxbd1eaoc45 2 | -------------------------------------------------------------------------------- /zfoo/NodeUtils.gd.uid: -------------------------------------------------------------------------------- 1 | uid://bpjg3fiknsiu1 2 | -------------------------------------------------------------------------------- /zfoo/RandomUtils.gd.uid: -------------------------------------------------------------------------------- 1 | uid://bx8n2qrqvvnfu 2 | -------------------------------------------------------------------------------- /zfoo/StringUtils.gd: -------------------------------------------------------------------------------- 1 | extends Object 2 | 3 | const ArrayUtils = preload("res://zfoo/ArrayUtils.gd") 4 | 5 | const EMPTY: String = "" 6 | const EMPTY_JSON: String = "{}" 7 | 8 | # Checks if a String is empty ("") or null 9 | static func isEmpty(s: String) -> bool: 10 | return s == null or s.length() == 0 11 | 12 | static func isNotEmpty(s: String) -> bool: 13 | return !isEmpty(s) 14 | 15 | # 检查是否为空的字符串 16 | static func isBlank(s: String) -> bool: 17 | if isEmpty(s): 18 | return true 19 | 20 | if isEmpty(s.strip_edges(true, true)): 21 | return true 22 | 23 | return false 24 | 25 | # 格式化字符串 26 | static func format(template: String, args: Array) -> String: 27 | if isEmpty(template) or ArrayUtils.isEmpty(args): 28 | return template 29 | 30 | return template.format(args, EMPTY_JSON) 31 | 32 | -------------------------------------------------------------------------------- /zfoo/StringUtils.gd.uid: -------------------------------------------------------------------------------- 1 | uid://cwavg6au2ijpt 2 | -------------------------------------------------------------------------------- /zfoo/TimeUtils.gd.uid: -------------------------------------------------------------------------------- 1 | uid://crk5y12sckgic 2 | -------------------------------------------------------------------------------- /zfoo/scheduler/SchedulerBus.gd: -------------------------------------------------------------------------------- 1 | extends Object 2 | 3 | 4 | const TimeUtils = preload("res://zfoo/TimeUtils.gd") 5 | const ArrayUtils = preload("res://zfoo/ArrayUtils.gd") 6 | const CollectionUtils = preload("res://zfoo/CollectionUtils.gd") 7 | 8 | 9 | const root: Array[Window] = [null] 10 | 11 | 12 | static func init(rootNode: Window) -> void: 13 | root.clear() 14 | root.append(rootNode) 15 | pass 16 | 17 | 18 | # 固定延迟执行的任务,delay为秒 19 | static func schedule(callable: Callable, delaySeconds: float) -> void: 20 | var root: Window = root.front() 21 | root.create_tween().tween_callback(callable).set_delay(delaySeconds) 22 | pass 23 | -------------------------------------------------------------------------------- /zfoo/scheduler/SchedulerBus.gd.uid: -------------------------------------------------------------------------------- 1 | uid://bu40tpiipoqcp 2 | --------------------------------------------------------------------------------