├── .gitattributes
├── .gitignore
├── Assets
├── Plugins.meta
├── Plugins
│ ├── LitJson.dll
│ └── LitJson.dll.meta
├── Repo.meta
├── Repo
│ ├── Audio.meta
│ ├── Character.meta
│ ├── Enemy.meta
│ ├── Environment.meta
│ ├── Environment
│ │ ├── Skyboxes.meta
│ │ ├── Skyboxes
│ │ │ ├── Sunny Skybox.mat
│ │ │ ├── Sunny Skybox.mat.meta
│ │ │ ├── Sunny.meta
│ │ │ └── Sunny
│ │ │ │ ├── Sunny1_back.tif
│ │ │ │ ├── Sunny1_back.tif.meta
│ │ │ │ ├── Sunny1_down.tif
│ │ │ │ ├── Sunny1_down.tif.meta
│ │ │ │ ├── Sunny1_front.tif
│ │ │ │ ├── Sunny1_front.tif.meta
│ │ │ │ ├── Sunny1_left.tif
│ │ │ │ ├── Sunny1_left.tif.meta
│ │ │ │ ├── Sunny1_right.tif
│ │ │ │ ├── Sunny1_right.tif.meta
│ │ │ │ ├── Sunny1_up.tif
│ │ │ │ └── Sunny1_up.tif.meta
│ │ ├── StartScene.meta
│ │ └── StartScene
│ │ │ ├── DarkTile.png
│ │ │ ├── DarkTile.png.meta
│ │ │ ├── Plane.mat
│ │ │ └── Plane.mat.meta
│ ├── IncludeCG.meta
│ ├── Model.meta
│ ├── Particle.meta
│ ├── Player.meta
│ ├── Player
│ │ ├── PlayerMain.meta
│ │ └── PlayerMain
│ │ │ ├── Animation.meta
│ │ │ ├── Animation
│ │ │ ├── Block.meta
│ │ │ └── Block
│ │ │ │ ├── Move.meta
│ │ │ │ └── Move
│ │ │ │ ├── BlockPeaceWalk.anim
│ │ │ │ ├── BlockPeaceWalk.anim.meta
│ │ │ │ ├── YukaIdle.anim
│ │ │ │ └── YukaIdle.anim.meta
│ │ │ ├── Block2.meta
│ │ │ ├── Block2
│ │ │ ├── Block2.fbx
│ │ │ ├── Block2.fbx.meta
│ │ │ ├── Materials.meta
│ │ │ ├── Materials
│ │ │ │ ├── Body.mat
│ │ │ │ ├── Body.mat.meta
│ │ │ │ ├── Eye.mat
│ │ │ │ ├── Eye.mat.meta
│ │ │ │ ├── Eye2.mat
│ │ │ │ ├── Eye2.mat.meta
│ │ │ │ ├── EyeLine.mat
│ │ │ │ ├── EyeLine.mat.meta
│ │ │ │ ├── Face.mat
│ │ │ │ ├── Face.mat.meta
│ │ │ │ ├── Hair.mat
│ │ │ │ ├── Hair.mat.meta
│ │ │ │ ├── Hand.mat
│ │ │ │ ├── Hand.mat.meta
│ │ │ │ ├── MianJu.mat
│ │ │ │ ├── MianJu.mat.meta
│ │ │ │ ├── WeiJin.mat
│ │ │ │ └── WeiJin.mat.meta
│ │ │ ├── Skin_face.png
│ │ │ ├── Skin_face.png.meta
│ │ │ ├── body.meta
│ │ │ ├── body
│ │ │ │ ├── DefaultMaterial_Base_Color.png
│ │ │ │ ├── DefaultMaterial_Base_Color.png.meta
│ │ │ │ ├── DefaultMaterial_Height.png
│ │ │ │ ├── DefaultMaterial_Height.png.meta
│ │ │ │ ├── DefaultMaterial_Mixed_AO.png
│ │ │ │ ├── DefaultMaterial_Mixed_AO.png.meta
│ │ │ │ ├── DefaultMaterial_Normal_DirectX.png
│ │ │ │ └── DefaultMaterial_Normal_DirectX.png.meta
│ │ │ ├── eyeL_p.tga
│ │ │ ├── eyeL_p.tga.meta
│ │ │ ├── eyeline2.png
│ │ │ ├── eyeline2.png.meta
│ │ │ ├── hair_black.png
│ │ │ ├── hair_black.png.meta
│ │ │ ├── timg (4).jpg
│ │ │ ├── timg (4).jpg.meta
│ │ │ ├── weijin.tga
│ │ │ └── weijin.tga.meta
│ │ │ ├── MaxFriction.physicMaterial
│ │ │ ├── MaxFriction.physicMaterial.meta
│ │ │ ├── PlayerMain.controller
│ │ │ ├── PlayerMain.controller.meta
│ │ │ ├── Textures.meta
│ │ │ ├── Textures
│ │ │ ├── FO_CLOTH1.tga
│ │ │ ├── FO_CLOTH1.tga.meta
│ │ │ ├── FO_RIM1.tga
│ │ │ ├── FO_RIM1.tga.meta
│ │ │ ├── FO_SKIN1.tga
│ │ │ └── FO_SKIN1.tga.meta
│ │ │ ├── ZeroFriction.physicMaterial
│ │ │ └── ZeroFriction.physicMaterial.meta
│ ├── Prefab.meta
│ ├── Prefab
│ │ ├── Environment.prefab
│ │ ├── Environment.prefab.meta
│ │ ├── Game Loop.prefab
│ │ ├── Game Loop.prefab.meta
│ │ ├── LevelCamera.prefab
│ │ ├── LevelCamera.prefab.meta
│ │ ├── Light.prefab
│ │ └── Light.prefab.meta
│ └── UI.meta
├── Resources.meta
├── Resources
│ ├── Canvas.prefab
│ ├── Canvas.prefab.meta
│ ├── Enemys.meta
│ ├── Fonts.meta
│ ├── Fonts
│ │ ├── ARJULIAN.ttf
│ │ ├── ARJULIAN.ttf.meta
│ │ ├── Arial - Black.ttf
│ │ ├── Arial - Black.ttf.meta
│ │ ├── Arial - Bold.ttf
│ │ ├── Arial - Bold.ttf.meta
│ │ ├── Arial - Regular.ttf
│ │ ├── Arial - Regular.ttf.meta
│ │ ├── Consolas - Bold.ttf
│ │ ├── Consolas - Bold.ttf.meta
│ │ ├── Consolas.ttf
│ │ ├── Consolas.ttf.meta
│ │ ├── FZYH.ttf
│ │ ├── FZYH.ttf.meta
│ │ ├── MicrosoftYaHeiMini.ttf
│ │ ├── MicrosoftYaHeiMini.ttf.meta
│ │ ├── constan.ttf
│ │ └── constan.ttf.meta
│ ├── Icons.meta
│ ├── Musics.meta
│ ├── Musics
│ │ ├── WhiteLie.mp3
│ │ └── WhiteLie.mp3.meta
│ ├── Particles.meta
│ ├── Players.meta
│ ├── Players
│ │ ├── Player.prefab
│ │ └── Player.prefab.meta
│ ├── UI.meta
│ └── UI
│ │ ├── FadeIn.prefab
│ │ ├── FadeIn.prefab.meta
│ │ ├── FadeInWhite.prefab
│ │ ├── FadeInWhite.prefab.meta
│ │ ├── FadeOut.prefab
│ │ ├── FadeOut.prefab.meta
│ │ ├── FadeOutWhite.prefab
│ │ └── FadeOutWhite.prefab.meta
├── Save.xml
├── Save.xml.meta
├── Scenes.meta
├── Scenes
│ ├── Start.unity
│ └── Start.unity.meta
├── Scripts.meta
├── Scripts
│ ├── Editor.meta
│ ├── ProjectScript.meta
│ ├── ProjectScript
│ │ ├── Enemy.meta
│ │ ├── Player.meta
│ │ ├── Player
│ │ │ ├── PlayerMain.cs
│ │ │ ├── PlayerMain.cs.meta
│ │ │ ├── PlayerMainMono.cs
│ │ │ └── PlayerMainMono.cs.meta
│ │ ├── Scene.meta
│ │ ├── SceneState.meta
│ │ ├── UI.meta
│ │ └── UI
│ │ │ ├── UIFadeIn.cs
│ │ │ ├── UIFadeIn.cs.meta
│ │ │ ├── UIFadeOut.cs
│ │ │ └── UIFadeOut.cs.meta
│ ├── SFramework.meta
│ └── SFramework
│ │ ├── Character.meta
│ │ ├── Character
│ │ ├── EnemyHurtAttr.cs
│ │ ├── EnemyHurtAttr.cs.meta
│ │ ├── EnemyMediator.cs
│ │ ├── EnemyMediator.cs.meta
│ │ ├── EnemyMgr.cs
│ │ ├── EnemyMgr.cs.meta
│ │ ├── ICharacter.cs
│ │ ├── ICharacter.cs.meta
│ │ ├── ICharacterMono.cs
│ │ ├── ICharacterMono.cs.meta
│ │ ├── IEnemy.cs
│ │ ├── IEnemy.cs.meta
│ │ ├── IEnemyMono.cs
│ │ ├── IEnemyMono.cs.meta
│ │ ├── INPC.cs
│ │ ├── INPC.cs.meta
│ │ ├── IPlayer.cs
│ │ ├── IPlayer.cs.meta
│ │ ├── IPlayerMono.cs
│ │ ├── IPlayerMono.cs.meta
│ │ ├── PlayerHurtAttr.cs
│ │ ├── PlayerHurtAttr.cs.meta
│ │ ├── PlayerMediator.cs
│ │ ├── PlayerMediator.cs.meta
│ │ ├── PlayerMgr.cs
│ │ └── PlayerMgr.cs.meta
│ │ ├── GameLoop.cs
│ │ ├── GameLoop.cs.meta
│ │ ├── GameMainProgram.cs
│ │ ├── GameMainProgram.cs.meta
│ │ ├── GameMgr.meta
│ │ ├── GameMgr
│ │ ├── AudioMgr.cs
│ │ ├── AudioMgr.cs.meta
│ │ ├── CoroutineMgr.cs
│ │ ├── CoroutineMgr.cs.meta
│ │ ├── CourseMgr.cs
│ │ ├── CourseMgr.cs.meta
│ │ ├── DataBaseMgr.cs
│ │ ├── DataBaseMgr.cs.meta
│ │ ├── DialogMgr.cs
│ │ ├── DialogMgr.cs.meta
│ │ ├── EventMgr.cs
│ │ ├── EventMgr.cs.meta
│ │ ├── FileMgr.cs
│ │ ├── FileMgr.cs.meta
│ │ ├── GameDataMgr.cs
│ │ ├── GameDataMgr.cs.meta
│ │ ├── IGameMgr.cs
│ │ ├── IGameMgr.cs.meta
│ │ ├── LanguageMgr.cs
│ │ ├── LanguageMgr.cs.meta
│ │ ├── NpcMgr.cs
│ │ ├── NpcMgr.cs.meta
│ │ ├── ResourcesMgr.cs
│ │ ├── ResourcesMgr.cs.meta
│ │ ├── SqlMgr.cs
│ │ ├── SqlMgr.cs.meta
│ │ ├── ThreadMgr.cs
│ │ └── ThreadMgr.cs.meta
│ │ ├── Item.meta
│ │ ├── Item
│ │ ├── IEquip.cs
│ │ ├── IEquip.cs.meta
│ │ ├── IItem.cs
│ │ ├── IItem.cs.meta
│ │ ├── IProp.cs
│ │ └── IProp.cs.meta
│ │ ├── MonoFunction.meta
│ │ ├── MonoFunction
│ │ ├── AutoCam.cs
│ │ ├── AutoCam.cs.meta
│ │ ├── AutoDisable.cs
│ │ ├── AutoDisable.cs.meta
│ │ ├── CameraCtrl.cs
│ │ ├── CameraCtrl.cs.meta
│ │ ├── ShakeObject.cs
│ │ ├── ShakeObject.cs.meta
│ │ ├── TransparentCam.cs
│ │ └── TransparentCam.cs.meta
│ │ ├── SceneState.meta
│ │ ├── SceneState
│ │ ├── ISceneState.cs
│ │ ├── ISceneState.cs.meta
│ │ ├── SceneStateController.cs
│ │ ├── SceneStateController.cs.meta
│ │ ├── StartScene.cs
│ │ └── StartScene.cs.meta
│ │ ├── SystemDefine.cs
│ │ ├── SystemDefine.cs.meta
│ │ ├── UI.meta
│ │ ├── UI
│ │ ├── Common.cs
│ │ ├── Common.cs.meta
│ │ ├── UIDialog.cs
│ │ ├── UIDialog.cs.meta
│ │ ├── UILoading.cs
│ │ ├── UILoading.cs.meta
│ │ ├── UIManager.cs
│ │ ├── UIManager.cs.meta
│ │ ├── UIMaskMgr.cs
│ │ ├── UIMaskMgr.cs.meta
│ │ ├── ViewBase.cs
│ │ └── ViewBase.cs.meta
│ │ ├── Utility.meta
│ │ ├── Utility
│ │ ├── ExtensionMethods.cs
│ │ ├── ExtensionMethods.cs.meta
│ │ ├── GameData.cs
│ │ ├── GameData.cs.meta
│ │ ├── Loom.cs
│ │ ├── Loom.cs.meta
│ │ ├── Singleton.cs
│ │ ├── Singleton.cs.meta
│ │ ├── SingletonMonoBehaviour.cs
│ │ ├── SingletonMonoBehaviour.cs.meta
│ │ ├── Task.cs
│ │ ├── Task.cs.meta
│ │ ├── UnityHelper.cs
│ │ ├── UnityHelper.cs.meta
│ │ ├── XmlSaver.cs
│ │ └── XmlSaver.cs.meta
│ │ ├── Weapon.meta
│ │ └── Weapon
│ │ ├── IEnemyWeapon.cs
│ │ ├── IEnemyWeapon.cs.meta
│ │ ├── IPlayerWeapon.cs
│ │ ├── IPlayerWeapon.cs.meta
│ │ ├── IWeaponMono.cs
│ │ └── IWeaponMono.cs.meta
├── Setting.json
├── Setting.json.meta
├── StreamingAssets.meta
└── StreamingAssets
│ ├── DataBase.meta
│ ├── DataBase
│ ├── Dialog.json
│ ├── Dialog.json.meta
│ ├── EnemyEquip.json
│ ├── EnemyEquip.json.meta
│ ├── Equip.json
│ ├── Equip.json.meta
│ ├── Language_CN.json
│ ├── Language_CN.json.meta
│ ├── Language_EN.json
│ ├── Language_EN.json.meta
│ ├── Prop.json
│ ├── Prop.json.meta
│ ├── Tasks.json
│ └── Tasks.json.meta
│ ├── Log.meta
│ └── Log
│ ├── Game_Log.txt
│ └── Game_Log.txt.meta
├── Doc
├── 1.框架总体结构.md
├── 2.资源加载子系统.md
├── 3.角色架构.md
├── 4.UI框架.md
├── 5.其他功能系统.md
├── 6.相机控制.md
└── 基于Unity3D的游戏框架设计与实现-论文PPT.pptx
├── LICENSE
├── Logs
└── Packages-Update.log
├── Packages
└── manifest.json
├── ProjectSettings
├── AudioManager.asset
├── ClusterInputManager.asset
├── DynamicsManager.asset
├── EditorBuildSettings.asset
├── EditorSettings.asset
├── GraphicsSettings.asset
├── InputManager.asset
├── NavMeshAreas.asset
├── NetworkManager.asset
├── Physics2DSettings.asset
├── PresetManager.asset
├── ProjectSettings.asset
├── ProjectVersion.txt
├── QualitySettings.asset
├── TagManager.asset
├── TimeManager.asset
├── UnityConnectSettings.asset
└── VFXManager.asset
└── README.md
/.gitattributes:
--------------------------------------------------------------------------------
1 | # Auto detect text files and perform LF normalization
2 | * text=auto
--------------------------------------------------------------------------------
/.gitignore:
--------------------------------------------------------------------------------
1 | /[Ll]ibrary/
2 | /[Tt]emp/
3 | /[Oo]bj/
4 | /[Bb]uild/
5 | /[Bb]uilds/
6 | /Assets/AssetStoreTools*
7 |
8 | # Visual Studio 2015 cache directory
9 | /.vs/
10 |
11 | # Autogenerated VS/MD/Consulo solution and project files
12 | ExportedObj/
13 | .consulo/
14 | *.csproj
15 | *.unityproj
16 | *.sln
17 | *.suo
18 | *.tmp
19 | *.user
20 | *.userprefs
21 | *.pidb
22 | *.booproj
23 | *.svd
24 | *.pdb
25 |
26 | # Unity3D generated meta files
27 | *.pidb.meta
28 |
29 | # Unity3D Generated File On Crash Reports
30 | sysinfo.txt
31 |
32 | # Builds
33 | *.apk
34 | *.unitypackage
35 |
--------------------------------------------------------------------------------
/Assets/Plugins.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 0582814fa407a78419da635e42f9a1cd
3 | folderAsset: yes
4 | DefaultImporter:
5 | externalObjects: {}
6 | userData:
7 | assetBundleName:
8 | assetBundleVariant:
9 |
--------------------------------------------------------------------------------
/Assets/Plugins/LitJson.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sols11/SFramework/2aecb34fd5adcad0c572c821706fc70b91397ff6/Assets/Plugins/LitJson.dll
--------------------------------------------------------------------------------
/Assets/Plugins/LitJson.dll.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 4ae6414c46d6b10469de9ebabc2549cf
3 | timeCreated: 1500631043
4 | licenseType: Pro
5 | PluginImporter:
6 | serializedVersion: 2
7 | iconMap: {}
8 | executionOrder: {}
9 | isPreloaded: 0
10 | isOverridable: 0
11 | platformData:
12 | data:
13 | first:
14 | Any:
15 | second:
16 | enabled: 1
17 | settings: {}
18 | data:
19 | first:
20 | Editor: Editor
21 | second:
22 | enabled: 0
23 | settings:
24 | DefaultValueInitialized: true
25 | data:
26 | first:
27 | Windows Store Apps: WindowsStoreApps
28 | second:
29 | enabled: 0
30 | settings:
31 | CPU: AnyCPU
32 | userData:
33 | assetBundleName:
34 | assetBundleVariant:
35 |
--------------------------------------------------------------------------------
/Assets/Repo.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: efbc8ec9fd9e9804db0f5336bd37185a
3 | folderAsset: yes
4 | DefaultImporter:
5 | externalObjects: {}
6 | userData:
7 | assetBundleName:
8 | assetBundleVariant:
9 |
--------------------------------------------------------------------------------
/Assets/Repo/Audio.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: dcfd2380660ea344cb64318ca7f126c1
3 | folderAsset: yes
4 | DefaultImporter:
5 | externalObjects: {}
6 | userData:
7 | assetBundleName:
8 | assetBundleVariant:
9 |
--------------------------------------------------------------------------------
/Assets/Repo/Character.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 8f1b2de1c338f3a449bbd51e4dc981ca
3 | folderAsset: yes
4 | DefaultImporter:
5 | externalObjects: {}
6 | userData:
7 | assetBundleName:
8 | assetBundleVariant:
9 |
--------------------------------------------------------------------------------
/Assets/Repo/Enemy.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 7fd68206c4e7b5a49b95596b5a10f474
3 | folderAsset: yes
4 | DefaultImporter:
5 | externalObjects: {}
6 | userData:
7 | assetBundleName:
8 | assetBundleVariant:
9 |
--------------------------------------------------------------------------------
/Assets/Repo/Environment.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: f3f8ae6b8deeb2b41b32a33ba316e065
3 | folderAsset: yes
4 | DefaultImporter:
5 | externalObjects: {}
6 | userData:
7 | assetBundleName:
8 | assetBundleVariant:
9 |
--------------------------------------------------------------------------------
/Assets/Repo/Environment/Skyboxes.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 60c2b4dd61ea4074794f4577a0def6a5
3 | folderAsset: yes
4 | DefaultImporter:
5 | externalObjects: {}
6 | userData:
7 | assetBundleName:
8 | assetBundleVariant:
9 |
--------------------------------------------------------------------------------
/Assets/Repo/Environment/Skyboxes/Sunny Skybox.mat:
--------------------------------------------------------------------------------
1 | %YAML 1.1
2 | %TAG !u! tag:unity3d.com,2011:
3 | --- !u!21 &2100000
4 | Material:
5 | serializedVersion: 6
6 | m_ObjectHideFlags: 0
7 | m_PrefabParentObject: {fileID: 0}
8 | m_PrefabInternal: {fileID: 0}
9 | m_Name: Sunny Skybox
10 | m_Shader: {fileID: 104, guid: 0000000000000000f000000000000000, type: 0}
11 | m_ShaderKeywords:
12 | m_LightmapFlags: 4
13 | m_EnableInstancingVariants: 0
14 | m_DoubleSidedGI: 0
15 | m_CustomRenderQueue: -1
16 | stringTagMap: {}
17 | disabledShaderPasses: []
18 | m_SavedProperties:
19 | serializedVersion: 3
20 | m_TexEnvs:
21 | - _BackTex:
22 | m_Texture: {fileID: 2800000, guid: 32ef381921b3f7f479831b042c113762, type: 3}
23 | m_Scale: {x: 1, y: 1}
24 | m_Offset: {x: 0, y: 0}
25 | - _DownTex:
26 | m_Texture: {fileID: 2800000, guid: 352e5f82d7105ad408904c5f552b5fe7, type: 3}
27 | m_Scale: {x: 1, y: 1}
28 | m_Offset: {x: 0, y: 0}
29 | - _FrontTex:
30 | m_Texture: {fileID: 2800000, guid: 2372dd1814cb4ed47a91f8174877623e, type: 3}
31 | m_Scale: {x: 1, y: 1}
32 | m_Offset: {x: 0, y: 0}
33 | - _LeftTex:
34 | m_Texture: {fileID: 2800000, guid: 66ebe4da1ef67e64e8aeccb820e409d6, type: 3}
35 | m_Scale: {x: 1, y: 1}
36 | m_Offset: {x: 0, y: 0}
37 | - _MainTex:
38 | m_Texture: {fileID: 0}
39 | m_Scale: {x: 1, y: 1}
40 | m_Offset: {x: 0, y: 0}
41 | - _RightTex:
42 | m_Texture: {fileID: 2800000, guid: 195c271a9118d224c8562ae67cf47a66, type: 3}
43 | m_Scale: {x: 1, y: 1}
44 | m_Offset: {x: 0, y: 0}
45 | - _UpTex:
46 | m_Texture: {fileID: 2800000, guid: 8a98ef45bc7df804d95fd945abd2c943, type: 3}
47 | m_Scale: {x: 1, y: 1}
48 | m_Offset: {x: 0, y: 0}
49 | m_Floats:
50 | - _Exposure: 1
51 | - _Rotation: 0
52 | m_Colors:
53 | - _Color: {r: 1, g: 1, b: 1, a: 1}
54 | - _Tint: {r: 0.5, g: 0.5, b: 0.5, a: 0.5}
55 | --- !u!1002 &2100001
56 | EditorExtensionImpl:
57 | serializedVersion: 6
58 |
--------------------------------------------------------------------------------
/Assets/Repo/Environment/Skyboxes/Sunny Skybox.mat.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 465bf60108d9a6b4fb86e840691dfb3c
3 | timeCreated: 1552658919
4 | licenseType: Free
5 | NativeFormatImporter:
6 | mainObjectFileID: -1
7 | userData:
8 | assetBundleName:
9 | assetBundleVariant:
10 |
--------------------------------------------------------------------------------
/Assets/Repo/Environment/Skyboxes/Sunny.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 4242eb27b93c99742a98a26b35595fe2
3 | folderAsset: yes
4 | timeCreated: 1552658892
5 | licenseType: Free
6 | DefaultImporter:
7 | userData:
8 | assetBundleName:
9 | assetBundleVariant:
10 |
--------------------------------------------------------------------------------
/Assets/Repo/Environment/Skyboxes/Sunny/Sunny1_back.tif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sols11/SFramework/2aecb34fd5adcad0c572c821706fc70b91397ff6/Assets/Repo/Environment/Skyboxes/Sunny/Sunny1_back.tif
--------------------------------------------------------------------------------
/Assets/Repo/Environment/Skyboxes/Sunny/Sunny1_back.tif.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 32ef381921b3f7f479831b042c113762
3 | TextureImporter:
4 | fileIDToRecycleName: {}
5 | serializedVersion: 2
6 | mipmaps:
7 | mipMapMode: 0
8 | enableMipMap: 1
9 | linearTexture: 0
10 | correctGamma: 0
11 | fadeOut: 0
12 | borderMipMap: 0
13 | mipMapFadeDistanceStart: 1
14 | mipMapFadeDistanceEnd: 3
15 | bumpmap:
16 | convertToNormalMap: 0
17 | externalNormalMap: 0
18 | heightScale: .25
19 | normalMapFilter: 0
20 | isReadable: 0
21 | grayScaleToAlpha: 0
22 | generateCubemap: 0
23 | seamlessCubemap: 0
24 | textureFormat: -1
25 | maxTextureSize: 512
26 | textureSettings:
27 | filterMode: 1
28 | aniso: 1
29 | mipBias: 0
30 | wrapMode: 1
31 | nPOTScale: 1
32 | lightmap: 0
33 | compressionQuality: 50
34 | spriteMode: 0
35 | spriteExtrude: 1
36 | spriteMeshType: 1
37 | alignment: 0
38 | spritePivot: {x: .5, y: .5}
39 | spriteBorder: {x: 0, y: 0, z: 0, w: 0}
40 | spritePixelsToUnits: 100
41 | alphaIsTransparency: 0
42 | textureType: 0
43 | buildTargetSettings: []
44 | spriteSheet:
45 | sprites: []
46 | spritePackingTag:
47 | userData:
48 |
--------------------------------------------------------------------------------
/Assets/Repo/Environment/Skyboxes/Sunny/Sunny1_down.tif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sols11/SFramework/2aecb34fd5adcad0c572c821706fc70b91397ff6/Assets/Repo/Environment/Skyboxes/Sunny/Sunny1_down.tif
--------------------------------------------------------------------------------
/Assets/Repo/Environment/Skyboxes/Sunny/Sunny1_down.tif.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 352e5f82d7105ad408904c5f552b5fe7
3 | TextureImporter:
4 | fileIDToRecycleName: {}
5 | serializedVersion: 2
6 | mipmaps:
7 | mipMapMode: 0
8 | enableMipMap: 1
9 | linearTexture: 0
10 | correctGamma: 0
11 | fadeOut: 0
12 | borderMipMap: 0
13 | mipMapFadeDistanceStart: 1
14 | mipMapFadeDistanceEnd: 3
15 | bumpmap:
16 | convertToNormalMap: 0
17 | externalNormalMap: 0
18 | heightScale: .25
19 | normalMapFilter: 0
20 | isReadable: 0
21 | grayScaleToAlpha: 0
22 | generateCubemap: 0
23 | seamlessCubemap: 0
24 | textureFormat: -1
25 | maxTextureSize: 512
26 | textureSettings:
27 | filterMode: 1
28 | aniso: 1
29 | mipBias: 0
30 | wrapMode: 1
31 | nPOTScale: 1
32 | lightmap: 0
33 | compressionQuality: 50
34 | spriteMode: 0
35 | spriteExtrude: 1
36 | spriteMeshType: 1
37 | alignment: 0
38 | spritePivot: {x: .5, y: .5}
39 | spriteBorder: {x: 0, y: 0, z: 0, w: 0}
40 | spritePixelsToUnits: 100
41 | alphaIsTransparency: 0
42 | textureType: 0
43 | buildTargetSettings: []
44 | spriteSheet:
45 | sprites: []
46 | spritePackingTag:
47 | userData:
48 |
--------------------------------------------------------------------------------
/Assets/Repo/Environment/Skyboxes/Sunny/Sunny1_front.tif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sols11/SFramework/2aecb34fd5adcad0c572c821706fc70b91397ff6/Assets/Repo/Environment/Skyboxes/Sunny/Sunny1_front.tif
--------------------------------------------------------------------------------
/Assets/Repo/Environment/Skyboxes/Sunny/Sunny1_front.tif.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 2372dd1814cb4ed47a91f8174877623e
3 | TextureImporter:
4 | fileIDToRecycleName: {}
5 | serializedVersion: 2
6 | mipmaps:
7 | mipMapMode: 0
8 | enableMipMap: 1
9 | linearTexture: 0
10 | correctGamma: 0
11 | fadeOut: 0
12 | borderMipMap: 0
13 | mipMapFadeDistanceStart: 1
14 | mipMapFadeDistanceEnd: 3
15 | bumpmap:
16 | convertToNormalMap: 0
17 | externalNormalMap: 0
18 | heightScale: .25
19 | normalMapFilter: 0
20 | isReadable: 0
21 | grayScaleToAlpha: 0
22 | generateCubemap: 0
23 | seamlessCubemap: 0
24 | textureFormat: -1
25 | maxTextureSize: 512
26 | textureSettings:
27 | filterMode: 1
28 | aniso: 1
29 | mipBias: 0
30 | wrapMode: 1
31 | nPOTScale: 1
32 | lightmap: 0
33 | compressionQuality: 50
34 | spriteMode: 0
35 | spriteExtrude: 1
36 | spriteMeshType: 1
37 | alignment: 0
38 | spritePivot: {x: .5, y: .5}
39 | spriteBorder: {x: 0, y: 0, z: 0, w: 0}
40 | spritePixelsToUnits: 100
41 | alphaIsTransparency: 0
42 | textureType: 0
43 | buildTargetSettings: []
44 | spriteSheet:
45 | sprites: []
46 | spritePackingTag:
47 | userData:
48 |
--------------------------------------------------------------------------------
/Assets/Repo/Environment/Skyboxes/Sunny/Sunny1_left.tif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sols11/SFramework/2aecb34fd5adcad0c572c821706fc70b91397ff6/Assets/Repo/Environment/Skyboxes/Sunny/Sunny1_left.tif
--------------------------------------------------------------------------------
/Assets/Repo/Environment/Skyboxes/Sunny/Sunny1_left.tif.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 66ebe4da1ef67e64e8aeccb820e409d6
3 | TextureImporter:
4 | fileIDToRecycleName: {}
5 | serializedVersion: 2
6 | mipmaps:
7 | mipMapMode: 0
8 | enableMipMap: 1
9 | linearTexture: 0
10 | correctGamma: 0
11 | fadeOut: 0
12 | borderMipMap: 0
13 | mipMapFadeDistanceStart: 1
14 | mipMapFadeDistanceEnd: 3
15 | bumpmap:
16 | convertToNormalMap: 0
17 | externalNormalMap: 0
18 | heightScale: .25
19 | normalMapFilter: 0
20 | isReadable: 0
21 | grayScaleToAlpha: 0
22 | generateCubemap: 0
23 | seamlessCubemap: 0
24 | textureFormat: -1
25 | maxTextureSize: 512
26 | textureSettings:
27 | filterMode: 1
28 | aniso: 1
29 | mipBias: 0
30 | wrapMode: 1
31 | nPOTScale: 1
32 | lightmap: 0
33 | compressionQuality: 50
34 | spriteMode: 0
35 | spriteExtrude: 1
36 | spriteMeshType: 1
37 | alignment: 0
38 | spritePivot: {x: .5, y: .5}
39 | spriteBorder: {x: 0, y: 0, z: 0, w: 0}
40 | spritePixelsToUnits: 100
41 | alphaIsTransparency: 0
42 | textureType: 0
43 | buildTargetSettings: []
44 | spriteSheet:
45 | sprites: []
46 | spritePackingTag:
47 | userData:
48 |
--------------------------------------------------------------------------------
/Assets/Repo/Environment/Skyboxes/Sunny/Sunny1_right.tif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sols11/SFramework/2aecb34fd5adcad0c572c821706fc70b91397ff6/Assets/Repo/Environment/Skyboxes/Sunny/Sunny1_right.tif
--------------------------------------------------------------------------------
/Assets/Repo/Environment/Skyboxes/Sunny/Sunny1_right.tif.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 195c271a9118d224c8562ae67cf47a66
3 | TextureImporter:
4 | fileIDToRecycleName: {}
5 | serializedVersion: 2
6 | mipmaps:
7 | mipMapMode: 0
8 | enableMipMap: 1
9 | linearTexture: 0
10 | correctGamma: 0
11 | fadeOut: 0
12 | borderMipMap: 0
13 | mipMapFadeDistanceStart: 1
14 | mipMapFadeDistanceEnd: 3
15 | bumpmap:
16 | convertToNormalMap: 0
17 | externalNormalMap: 0
18 | heightScale: .25
19 | normalMapFilter: 0
20 | isReadable: 0
21 | grayScaleToAlpha: 0
22 | generateCubemap: 0
23 | seamlessCubemap: 0
24 | textureFormat: -1
25 | maxTextureSize: 512
26 | textureSettings:
27 | filterMode: 1
28 | aniso: 1
29 | mipBias: 0
30 | wrapMode: 1
31 | nPOTScale: 1
32 | lightmap: 0
33 | compressionQuality: 50
34 | spriteMode: 0
35 | spriteExtrude: 1
36 | spriteMeshType: 1
37 | alignment: 0
38 | spritePivot: {x: .5, y: .5}
39 | spriteBorder: {x: 0, y: 0, z: 0, w: 0}
40 | spritePixelsToUnits: 100
41 | alphaIsTransparency: 0
42 | textureType: 0
43 | buildTargetSettings: []
44 | spriteSheet:
45 | sprites: []
46 | spritePackingTag:
47 | userData:
48 |
--------------------------------------------------------------------------------
/Assets/Repo/Environment/Skyboxes/Sunny/Sunny1_up.tif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sols11/SFramework/2aecb34fd5adcad0c572c821706fc70b91397ff6/Assets/Repo/Environment/Skyboxes/Sunny/Sunny1_up.tif
--------------------------------------------------------------------------------
/Assets/Repo/Environment/Skyboxes/Sunny/Sunny1_up.tif.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 8a98ef45bc7df804d95fd945abd2c943
3 | TextureImporter:
4 | fileIDToRecycleName: {}
5 | serializedVersion: 2
6 | mipmaps:
7 | mipMapMode: 0
8 | enableMipMap: 1
9 | linearTexture: 0
10 | correctGamma: 0
11 | fadeOut: 0
12 | borderMipMap: 0
13 | mipMapFadeDistanceStart: 1
14 | mipMapFadeDistanceEnd: 3
15 | bumpmap:
16 | convertToNormalMap: 0
17 | externalNormalMap: 0
18 | heightScale: .25
19 | normalMapFilter: 0
20 | isReadable: 0
21 | grayScaleToAlpha: 0
22 | generateCubemap: 0
23 | seamlessCubemap: 0
24 | textureFormat: -1
25 | maxTextureSize: 512
26 | textureSettings:
27 | filterMode: 1
28 | aniso: 1
29 | mipBias: 0
30 | wrapMode: 1
31 | nPOTScale: 1
32 | lightmap: 0
33 | compressionQuality: 50
34 | spriteMode: 0
35 | spriteExtrude: 1
36 | spriteMeshType: 1
37 | alignment: 0
38 | spritePivot: {x: .5, y: .5}
39 | spriteBorder: {x: 0, y: 0, z: 0, w: 0}
40 | spritePixelsToUnits: 100
41 | alphaIsTransparency: 0
42 | textureType: 0
43 | buildTargetSettings: []
44 | spriteSheet:
45 | sprites: []
46 | spritePackingTag:
47 | userData:
48 |
--------------------------------------------------------------------------------
/Assets/Repo/Environment/StartScene.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 654a12ffe06be2e4ca3b22ba26647d71
3 | folderAsset: yes
4 | timeCreated: 1552654934
5 | licenseType: Free
6 | DefaultImporter:
7 | userData:
8 | assetBundleName:
9 | assetBundleVariant:
10 |
--------------------------------------------------------------------------------
/Assets/Repo/Environment/StartScene/DarkTile.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sols11/SFramework/2aecb34fd5adcad0c572c821706fc70b91397ff6/Assets/Repo/Environment/StartScene/DarkTile.png
--------------------------------------------------------------------------------
/Assets/Repo/Environment/StartScene/DarkTile.png.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: eb1b4bd7a7c44ff408e766a1e4c953c8
3 | timeCreated: 1552654972
4 | licenseType: Free
5 | TextureImporter:
6 | fileIDToRecycleName: {}
7 | serializedVersion: 4
8 | mipmaps:
9 | mipMapMode: 0
10 | enableMipMap: 1
11 | sRGBTexture: 1
12 | linearTexture: 0
13 | fadeOut: 0
14 | borderMipMap: 0
15 | mipMapFadeDistanceStart: 1
16 | mipMapFadeDistanceEnd: 3
17 | bumpmap:
18 | convertToNormalMap: 0
19 | externalNormalMap: 0
20 | heightScale: 0.25
21 | normalMapFilter: 0
22 | isReadable: 0
23 | grayScaleToAlpha: 0
24 | generateCubemap: 6
25 | cubemapConvolution: 0
26 | seamlessCubemap: 0
27 | textureFormat: 1
28 | maxTextureSize: 2048
29 | textureSettings:
30 | filterMode: -1
31 | aniso: -1
32 | mipBias: -1
33 | wrapMode: -1
34 | nPOTScale: 1
35 | lightmap: 0
36 | compressionQuality: 50
37 | spriteMode: 0
38 | spriteExtrude: 1
39 | spriteMeshType: 1
40 | alignment: 0
41 | spritePivot: {x: 0.5, y: 0.5}
42 | spriteBorder: {x: 0, y: 0, z: 0, w: 0}
43 | spritePixelsToUnits: 100
44 | alphaUsage: 1
45 | alphaIsTransparency: 0
46 | spriteTessellationDetail: -1
47 | textureType: 0
48 | textureShape: 1
49 | maxTextureSizeSet: 0
50 | compressionQualitySet: 0
51 | textureFormatSet: 0
52 | platformSettings:
53 | - buildTarget: DefaultTexturePlatform
54 | maxTextureSize: 2048
55 | textureFormat: -1
56 | textureCompression: 1
57 | compressionQuality: 50
58 | crunchedCompression: 0
59 | allowsAlphaSplitting: 0
60 | overridden: 0
61 | spriteSheet:
62 | serializedVersion: 2
63 | sprites: []
64 | outline: []
65 | spritePackingTag:
66 | userData:
67 | assetBundleName:
68 | assetBundleVariant:
69 |
--------------------------------------------------------------------------------
/Assets/Repo/Environment/StartScene/Plane.mat:
--------------------------------------------------------------------------------
1 | %YAML 1.1
2 | %TAG !u! tag:unity3d.com,2011:
3 | --- !u!21 &2100000
4 | Material:
5 | serializedVersion: 6
6 | m_ObjectHideFlags: 0
7 | m_PrefabParentObject: {fileID: 0}
8 | m_PrefabInternal: {fileID: 0}
9 | m_Name: Plane
10 | m_Shader: {fileID: 46, guid: 0000000000000000f000000000000000, type: 0}
11 | m_ShaderKeywords: _EMISSION
12 | m_LightmapFlags: 1
13 | m_EnableInstancingVariants: 0
14 | m_DoubleSidedGI: 0
15 | m_CustomRenderQueue: -1
16 | stringTagMap: {}
17 | disabledShaderPasses: []
18 | m_SavedProperties:
19 | serializedVersion: 3
20 | m_TexEnvs:
21 | - _BumpMap:
22 | m_Texture: {fileID: 0}
23 | m_Scale: {x: 1, y: 1}
24 | m_Offset: {x: 0, y: 0}
25 | - _DetailAlbedoMap:
26 | m_Texture: {fileID: 0}
27 | m_Scale: {x: 1, y: 1}
28 | m_Offset: {x: 0, y: 0}
29 | - _DetailMask:
30 | m_Texture: {fileID: 0}
31 | m_Scale: {x: 1, y: 1}
32 | m_Offset: {x: 0, y: 0}
33 | - _DetailNormalMap:
34 | m_Texture: {fileID: 0}
35 | m_Scale: {x: 1, y: 1}
36 | m_Offset: {x: 0, y: 0}
37 | - _EmissionMap:
38 | m_Texture: {fileID: 0}
39 | m_Scale: {x: 50, y: 50}
40 | m_Offset: {x: 0, y: 0}
41 | - _MainTex:
42 | m_Texture: {fileID: 2800000, guid: eb1b4bd7a7c44ff408e766a1e4c953c8, type: 3}
43 | m_Scale: {x: 50, y: 50}
44 | m_Offset: {x: 0, y: 0}
45 | - _MetallicGlossMap:
46 | m_Texture: {fileID: 0}
47 | m_Scale: {x: 1, y: 1}
48 | m_Offset: {x: 0, y: 0}
49 | - _OcclusionMap:
50 | m_Texture: {fileID: 0}
51 | m_Scale: {x: 1, y: 1}
52 | m_Offset: {x: 0, y: 0}
53 | - _ParallaxMap:
54 | m_Texture: {fileID: 0}
55 | m_Scale: {x: 1, y: 1}
56 | m_Offset: {x: 0, y: 0}
57 | m_Floats:
58 | - _BumpScale: 1
59 | - _Cutoff: 0.5
60 | - _DetailNormalMapScale: 1
61 | - _DstBlend: 0
62 | - _GlossMapScale: 1
63 | - _Glossiness: 0.5
64 | - _GlossyReflections: 1
65 | - _Metallic: 0
66 | - _Mode: 0
67 | - _OcclusionStrength: 1
68 | - _Parallax: 0.02
69 | - _SmoothnessTextureChannel: 0
70 | - _SpecularHighlights: 1
71 | - _SrcBlend: 1
72 | - _UVSec: 0
73 | - _ZWrite: 1
74 | m_Colors:
75 | - _Color: {r: 1, g: 1, b: 1, a: 1}
76 | - _EmissionColor: {r: 0, g: 0, b: 0, a: 1}
77 |
--------------------------------------------------------------------------------
/Assets/Repo/Environment/StartScene/Plane.mat.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 79f1942741cc53047aad74e5655b8e6d
3 | timeCreated: 1552654910
4 | licenseType: Free
5 | NativeFormatImporter:
6 | mainObjectFileID: -1
7 | userData:
8 | assetBundleName:
9 | assetBundleVariant:
10 |
--------------------------------------------------------------------------------
/Assets/Repo/IncludeCG.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: cd0fe303524c49645af9eef109c80317
3 | folderAsset: yes
4 | DefaultImporter:
5 | externalObjects: {}
6 | userData:
7 | assetBundleName:
8 | assetBundleVariant:
9 |
--------------------------------------------------------------------------------
/Assets/Repo/Model.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 9ad3e4dbdf1612b4192576386a84c096
3 | folderAsset: yes
4 | DefaultImporter:
5 | externalObjects: {}
6 | userData:
7 | assetBundleName:
8 | assetBundleVariant:
9 |
--------------------------------------------------------------------------------
/Assets/Repo/Particle.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 4537ab5568dcdfa43a10ccd3034cb078
3 | folderAsset: yes
4 | DefaultImporter:
5 | externalObjects: {}
6 | userData:
7 | assetBundleName:
8 | assetBundleVariant:
9 |
--------------------------------------------------------------------------------
/Assets/Repo/Player.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: bf46f92c0e6578741b7daa388e13a54c
3 | folderAsset: yes
4 | DefaultImporter:
5 | externalObjects: {}
6 | userData:
7 | assetBundleName:
8 | assetBundleVariant:
9 |
--------------------------------------------------------------------------------
/Assets/Repo/Player/PlayerMain.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 8c5193952d106b44a900e02029e0b322
3 | folderAsset: yes
4 | timeCreated: 1552797655
5 | licenseType: Free
6 | DefaultImporter:
7 | userData:
8 | assetBundleName:
9 | assetBundleVariant:
10 |
--------------------------------------------------------------------------------
/Assets/Repo/Player/PlayerMain/Animation.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 8b84a7a53b83d4f428817bbca4d3f9a2
3 | folderAsset: yes
4 | timeCreated: 1552797578
5 | licenseType: Free
6 | DefaultImporter:
7 | userData:
8 | assetBundleName:
9 | assetBundleVariant:
10 |
--------------------------------------------------------------------------------
/Assets/Repo/Player/PlayerMain/Animation/Block.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 9a37a8c1f3ad7b140ad9a6a95857dd0d
3 | folderAsset: yes
4 | timeCreated: 1552797578
5 | licenseType: Free
6 | DefaultImporter:
7 | userData:
8 | assetBundleName:
9 | assetBundleVariant:
10 |
--------------------------------------------------------------------------------
/Assets/Repo/Player/PlayerMain/Animation/Block/Move.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: ab3dfcdc167c53e489c98c621ca9ba13
3 | folderAsset: yes
4 | timeCreated: 1552797578
5 | licenseType: Free
6 | DefaultImporter:
7 | userData:
8 | assetBundleName:
9 | assetBundleVariant:
10 |
--------------------------------------------------------------------------------
/Assets/Repo/Player/PlayerMain/Animation/Block/Move/BlockPeaceWalk.anim.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 7308b7e8bae301e4bb016f0ba5588b0d
3 | timeCreated: 1504245236
4 | licenseType: Pro
5 | NativeFormatImporter:
6 | mainObjectFileID: 7400000
7 | userData:
8 | assetBundleName:
9 | assetBundleVariant:
10 |
--------------------------------------------------------------------------------
/Assets/Repo/Player/PlayerMain/Animation/Block/Move/YukaIdle.anim.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: e98590834eec4524784eef2fa7f902a7
3 | timeCreated: 1491033428
4 | licenseType: Pro
5 | NativeFormatImporter:
6 | userData:
7 | assetBundleName:
8 | assetBundleVariant:
9 |
--------------------------------------------------------------------------------
/Assets/Repo/Player/PlayerMain/Block2.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 5eb94b1369bd28b4a96782a65d0ce132
3 | folderAsset: yes
4 | timeCreated: 1552797577
5 | licenseType: Free
6 | DefaultImporter:
7 | userData:
8 | assetBundleName:
9 | assetBundleVariant:
10 |
--------------------------------------------------------------------------------
/Assets/Repo/Player/PlayerMain/Block2/Block2.fbx:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sols11/SFramework/2aecb34fd5adcad0c572c821706fc70b91397ff6/Assets/Repo/Player/PlayerMain/Block2/Block2.fbx
--------------------------------------------------------------------------------
/Assets/Repo/Player/PlayerMain/Block2/Materials.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 34a894f1f0ce7694396d327b7f738812
3 | folderAsset: yes
4 | timeCreated: 1552797578
5 | licenseType: Free
6 | DefaultImporter:
7 | userData:
8 | assetBundleName:
9 | assetBundleVariant:
10 |
--------------------------------------------------------------------------------
/Assets/Repo/Player/PlayerMain/Block2/Materials/Body.mat.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 4fe2a6c6884ed6646ad77fd6354130e5
3 | timeCreated: 1504170295
4 | licenseType: Free
5 | NativeFormatImporter:
6 | userData:
7 | assetBundleName:
8 | assetBundleVariant:
9 |
--------------------------------------------------------------------------------
/Assets/Repo/Player/PlayerMain/Block2/Materials/Eye.mat:
--------------------------------------------------------------------------------
1 | %YAML 1.1
2 | %TAG !u! tag:unity3d.com,2011:
3 | --- !u!21 &2100000
4 | Material:
5 | serializedVersion: 6
6 | m_ObjectHideFlags: 0
7 | m_PrefabParentObject: {fileID: 0}
8 | m_PrefabInternal: {fileID: 0}
9 | m_Name: Eye
10 | m_Shader: {fileID: 46, guid: 0000000000000000f000000000000000, type: 0}
11 | m_ShaderKeywords: _EMISSION
12 | m_LightmapFlags: 1
13 | m_EnableInstancingVariants: 0
14 | m_DoubleSidedGI: 0
15 | m_CustomRenderQueue: -1
16 | stringTagMap: {}
17 | disabledShaderPasses: []
18 | m_SavedProperties:
19 | serializedVersion: 3
20 | m_TexEnvs:
21 | - _BumpMap:
22 | m_Texture: {fileID: 0}
23 | m_Scale: {x: 1, y: 1}
24 | m_Offset: {x: 0, y: 0}
25 | - _DetailAlbedoMap:
26 | m_Texture: {fileID: 0}
27 | m_Scale: {x: 1, y: 1}
28 | m_Offset: {x: 0, y: 0}
29 | - _DetailMask:
30 | m_Texture: {fileID: 0}
31 | m_Scale: {x: 1, y: 1}
32 | m_Offset: {x: 0, y: 0}
33 | - _DetailNormalMap:
34 | m_Texture: {fileID: 0}
35 | m_Scale: {x: 1, y: 1}
36 | m_Offset: {x: 0, y: 0}
37 | - _EmissionMap:
38 | m_Texture: {fileID: 0}
39 | m_Scale: {x: 1, y: 1}
40 | m_Offset: {x: 0, y: 0}
41 | - _FalloffSampler:
42 | m_Texture: {fileID: 2800000, guid: a1d5b2277eb3f6245900378e6fa97575, type: 3}
43 | m_Scale: {x: 1, y: 1}
44 | m_Offset: {x: 0, y: 0}
45 | - _MainTex:
46 | m_Texture: {fileID: 2800000, guid: e2d39d2119287e5488e67fe3269e2d07, type: 3}
47 | m_Scale: {x: 1, y: 1}
48 | m_Offset: {x: 0, y: 0}
49 | - _MetallicGlossMap:
50 | m_Texture: {fileID: 0}
51 | m_Scale: {x: 1, y: 1}
52 | m_Offset: {x: 0, y: 0}
53 | - _OcclusionMap:
54 | m_Texture: {fileID: 0}
55 | m_Scale: {x: 1, y: 1}
56 | m_Offset: {x: 0, y: 0}
57 | - _ParallaxMap:
58 | m_Texture: {fileID: 0}
59 | m_Scale: {x: 1, y: 1}
60 | m_Offset: {x: 0, y: 0}
61 | - _RimLightSampler:
62 | m_Texture: {fileID: 0}
63 | m_Scale: {x: 1, y: 1}
64 | m_Offset: {x: 0, y: 0}
65 | m_Floats:
66 | - _BumpScale: 1
67 | - _Cutoff: 0.5
68 | - _DetailNormalMapScale: 1
69 | - _DstBlend: 0
70 | - _GlossMapScale: 1
71 | - _Glossiness: 0.5
72 | - _GlossyReflections: 1
73 | - _Metallic: 0
74 | - _Mode: 0
75 | - _OcclusionStrength: 1
76 | - _Parallax: 0.02
77 | - _SmoothnessTextureChannel: 0
78 | - _SpecularHighlights: 1
79 | - _SrcBlend: 1
80 | - _UVSec: 0
81 | - _ZWrite: 1
82 | m_Colors:
83 | - _Color: {r: 1, g: 1, b: 1, a: 1}
84 | - _EmissionColor: {r: 0, g: 0, b: 0, a: 1}
85 | - _ShadowColor: {r: 0.8, g: 0.8, b: 1, a: 1}
86 |
--------------------------------------------------------------------------------
/Assets/Repo/Player/PlayerMain/Block2/Materials/Eye.mat.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 9b7fb924ced83124abc2521fdbeb0b4f
3 | timeCreated: 1504170295
4 | licenseType: Free
5 | NativeFormatImporter:
6 | userData:
7 | assetBundleName:
8 | assetBundleVariant:
9 |
--------------------------------------------------------------------------------
/Assets/Repo/Player/PlayerMain/Block2/Materials/Eye2.mat.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 0da9a4efea544734f86c9ed8c751cdcb
3 | timeCreated: 1504170295
4 | licenseType: Free
5 | NativeFormatImporter:
6 | userData:
7 | assetBundleName:
8 | assetBundleVariant:
9 |
--------------------------------------------------------------------------------
/Assets/Repo/Player/PlayerMain/Block2/Materials/EyeLine.mat.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 252e97342a6c7344fbefa67ab0c12704
3 | timeCreated: 1504170295
4 | licenseType: Free
5 | NativeFormatImporter:
6 | userData:
7 | assetBundleName:
8 | assetBundleVariant:
9 |
--------------------------------------------------------------------------------
/Assets/Repo/Player/PlayerMain/Block2/Materials/Face.mat.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: e12f146d4fb38264ba15420e01fe6ada
3 | timeCreated: 1504170295
4 | licenseType: Free
5 | NativeFormatImporter:
6 | userData:
7 | assetBundleName:
8 | assetBundleVariant:
9 |
--------------------------------------------------------------------------------
/Assets/Repo/Player/PlayerMain/Block2/Materials/Hair.mat.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 90815384dc80fc04c971d40d52056a70
3 | timeCreated: 1504170296
4 | licenseType: Free
5 | NativeFormatImporter:
6 | userData:
7 | assetBundleName:
8 | assetBundleVariant:
9 |
--------------------------------------------------------------------------------
/Assets/Repo/Player/PlayerMain/Block2/Materials/Hand.mat:
--------------------------------------------------------------------------------
1 | %YAML 1.1
2 | %TAG !u! tag:unity3d.com,2011:
3 | --- !u!21 &2100000
4 | Material:
5 | serializedVersion: 6
6 | m_ObjectHideFlags: 0
7 | m_PrefabParentObject: {fileID: 0}
8 | m_PrefabInternal: {fileID: 0}
9 | m_Name: Hand
10 | m_Shader: {fileID: 46, guid: 0000000000000000f000000000000000, type: 0}
11 | m_ShaderKeywords:
12 | m_LightmapFlags: 4
13 | m_EnableInstancingVariants: 0
14 | m_DoubleSidedGI: 0
15 | m_CustomRenderQueue: -1
16 | stringTagMap: {}
17 | disabledShaderPasses: []
18 | m_SavedProperties:
19 | serializedVersion: 3
20 | m_TexEnvs:
21 | - _BumpMap:
22 | m_Texture: {fileID: 0}
23 | m_Scale: {x: 1, y: 1}
24 | m_Offset: {x: 0, y: 0}
25 | - _DetailAlbedoMap:
26 | m_Texture: {fileID: 0}
27 | m_Scale: {x: 1, y: 1}
28 | m_Offset: {x: 0, y: 0}
29 | - _DetailMask:
30 | m_Texture: {fileID: 0}
31 | m_Scale: {x: 1, y: 1}
32 | m_Offset: {x: 0, y: 0}
33 | - _DetailNormalMap:
34 | m_Texture: {fileID: 0}
35 | m_Scale: {x: 1, y: 1}
36 | m_Offset: {x: 0, y: 0}
37 | - _EmissionMap:
38 | m_Texture: {fileID: 0}
39 | m_Scale: {x: 1, y: 1}
40 | m_Offset: {x: 0, y: 0}
41 | - _MainTex:
42 | m_Texture: {fileID: 0}
43 | m_Scale: {x: 1, y: 1}
44 | m_Offset: {x: 0, y: 0}
45 | - _MetallicGlossMap:
46 | m_Texture: {fileID: 0}
47 | m_Scale: {x: 1, y: 1}
48 | m_Offset: {x: 0, y: 0}
49 | - _OcclusionMap:
50 | m_Texture: {fileID: 0}
51 | m_Scale: {x: 1, y: 1}
52 | m_Offset: {x: 0, y: 0}
53 | - _ParallaxMap:
54 | m_Texture: {fileID: 0}
55 | m_Scale: {x: 1, y: 1}
56 | m_Offset: {x: 0, y: 0}
57 | m_Floats:
58 | - _BumpScale: 1
59 | - _Cutoff: 0.5
60 | - _DetailNormalMapScale: 1
61 | - _DstBlend: 0
62 | - _GlossMapScale: 1
63 | - _Glossiness: 0.5
64 | - _GlossyReflections: 1
65 | - _Metallic: 0
66 | - _Mode: 0
67 | - _OcclusionStrength: 1
68 | - _Parallax: 0.02
69 | - _SmoothnessTextureChannel: 0
70 | - _SpecularHighlights: 1
71 | - _SrcBlend: 1
72 | - _UVSec: 0
73 | - _ZWrite: 1
74 | m_Colors:
75 | - _Color: {r: 1, g: 0, b: 0, a: 1}
76 | - _EmissionColor: {r: 0, g: 0, b: 0, a: 1}
77 |
--------------------------------------------------------------------------------
/Assets/Repo/Player/PlayerMain/Block2/Materials/Hand.mat.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 6cd7848b6d2b9684ca4e593e255b237e
3 | timeCreated: 1504170295
4 | licenseType: Free
5 | NativeFormatImporter:
6 | userData:
7 | assetBundleName:
8 | assetBundleVariant:
9 |
--------------------------------------------------------------------------------
/Assets/Repo/Player/PlayerMain/Block2/Materials/MianJu.mat.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 7293a35ab41a3aa43b34413fc1da94e3
3 | timeCreated: 1504170296
4 | licenseType: Free
5 | NativeFormatImporter:
6 | userData:
7 | assetBundleName:
8 | assetBundleVariant:
9 |
--------------------------------------------------------------------------------
/Assets/Repo/Player/PlayerMain/Block2/Materials/WeiJin.mat:
--------------------------------------------------------------------------------
1 | %YAML 1.1
2 | %TAG !u! tag:unity3d.com,2011:
3 | --- !u!21 &2100000
4 | Material:
5 | serializedVersion: 6
6 | m_ObjectHideFlags: 0
7 | m_PrefabParentObject: {fileID: 0}
8 | m_PrefabInternal: {fileID: 0}
9 | m_Name: WeiJin
10 | m_Shader: {fileID: 46, guid: 0000000000000000f000000000000000, type: 0}
11 | m_ShaderKeywords: _EMISSION
12 | m_LightmapFlags: 1
13 | m_EnableInstancingVariants: 0
14 | m_DoubleSidedGI: 0
15 | m_CustomRenderQueue: -1
16 | stringTagMap: {}
17 | disabledShaderPasses: []
18 | m_SavedProperties:
19 | serializedVersion: 3
20 | m_TexEnvs:
21 | - _BumpMap:
22 | m_Texture: {fileID: 0}
23 | m_Scale: {x: 1, y: 1}
24 | m_Offset: {x: 0, y: 0}
25 | - _DetailAlbedoMap:
26 | m_Texture: {fileID: 0}
27 | m_Scale: {x: 1, y: 1}
28 | m_Offset: {x: 0, y: 0}
29 | - _DetailMask:
30 | m_Texture: {fileID: 0}
31 | m_Scale: {x: 1, y: 1}
32 | m_Offset: {x: 0, y: 0}
33 | - _DetailNormalMap:
34 | m_Texture: {fileID: 0}
35 | m_Scale: {x: 1, y: 1}
36 | m_Offset: {x: 0, y: 0}
37 | - _EmissionMap:
38 | m_Texture: {fileID: 0}
39 | m_Scale: {x: 1, y: 1}
40 | m_Offset: {x: 0, y: 0}
41 | - _FalloffSampler:
42 | m_Texture: {fileID: 0}
43 | m_Scale: {x: 1, y: 1}
44 | m_Offset: {x: 0, y: 0}
45 | - _MainTex:
46 | m_Texture: {fileID: 2800000, guid: 89a38b267b424bf42b6423a450c9c6ee, type: 3}
47 | m_Scale: {x: 1, y: 1}
48 | m_Offset: {x: 0, y: 0}
49 | - _MetallicGlossMap:
50 | m_Texture: {fileID: 0}
51 | m_Scale: {x: 1, y: 1}
52 | m_Offset: {x: 0, y: 0}
53 | - _OcclusionMap:
54 | m_Texture: {fileID: 0}
55 | m_Scale: {x: 1, y: 1}
56 | m_Offset: {x: 0, y: 0}
57 | - _ParallaxMap:
58 | m_Texture: {fileID: 0}
59 | m_Scale: {x: 1, y: 1}
60 | m_Offset: {x: 0, y: 0}
61 | - _RimLightSampler:
62 | m_Texture: {fileID: 0}
63 | m_Scale: {x: 1, y: 1}
64 | m_Offset: {x: 0, y: 0}
65 | m_Floats:
66 | - _BumpScale: 1
67 | - _Cutoff: 0.5
68 | - _DetailNormalMapScale: 1
69 | - _DstBlend: 0
70 | - _GlossMapScale: 1
71 | - _Glossiness: 0.5
72 | - _GlossyReflections: 1
73 | - _Metallic: 0
74 | - _Mode: 0
75 | - _OcclusionStrength: 1
76 | - _Parallax: 0.02
77 | - _SmoothnessTextureChannel: 0
78 | - _SpecularHighlights: 1
79 | - _SrcBlend: 1
80 | - _UVSec: 0
81 | - _ZWrite: 1
82 | m_Colors:
83 | - _Color: {r: 1, g: 0, b: 0, a: 1}
84 | - _EmissionColor: {r: 0, g: 0, b: 0, a: 1}
85 | - _ShadowColor: {r: 0.8, g: 0.8, b: 1, a: 1}
86 |
--------------------------------------------------------------------------------
/Assets/Repo/Player/PlayerMain/Block2/Materials/WeiJin.mat.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 4f7e671a0f8a0e34db5b90bc6c25af0c
3 | timeCreated: 1504170295
4 | licenseType: Free
5 | NativeFormatImporter:
6 | userData:
7 | assetBundleName:
8 | assetBundleVariant:
9 |
--------------------------------------------------------------------------------
/Assets/Repo/Player/PlayerMain/Block2/Skin_face.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sols11/SFramework/2aecb34fd5adcad0c572c821706fc70b91397ff6/Assets/Repo/Player/PlayerMain/Block2/Skin_face.png
--------------------------------------------------------------------------------
/Assets/Repo/Player/PlayerMain/Block2/Skin_face.png.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: f27015d6f05cedc49bb8fb5b890ec703
3 | timeCreated: 1504170630
4 | licenseType: Free
5 | TextureImporter:
6 | fileIDToRecycleName: {}
7 | serializedVersion: 2
8 | mipmaps:
9 | mipMapMode: 0
10 | enableMipMap: 1
11 | linearTexture: 0
12 | correctGamma: 0
13 | fadeOut: 0
14 | borderMipMap: 0
15 | mipMapFadeDistanceStart: 1
16 | mipMapFadeDistanceEnd: 3
17 | bumpmap:
18 | convertToNormalMap: 0
19 | externalNormalMap: 0
20 | heightScale: 0.25
21 | normalMapFilter: 0
22 | isReadable: 0
23 | grayScaleToAlpha: 0
24 | generateCubemap: 0
25 | cubemapConvolution: 0
26 | cubemapConvolutionSteps: 7
27 | cubemapConvolutionExponent: 1.5
28 | seamlessCubemap: 0
29 | textureFormat: -1
30 | maxTextureSize: 2048
31 | textureSettings:
32 | filterMode: -1
33 | aniso: -1
34 | mipBias: -1
35 | wrapMode: -1
36 | nPOTScale: 1
37 | lightmap: 0
38 | rGBM: 0
39 | compressionQuality: 50
40 | allowsAlphaSplitting: 0
41 | spriteMode: 0
42 | spriteExtrude: 1
43 | spriteMeshType: 1
44 | alignment: 0
45 | spritePivot: {x: 0.5, y: 0.5}
46 | spriteBorder: {x: 0, y: 0, z: 0, w: 0}
47 | spritePixelsToUnits: 100
48 | alphaIsTransparency: 0
49 | textureType: -1
50 | buildTargetSettings: []
51 | spriteSheet:
52 | sprites: []
53 | outline: []
54 | spritePackingTag:
55 | userData:
56 | assetBundleName:
57 | assetBundleVariant:
58 |
--------------------------------------------------------------------------------
/Assets/Repo/Player/PlayerMain/Block2/body.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 59feaccf56bad7546ad19b3d64d339c9
3 | folderAsset: yes
4 | timeCreated: 1552797578
5 | licenseType: Free
6 | DefaultImporter:
7 | userData:
8 | assetBundleName:
9 | assetBundleVariant:
10 |
--------------------------------------------------------------------------------
/Assets/Repo/Player/PlayerMain/Block2/body/DefaultMaterial_Base_Color.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sols11/SFramework/2aecb34fd5adcad0c572c821706fc70b91397ff6/Assets/Repo/Player/PlayerMain/Block2/body/DefaultMaterial_Base_Color.png
--------------------------------------------------------------------------------
/Assets/Repo/Player/PlayerMain/Block2/body/DefaultMaterial_Base_Color.png.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 5aca2477266869d4f82bd0763911a711
3 | timeCreated: 1504170357
4 | licenseType: Free
5 | TextureImporter:
6 | fileIDToRecycleName: {}
7 | serializedVersion: 2
8 | mipmaps:
9 | mipMapMode: 0
10 | enableMipMap: 1
11 | linearTexture: 0
12 | correctGamma: 0
13 | fadeOut: 0
14 | borderMipMap: 0
15 | mipMapFadeDistanceStart: 1
16 | mipMapFadeDistanceEnd: 3
17 | bumpmap:
18 | convertToNormalMap: 0
19 | externalNormalMap: 0
20 | heightScale: 0.25
21 | normalMapFilter: 0
22 | isReadable: 0
23 | grayScaleToAlpha: 0
24 | generateCubemap: 0
25 | cubemapConvolution: 0
26 | cubemapConvolutionSteps: 7
27 | cubemapConvolutionExponent: 1.5
28 | seamlessCubemap: 0
29 | textureFormat: -1
30 | maxTextureSize: 2048
31 | textureSettings:
32 | filterMode: -1
33 | aniso: -1
34 | mipBias: -1
35 | wrapMode: -1
36 | nPOTScale: 1
37 | lightmap: 0
38 | rGBM: 0
39 | compressionQuality: 50
40 | allowsAlphaSplitting: 0
41 | spriteMode: 0
42 | spriteExtrude: 1
43 | spriteMeshType: 1
44 | alignment: 0
45 | spritePivot: {x: 0.5, y: 0.5}
46 | spriteBorder: {x: 0, y: 0, z: 0, w: 0}
47 | spritePixelsToUnits: 100
48 | alphaIsTransparency: 0
49 | textureType: -1
50 | buildTargetSettings: []
51 | spriteSheet:
52 | sprites: []
53 | outline: []
54 | spritePackingTag:
55 | userData:
56 | assetBundleName:
57 | assetBundleVariant:
58 |
--------------------------------------------------------------------------------
/Assets/Repo/Player/PlayerMain/Block2/body/DefaultMaterial_Height.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sols11/SFramework/2aecb34fd5adcad0c572c821706fc70b91397ff6/Assets/Repo/Player/PlayerMain/Block2/body/DefaultMaterial_Height.png
--------------------------------------------------------------------------------
/Assets/Repo/Player/PlayerMain/Block2/body/DefaultMaterial_Height.png.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 3b9e2bf5f4395de4cb4c8040d2c18c31
3 | timeCreated: 1504170393
4 | licenseType: Free
5 | TextureImporter:
6 | fileIDToRecycleName: {}
7 | serializedVersion: 2
8 | mipmaps:
9 | mipMapMode: 0
10 | enableMipMap: 1
11 | linearTexture: 0
12 | correctGamma: 0
13 | fadeOut: 0
14 | borderMipMap: 0
15 | mipMapFadeDistanceStart: 1
16 | mipMapFadeDistanceEnd: 3
17 | bumpmap:
18 | convertToNormalMap: 0
19 | externalNormalMap: 0
20 | heightScale: 0.25
21 | normalMapFilter: 0
22 | isReadable: 0
23 | grayScaleToAlpha: 0
24 | generateCubemap: 0
25 | cubemapConvolution: 0
26 | cubemapConvolutionSteps: 7
27 | cubemapConvolutionExponent: 1.5
28 | seamlessCubemap: 0
29 | textureFormat: -1
30 | maxTextureSize: 2048
31 | textureSettings:
32 | filterMode: -1
33 | aniso: -1
34 | mipBias: -1
35 | wrapMode: -1
36 | nPOTScale: 1
37 | lightmap: 0
38 | rGBM: 0
39 | compressionQuality: 50
40 | allowsAlphaSplitting: 0
41 | spriteMode: 0
42 | spriteExtrude: 1
43 | spriteMeshType: 1
44 | alignment: 0
45 | spritePivot: {x: 0.5, y: 0.5}
46 | spriteBorder: {x: 0, y: 0, z: 0, w: 0}
47 | spritePixelsToUnits: 100
48 | alphaIsTransparency: 0
49 | textureType: -1
50 | buildTargetSettings: []
51 | spriteSheet:
52 | sprites: []
53 | outline: []
54 | spritePackingTag:
55 | userData:
56 | assetBundleName:
57 | assetBundleVariant:
58 |
--------------------------------------------------------------------------------
/Assets/Repo/Player/PlayerMain/Block2/body/DefaultMaterial_Mixed_AO.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sols11/SFramework/2aecb34fd5adcad0c572c821706fc70b91397ff6/Assets/Repo/Player/PlayerMain/Block2/body/DefaultMaterial_Mixed_AO.png
--------------------------------------------------------------------------------
/Assets/Repo/Player/PlayerMain/Block2/body/DefaultMaterial_Mixed_AO.png.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 70cdce31967ea8047b2e23d045dc62fc
3 | timeCreated: 1504170395
4 | licenseType: Free
5 | TextureImporter:
6 | fileIDToRecycleName: {}
7 | serializedVersion: 2
8 | mipmaps:
9 | mipMapMode: 0
10 | enableMipMap: 1
11 | linearTexture: 0
12 | correctGamma: 0
13 | fadeOut: 0
14 | borderMipMap: 0
15 | mipMapFadeDistanceStart: 1
16 | mipMapFadeDistanceEnd: 3
17 | bumpmap:
18 | convertToNormalMap: 0
19 | externalNormalMap: 0
20 | heightScale: 0.25
21 | normalMapFilter: 0
22 | isReadable: 0
23 | grayScaleToAlpha: 0
24 | generateCubemap: 0
25 | cubemapConvolution: 0
26 | cubemapConvolutionSteps: 7
27 | cubemapConvolutionExponent: 1.5
28 | seamlessCubemap: 0
29 | textureFormat: -1
30 | maxTextureSize: 2048
31 | textureSettings:
32 | filterMode: -1
33 | aniso: -1
34 | mipBias: -1
35 | wrapMode: -1
36 | nPOTScale: 1
37 | lightmap: 0
38 | rGBM: 0
39 | compressionQuality: 50
40 | allowsAlphaSplitting: 0
41 | spriteMode: 0
42 | spriteExtrude: 1
43 | spriteMeshType: 1
44 | alignment: 0
45 | spritePivot: {x: 0.5, y: 0.5}
46 | spriteBorder: {x: 0, y: 0, z: 0, w: 0}
47 | spritePixelsToUnits: 100
48 | alphaIsTransparency: 0
49 | textureType: -1
50 | buildTargetSettings: []
51 | spriteSheet:
52 | sprites: []
53 | outline: []
54 | spritePackingTag:
55 | userData:
56 | assetBundleName:
57 | assetBundleVariant:
58 |
--------------------------------------------------------------------------------
/Assets/Repo/Player/PlayerMain/Block2/body/DefaultMaterial_Normal_DirectX.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sols11/SFramework/2aecb34fd5adcad0c572c821706fc70b91397ff6/Assets/Repo/Player/PlayerMain/Block2/body/DefaultMaterial_Normal_DirectX.png
--------------------------------------------------------------------------------
/Assets/Repo/Player/PlayerMain/Block2/body/DefaultMaterial_Normal_DirectX.png.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 0bfb0fdb2e8fa3749abb910e6a52d5a0
3 | timeCreated: 1504170199
4 | licenseType: Pro
5 | TextureImporter:
6 | fileIDToRecycleName: {}
7 | serializedVersion: 4
8 | mipmaps:
9 | mipMapMode: 0
10 | enableMipMap: 1
11 | sRGBTexture: 0
12 | linearTexture: 0
13 | fadeOut: 0
14 | borderMipMap: 0
15 | mipMapFadeDistanceStart: 1
16 | mipMapFadeDistanceEnd: 3
17 | bumpmap:
18 | convertToNormalMap: 0
19 | externalNormalMap: 0
20 | heightScale: 0.25
21 | normalMapFilter: 0
22 | isReadable: 0
23 | grayScaleToAlpha: 0
24 | generateCubemap: 6
25 | cubemapConvolution: 0
26 | seamlessCubemap: 0
27 | textureFormat: -1
28 | maxTextureSize: 2048
29 | textureSettings:
30 | filterMode: -1
31 | aniso: -1
32 | mipBias: -1
33 | wrapMode: -1
34 | nPOTScale: 1
35 | lightmap: 0
36 | compressionQuality: 50
37 | spriteMode: 0
38 | spriteExtrude: 1
39 | spriteMeshType: 1
40 | alignment: 0
41 | spritePivot: {x: 0.5, y: 0.5}
42 | spriteBorder: {x: 0, y: 0, z: 0, w: 0}
43 | spritePixelsToUnits: 100
44 | alphaUsage: 1
45 | alphaIsTransparency: 0
46 | spriteTessellationDetail: -1
47 | textureType: 1
48 | textureShape: 1
49 | maxTextureSizeSet: 0
50 | compressionQualitySet: 0
51 | textureFormatSet: 0
52 | platformSettings:
53 | - buildTarget: DefaultTexturePlatform
54 | maxTextureSize: 2048
55 | textureFormat: -1
56 | textureCompression: 1
57 | compressionQuality: 50
58 | crunchedCompression: 0
59 | allowsAlphaSplitting: 0
60 | overridden: 0
61 | spriteSheet:
62 | serializedVersion: 2
63 | sprites: []
64 | outline: []
65 | spritePackingTag:
66 | userData:
67 | assetBundleName:
68 | assetBundleVariant:
69 |
--------------------------------------------------------------------------------
/Assets/Repo/Player/PlayerMain/Block2/eyeL_p.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sols11/SFramework/2aecb34fd5adcad0c572c821706fc70b91397ff6/Assets/Repo/Player/PlayerMain/Block2/eyeL_p.tga
--------------------------------------------------------------------------------
/Assets/Repo/Player/PlayerMain/Block2/eyeL_p.tga.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: e2d39d2119287e5488e67fe3269e2d07
3 | timeCreated: 1504170628
4 | licenseType: Free
5 | TextureImporter:
6 | fileIDToRecycleName: {}
7 | serializedVersion: 2
8 | mipmaps:
9 | mipMapMode: 0
10 | enableMipMap: 1
11 | linearTexture: 0
12 | correctGamma: 0
13 | fadeOut: 0
14 | borderMipMap: 0
15 | mipMapFadeDistanceStart: 1
16 | mipMapFadeDistanceEnd: 3
17 | bumpmap:
18 | convertToNormalMap: 0
19 | externalNormalMap: 0
20 | heightScale: 0.25
21 | normalMapFilter: 0
22 | isReadable: 0
23 | grayScaleToAlpha: 0
24 | generateCubemap: 0
25 | cubemapConvolution: 0
26 | cubemapConvolutionSteps: 7
27 | cubemapConvolutionExponent: 1.5
28 | seamlessCubemap: 0
29 | textureFormat: -1
30 | maxTextureSize: 2048
31 | textureSettings:
32 | filterMode: -1
33 | aniso: -1
34 | mipBias: -1
35 | wrapMode: -1
36 | nPOTScale: 1
37 | lightmap: 0
38 | rGBM: 0
39 | compressionQuality: 50
40 | allowsAlphaSplitting: 0
41 | spriteMode: 0
42 | spriteExtrude: 1
43 | spriteMeshType: 1
44 | alignment: 0
45 | spritePivot: {x: 0.5, y: 0.5}
46 | spriteBorder: {x: 0, y: 0, z: 0, w: 0}
47 | spritePixelsToUnits: 100
48 | alphaIsTransparency: 0
49 | textureType: -1
50 | buildTargetSettings: []
51 | spriteSheet:
52 | sprites: []
53 | outline: []
54 | spritePackingTag:
55 | userData:
56 | assetBundleName:
57 | assetBundleVariant:
58 |
--------------------------------------------------------------------------------
/Assets/Repo/Player/PlayerMain/Block2/eyeline2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sols11/SFramework/2aecb34fd5adcad0c572c821706fc70b91397ff6/Assets/Repo/Player/PlayerMain/Block2/eyeline2.png
--------------------------------------------------------------------------------
/Assets/Repo/Player/PlayerMain/Block2/eyeline2.png.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 9878f42f54fbecc4abda90f10a29263f
3 | timeCreated: 1504170628
4 | licenseType: Free
5 | TextureImporter:
6 | fileIDToRecycleName: {}
7 | serializedVersion: 2
8 | mipmaps:
9 | mipMapMode: 0
10 | enableMipMap: 1
11 | linearTexture: 0
12 | correctGamma: 0
13 | fadeOut: 0
14 | borderMipMap: 0
15 | mipMapFadeDistanceStart: 1
16 | mipMapFadeDistanceEnd: 3
17 | bumpmap:
18 | convertToNormalMap: 0
19 | externalNormalMap: 0
20 | heightScale: 0.25
21 | normalMapFilter: 0
22 | isReadable: 0
23 | grayScaleToAlpha: 0
24 | generateCubemap: 0
25 | cubemapConvolution: 0
26 | cubemapConvolutionSteps: 7
27 | cubemapConvolutionExponent: 1.5
28 | seamlessCubemap: 0
29 | textureFormat: -1
30 | maxTextureSize: 2048
31 | textureSettings:
32 | filterMode: -1
33 | aniso: -1
34 | mipBias: -1
35 | wrapMode: -1
36 | nPOTScale: 1
37 | lightmap: 0
38 | rGBM: 0
39 | compressionQuality: 50
40 | allowsAlphaSplitting: 0
41 | spriteMode: 0
42 | spriteExtrude: 1
43 | spriteMeshType: 1
44 | alignment: 0
45 | spritePivot: {x: 0.5, y: 0.5}
46 | spriteBorder: {x: 0, y: 0, z: 0, w: 0}
47 | spritePixelsToUnits: 100
48 | alphaIsTransparency: 0
49 | textureType: -1
50 | buildTargetSettings: []
51 | spriteSheet:
52 | sprites: []
53 | outline: []
54 | spritePackingTag:
55 | userData:
56 | assetBundleName:
57 | assetBundleVariant:
58 |
--------------------------------------------------------------------------------
/Assets/Repo/Player/PlayerMain/Block2/hair_black.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sols11/SFramework/2aecb34fd5adcad0c572c821706fc70b91397ff6/Assets/Repo/Player/PlayerMain/Block2/hair_black.png
--------------------------------------------------------------------------------
/Assets/Repo/Player/PlayerMain/Block2/hair_black.png.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 37aec966131b4214a83c041f61ce980b
3 | timeCreated: 1504170627
4 | licenseType: Free
5 | TextureImporter:
6 | fileIDToRecycleName: {}
7 | serializedVersion: 2
8 | mipmaps:
9 | mipMapMode: 0
10 | enableMipMap: 1
11 | linearTexture: 0
12 | correctGamma: 0
13 | fadeOut: 0
14 | borderMipMap: 0
15 | mipMapFadeDistanceStart: 1
16 | mipMapFadeDistanceEnd: 3
17 | bumpmap:
18 | convertToNormalMap: 0
19 | externalNormalMap: 0
20 | heightScale: 0.25
21 | normalMapFilter: 0
22 | isReadable: 0
23 | grayScaleToAlpha: 0
24 | generateCubemap: 0
25 | cubemapConvolution: 0
26 | cubemapConvolutionSteps: 7
27 | cubemapConvolutionExponent: 1.5
28 | seamlessCubemap: 0
29 | textureFormat: -1
30 | maxTextureSize: 2048
31 | textureSettings:
32 | filterMode: -1
33 | aniso: -1
34 | mipBias: -1
35 | wrapMode: -1
36 | nPOTScale: 1
37 | lightmap: 0
38 | rGBM: 0
39 | compressionQuality: 50
40 | allowsAlphaSplitting: 0
41 | spriteMode: 0
42 | spriteExtrude: 1
43 | spriteMeshType: 1
44 | alignment: 0
45 | spritePivot: {x: 0.5, y: 0.5}
46 | spriteBorder: {x: 0, y: 0, z: 0, w: 0}
47 | spritePixelsToUnits: 100
48 | alphaIsTransparency: 0
49 | textureType: -1
50 | buildTargetSettings: []
51 | spriteSheet:
52 | sprites: []
53 | outline: []
54 | spritePackingTag:
55 | userData:
56 | assetBundleName:
57 | assetBundleVariant:
58 |
--------------------------------------------------------------------------------
/Assets/Repo/Player/PlayerMain/Block2/timg (4).jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sols11/SFramework/2aecb34fd5adcad0c572c821706fc70b91397ff6/Assets/Repo/Player/PlayerMain/Block2/timg (4).jpg
--------------------------------------------------------------------------------
/Assets/Repo/Player/PlayerMain/Block2/timg (4).jpg.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 38a4626308dd1b7459ad35752df4548f
3 | timeCreated: 1504170787
4 | licenseType: Free
5 | TextureImporter:
6 | fileIDToRecycleName: {}
7 | serializedVersion: 2
8 | mipmaps:
9 | mipMapMode: 0
10 | enableMipMap: 1
11 | linearTexture: 0
12 | correctGamma: 0
13 | fadeOut: 0
14 | borderMipMap: 0
15 | mipMapFadeDistanceStart: 1
16 | mipMapFadeDistanceEnd: 3
17 | bumpmap:
18 | convertToNormalMap: 0
19 | externalNormalMap: 0
20 | heightScale: 0.25
21 | normalMapFilter: 0
22 | isReadable: 0
23 | grayScaleToAlpha: 0
24 | generateCubemap: 0
25 | cubemapConvolution: 0
26 | cubemapConvolutionSteps: 7
27 | cubemapConvolutionExponent: 1.5
28 | seamlessCubemap: 0
29 | textureFormat: -1
30 | maxTextureSize: 2048
31 | textureSettings:
32 | filterMode: -1
33 | aniso: -1
34 | mipBias: -1
35 | wrapMode: -1
36 | nPOTScale: 1
37 | lightmap: 0
38 | rGBM: 0
39 | compressionQuality: 50
40 | allowsAlphaSplitting: 0
41 | spriteMode: 0
42 | spriteExtrude: 1
43 | spriteMeshType: 1
44 | alignment: 0
45 | spritePivot: {x: 0.5, y: 0.5}
46 | spriteBorder: {x: 0, y: 0, z: 0, w: 0}
47 | spritePixelsToUnits: 100
48 | alphaIsTransparency: 0
49 | textureType: -1
50 | buildTargetSettings: []
51 | spriteSheet:
52 | sprites: []
53 | outline: []
54 | spritePackingTag:
55 | userData:
56 | assetBundleName:
57 | assetBundleVariant:
58 |
--------------------------------------------------------------------------------
/Assets/Repo/Player/PlayerMain/Block2/weijin.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sols11/SFramework/2aecb34fd5adcad0c572c821706fc70b91397ff6/Assets/Repo/Player/PlayerMain/Block2/weijin.tga
--------------------------------------------------------------------------------
/Assets/Repo/Player/PlayerMain/Block2/weijin.tga.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 89a38b267b424bf42b6423a450c9c6ee
3 | timeCreated: 1504170726
4 | licenseType: Free
5 | TextureImporter:
6 | fileIDToRecycleName: {}
7 | serializedVersion: 2
8 | mipmaps:
9 | mipMapMode: 0
10 | enableMipMap: 1
11 | linearTexture: 0
12 | correctGamma: 0
13 | fadeOut: 0
14 | borderMipMap: 0
15 | mipMapFadeDistanceStart: 1
16 | mipMapFadeDistanceEnd: 3
17 | bumpmap:
18 | convertToNormalMap: 0
19 | externalNormalMap: 0
20 | heightScale: 0.25
21 | normalMapFilter: 0
22 | isReadable: 0
23 | grayScaleToAlpha: 0
24 | generateCubemap: 0
25 | cubemapConvolution: 0
26 | cubemapConvolutionSteps: 7
27 | cubemapConvolutionExponent: 1.5
28 | seamlessCubemap: 0
29 | textureFormat: -1
30 | maxTextureSize: 2048
31 | textureSettings:
32 | filterMode: -1
33 | aniso: -1
34 | mipBias: -1
35 | wrapMode: -1
36 | nPOTScale: 1
37 | lightmap: 0
38 | rGBM: 0
39 | compressionQuality: 50
40 | allowsAlphaSplitting: 0
41 | spriteMode: 0
42 | spriteExtrude: 1
43 | spriteMeshType: 1
44 | alignment: 0
45 | spritePivot: {x: 0.5, y: 0.5}
46 | spriteBorder: {x: 0, y: 0, z: 0, w: 0}
47 | spritePixelsToUnits: 100
48 | alphaIsTransparency: 0
49 | textureType: -1
50 | buildTargetSettings: []
51 | spriteSheet:
52 | sprites: []
53 | outline: []
54 | spritePackingTag:
55 | userData:
56 | assetBundleName:
57 | assetBundleVariant:
58 |
--------------------------------------------------------------------------------
/Assets/Repo/Player/PlayerMain/MaxFriction.physicMaterial:
--------------------------------------------------------------------------------
1 | %YAML 1.1
2 | %TAG !u! tag:unity3d.com,2011:
3 | --- !u!134 &13400000
4 | PhysicMaterial:
5 | m_ObjectHideFlags: 0
6 | m_PrefabParentObject: {fileID: 0}
7 | m_PrefabInternal: {fileID: 0}
8 | m_Name: MaxFriction
9 | dynamicFriction: 1
10 | staticFriction: 1
11 | bounciness: 0
12 | frictionCombine: 0
13 | bounceCombine: 0
14 |
--------------------------------------------------------------------------------
/Assets/Repo/Player/PlayerMain/MaxFriction.physicMaterial.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: ee8d2c4ab676dcd4cae548927719e365
3 | timeCreated: 1552811749
4 | licenseType: Free
5 | NativeFormatImporter:
6 | mainObjectFileID: 13400000
7 | userData:
8 | assetBundleName:
9 | assetBundleVariant:
10 |
--------------------------------------------------------------------------------
/Assets/Repo/Player/PlayerMain/PlayerMain.controller.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 6039617cfef7689458205ba2c829ec8c
3 | timeCreated: 1491032284
4 | licenseType: Pro
5 | NativeFormatImporter:
6 | userData:
7 | assetBundleName:
8 | assetBundleVariant:
9 |
--------------------------------------------------------------------------------
/Assets/Repo/Player/PlayerMain/Textures.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 99bcba7c6b0ccf943823bd0a5ca395f7
3 | folderAsset: yes
4 | timeCreated: 1552797578
5 | licenseType: Free
6 | DefaultImporter:
7 | userData:
8 | assetBundleName:
9 | assetBundleVariant:
10 |
--------------------------------------------------------------------------------
/Assets/Repo/Player/PlayerMain/Textures/FO_CLOTH1.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sols11/SFramework/2aecb34fd5adcad0c572c821706fc70b91397ff6/Assets/Repo/Player/PlayerMain/Textures/FO_CLOTH1.tga
--------------------------------------------------------------------------------
/Assets/Repo/Player/PlayerMain/Textures/FO_CLOTH1.tga.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: cc8f70f2ec571e9478efa98c041cde7b
3 | TextureImporter:
4 | serializedVersion: 2
5 | mipmaps:
6 | mipMapMode: 0
7 | enableMipMap: 1
8 | linearTexture: 0
9 | correctGamma: 0
10 | fadeOut: 0
11 | borderMipMap: 0
12 | mipMapFadeDistanceStart: 1
13 | mipMapFadeDistanceEnd: 3
14 | bumpmap:
15 | convertToNormalMap: 0
16 | externalNormalMap: 0
17 | heightScale: .25
18 | normalMapFilter: 0
19 | isReadable: 0
20 | grayScaleToAlpha: 0
21 | generateCubemap: 0
22 | seamlessCubemap: 0
23 | textureFormat: -1
24 | maxTextureSize: 256
25 | textureSettings:
26 | filterMode: -1
27 | aniso: -1
28 | mipBias: -1
29 | wrapMode: 1
30 | nPOTScale: 1
31 | lightmap: 0
32 | compressionQuality: 50
33 | spriteMode: 0
34 | spriteExtrude: 1
35 | spriteMeshType: 1
36 | alignment: 0
37 | spritePivot: {x: .5, y: .5}
38 | spriteBorder: {x: 0, y: 0, z: 0, w: 0}
39 | spritePixelsToUnits: 100
40 | alphaIsTransparency: 0
41 | textureType: -1
42 | buildTargetSettings: []
43 | spriteSheet:
44 | sprites: []
45 | spritePackingTag:
46 | userData:
47 |
--------------------------------------------------------------------------------
/Assets/Repo/Player/PlayerMain/Textures/FO_RIM1.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sols11/SFramework/2aecb34fd5adcad0c572c821706fc70b91397ff6/Assets/Repo/Player/PlayerMain/Textures/FO_RIM1.tga
--------------------------------------------------------------------------------
/Assets/Repo/Player/PlayerMain/Textures/FO_RIM1.tga.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: a18067604964b5a4d8fd5552ed0d789e
3 | TextureImporter:
4 | serializedVersion: 2
5 | mipmaps:
6 | mipMapMode: 0
7 | enableMipMap: 1
8 | linearTexture: 0
9 | correctGamma: 0
10 | fadeOut: 0
11 | borderMipMap: 0
12 | mipMapFadeDistanceStart: 1
13 | mipMapFadeDistanceEnd: 3
14 | bumpmap:
15 | convertToNormalMap: 0
16 | externalNormalMap: 0
17 | heightScale: .25
18 | normalMapFilter: 0
19 | isReadable: 0
20 | grayScaleToAlpha: 0
21 | generateCubemap: 0
22 | seamlessCubemap: 0
23 | textureFormat: -1
24 | maxTextureSize: 1024
25 | textureSettings:
26 | filterMode: -1
27 | aniso: -1
28 | mipBias: -1
29 | wrapMode: 1
30 | nPOTScale: 1
31 | lightmap: 0
32 | compressionQuality: 50
33 | spriteMode: 0
34 | spriteExtrude: 1
35 | spriteMeshType: 1
36 | alignment: 0
37 | spritePivot: {x: .5, y: .5}
38 | spriteBorder: {x: 0, y: 0, z: 0, w: 0}
39 | spritePixelsToUnits: 100
40 | alphaIsTransparency: 0
41 | textureType: -1
42 | buildTargetSettings: []
43 | spriteSheet:
44 | sprites: []
45 | spritePackingTag:
46 | userData:
47 |
--------------------------------------------------------------------------------
/Assets/Repo/Player/PlayerMain/Textures/FO_SKIN1.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sols11/SFramework/2aecb34fd5adcad0c572c821706fc70b91397ff6/Assets/Repo/Player/PlayerMain/Textures/FO_SKIN1.tga
--------------------------------------------------------------------------------
/Assets/Repo/Player/PlayerMain/Textures/FO_SKIN1.tga.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: a1d5b2277eb3f6245900378e6fa97575
3 | TextureImporter:
4 | serializedVersion: 2
5 | mipmaps:
6 | mipMapMode: 0
7 | enableMipMap: 1
8 | linearTexture: 0
9 | correctGamma: 0
10 | fadeOut: 0
11 | borderMipMap: 0
12 | mipMapFadeDistanceStart: 1
13 | mipMapFadeDistanceEnd: 3
14 | bumpmap:
15 | convertToNormalMap: 0
16 | externalNormalMap: 0
17 | heightScale: .25
18 | normalMapFilter: 0
19 | isReadable: 0
20 | grayScaleToAlpha: 0
21 | generateCubemap: 0
22 | seamlessCubemap: 0
23 | textureFormat: -1
24 | maxTextureSize: 1024
25 | textureSettings:
26 | filterMode: -1
27 | aniso: -1
28 | mipBias: -1
29 | wrapMode: 1
30 | nPOTScale: 1
31 | lightmap: 0
32 | compressionQuality: 50
33 | spriteMode: 0
34 | spriteExtrude: 1
35 | spriteMeshType: 1
36 | alignment: 0
37 | spritePivot: {x: .5, y: .5}
38 | spriteBorder: {x: 0, y: 0, z: 0, w: 0}
39 | spritePixelsToUnits: 100
40 | alphaIsTransparency: 0
41 | textureType: -1
42 | buildTargetSettings: []
43 | spriteSheet:
44 | sprites: []
45 | spritePackingTag:
46 | userData:
47 |
--------------------------------------------------------------------------------
/Assets/Repo/Player/PlayerMain/ZeroFriction.physicMaterial:
--------------------------------------------------------------------------------
1 | %YAML 1.1
2 | %TAG !u! tag:unity3d.com,2011:
3 | --- !u!134 &13400000
4 | PhysicMaterial:
5 | m_ObjectHideFlags: 0
6 | m_PrefabParentObject: {fileID: 0}
7 | m_PrefabInternal: {fileID: 0}
8 | m_Name: ZeroFriction
9 | dynamicFriction: 0
10 | staticFriction: 0
11 | bounciness: 0
12 | frictionCombine: 1
13 | bounceCombine: 1
14 |
--------------------------------------------------------------------------------
/Assets/Repo/Player/PlayerMain/ZeroFriction.physicMaterial.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: deb55a9e15d00814d8367bda9a50c2c4
3 | timeCreated: 1552811724
4 | licenseType: Free
5 | NativeFormatImporter:
6 | mainObjectFileID: 13400000
7 | userData:
8 | assetBundleName:
9 | assetBundleVariant:
10 |
--------------------------------------------------------------------------------
/Assets/Repo/Prefab.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: c264e9867a5dd864083f5e6c31b2aeff
3 | folderAsset: yes
4 | DefaultImporter:
5 | externalObjects: {}
6 | userData:
7 | assetBundleName:
8 | assetBundleVariant:
9 |
--------------------------------------------------------------------------------
/Assets/Repo/Prefab/Environment.prefab.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 0d15f10ac0415f747a7085a399df660c
3 | timeCreated: 1552658741
4 | licenseType: Free
5 | NativeFormatImporter:
6 | mainObjectFileID: 100100000
7 | userData:
8 | assetBundleName:
9 | assetBundleVariant:
10 |
--------------------------------------------------------------------------------
/Assets/Repo/Prefab/Game Loop.prefab:
--------------------------------------------------------------------------------
1 | %YAML 1.1
2 | %TAG !u! tag:unity3d.com,2011:
3 | --- !u!1001 &100100000
4 | Prefab:
5 | m_ObjectHideFlags: 1
6 | serializedVersion: 2
7 | m_Modification:
8 | m_TransformParent: {fileID: 0}
9 | m_Modifications: []
10 | m_RemovedComponents: []
11 | m_ParentPrefab: {fileID: 0}
12 | m_RootGameObject: {fileID: 1334468725440768}
13 | m_IsPrefabParent: 1
14 | --- !u!1 &1334468725440768
15 | GameObject:
16 | m_ObjectHideFlags: 0
17 | m_PrefabParentObject: {fileID: 0}
18 | m_PrefabInternal: {fileID: 100100000}
19 | serializedVersion: 5
20 | m_Component:
21 | - component: {fileID: 4997904945215938}
22 | - component: {fileID: 114816178146495290}
23 | m_Layer: 0
24 | m_Name: Game Loop
25 | m_TagString: Untagged
26 | m_Icon: {fileID: 0}
27 | m_NavMeshLayer: 0
28 | m_StaticEditorFlags: 0
29 | m_IsActive: 1
30 | --- !u!4 &4997904945215938
31 | Transform:
32 | m_ObjectHideFlags: 1
33 | m_PrefabParentObject: {fileID: 0}
34 | m_PrefabInternal: {fileID: 100100000}
35 | m_GameObject: {fileID: 1334468725440768}
36 | m_LocalRotation: {x: -0, y: -0, z: -0, w: 1}
37 | m_LocalPosition: {x: 0, y: 0, z: 0}
38 | m_LocalScale: {x: 1, y: 1, z: 1}
39 | m_Children: []
40 | m_Father: {fileID: 0}
41 | m_RootOrder: 0
42 | m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
43 | --- !u!114 &114816178146495290
44 | MonoBehaviour:
45 | m_ObjectHideFlags: 1
46 | m_PrefabParentObject: {fileID: 0}
47 | m_PrefabInternal: {fileID: 100100000}
48 | m_GameObject: {fileID: 1334468725440768}
49 | m_Enabled: 1
50 | m_EditorHideFlags: 0
51 | m_Script: {fileID: 11500000, guid: 08654b480edabdd498e3245d27000d46, type: 3}
52 | m_Name:
53 | m_EditorClassIdentifier:
54 | sceneState: 0
55 |
--------------------------------------------------------------------------------
/Assets/Repo/Prefab/Game Loop.prefab.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 65c11b3205bf1d344b20ab32d77a1f83
3 | timeCreated: 1552654817
4 | licenseType: Free
5 | NativeFormatImporter:
6 | mainObjectFileID: 100100000
7 | userData:
8 | assetBundleName:
9 | assetBundleVariant:
10 |
--------------------------------------------------------------------------------
/Assets/Repo/Prefab/LevelCamera.prefab.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 4ac60bcbb26fa3d4a8b22b80ef3d0e5a
3 | timeCreated: 1552654798
4 | licenseType: Free
5 | NativeFormatImporter:
6 | mainObjectFileID: -1
7 | userData:
8 | assetBundleName:
9 | assetBundleVariant:
10 |
--------------------------------------------------------------------------------
/Assets/Repo/Prefab/Light.prefab.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: c4fbd1bd7ec958c4599e5ad96c4453f8
3 | timeCreated: 1552658738
4 | licenseType: Free
5 | NativeFormatImporter:
6 | mainObjectFileID: 100100000
7 | userData:
8 | assetBundleName:
9 | assetBundleVariant:
10 |
--------------------------------------------------------------------------------
/Assets/Repo/UI.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 16ab434af5c302c4e8e3854d6e352847
3 | folderAsset: yes
4 | DefaultImporter:
5 | externalObjects: {}
6 | userData:
7 | assetBundleName:
8 | assetBundleVariant:
9 |
--------------------------------------------------------------------------------
/Assets/Resources.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: b120cc2b9bd739447bbc6579b7e602d4
3 | folderAsset: yes
4 | DefaultImporter:
5 | externalObjects: {}
6 | userData:
7 | assetBundleName:
8 | assetBundleVariant:
9 |
--------------------------------------------------------------------------------
/Assets/Resources/Canvas.prefab.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 9d7bf756a4f9310419dd8e4e8fb3a37d
3 | PrefabImporter:
4 | externalObjects: {}
5 | userData:
6 | assetBundleName:
7 | assetBundleVariant:
8 |
--------------------------------------------------------------------------------
/Assets/Resources/Enemys.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 93aae49daeaa5384eb1bfcb9ac4222c6
3 | folderAsset: yes
4 | DefaultImporter:
5 | externalObjects: {}
6 | userData:
7 | assetBundleName:
8 | assetBundleVariant:
9 |
--------------------------------------------------------------------------------
/Assets/Resources/Fonts.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 9df32d971d82d2e478cb9442ceb4d093
3 | folderAsset: yes
4 | DefaultImporter:
5 | externalObjects: {}
6 | userData:
7 | assetBundleName:
8 | assetBundleVariant:
9 |
--------------------------------------------------------------------------------
/Assets/Resources/Fonts/ARJULIAN.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sols11/SFramework/2aecb34fd5adcad0c572c821706fc70b91397ff6/Assets/Resources/Fonts/ARJULIAN.ttf
--------------------------------------------------------------------------------
/Assets/Resources/Fonts/ARJULIAN.ttf.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: eb459e6994d142647a9c499fd16ef806
3 | TrueTypeFontImporter:
4 | serializedVersion: 2
5 | fontSize: 16
6 | forceTextureCase: -2
7 | characterSpacing: 1
8 | characterPadding: 0
9 | includeFontData: 1
10 | use2xBehaviour: 0
11 | fontNames: []
12 | fallbackFontReferences: []
13 | customCharacters:
14 | fontRenderingMode: 0
15 | userData:
16 | assetBundleName:
17 | assetBundleVariant:
18 |
--------------------------------------------------------------------------------
/Assets/Resources/Fonts/Arial - Black.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sols11/SFramework/2aecb34fd5adcad0c572c821706fc70b91397ff6/Assets/Resources/Fonts/Arial - Black.ttf
--------------------------------------------------------------------------------
/Assets/Resources/Fonts/Arial - Black.ttf.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 332bb757cc1483b4593250529555daa8
3 | timeCreated: 1448940408
4 | licenseType: Store
5 | TrueTypeFontImporter:
6 | serializedVersion: 2
7 | fontSize: 16
8 | forceTextureCase: -2
9 | characterSpacing: 1
10 | characterPadding: 0
11 | includeFontData: 1
12 | use2xBehaviour: 0
13 | fontNames: []
14 | fallbackFontReferences: []
15 | customCharacters:
16 | fontRenderingMode: 0
17 | userData:
18 | assetBundleName:
19 | assetBundleVariant:
20 |
--------------------------------------------------------------------------------
/Assets/Resources/Fonts/Arial - Bold.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sols11/SFramework/2aecb34fd5adcad0c572c821706fc70b91397ff6/Assets/Resources/Fonts/Arial - Bold.ttf
--------------------------------------------------------------------------------
/Assets/Resources/Fonts/Arial - Bold.ttf.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 6f72d563c61066a4dab74d42e2ad1b36
3 | timeCreated: 1428925200
4 | licenseType: Store
5 | TrueTypeFontImporter:
6 | serializedVersion: 2
7 | fontSize: 16
8 | forceTextureCase: -2
9 | characterSpacing: 1
10 | characterPadding: 0
11 | includeFontData: 1
12 | use2xBehaviour: 0
13 | fontNames: []
14 | customCharacters:
15 | fontRenderingMode: 0
16 | userData:
17 | assetBundleName:
18 | assetBundleVariant:
19 |
--------------------------------------------------------------------------------
/Assets/Resources/Fonts/Arial - Regular.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sols11/SFramework/2aecb34fd5adcad0c572c821706fc70b91397ff6/Assets/Resources/Fonts/Arial - Regular.ttf
--------------------------------------------------------------------------------
/Assets/Resources/Fonts/Arial - Regular.ttf.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 64311fa329d621a45a3b0b91104bf98a
3 | timeCreated: 1428925198
4 | licenseType: Store
5 | TrueTypeFontImporter:
6 | serializedVersion: 2
7 | fontSize: 16
8 | forceTextureCase: -2
9 | characterSpacing: 1
10 | characterPadding: 0
11 | includeFontData: 1
12 | use2xBehaviour: 0
13 | fontNames: []
14 | customCharacters:
15 | fontRenderingMode: 0
16 | userData:
17 | assetBundleName:
18 | assetBundleVariant:
19 |
--------------------------------------------------------------------------------
/Assets/Resources/Fonts/Consolas - Bold.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sols11/SFramework/2aecb34fd5adcad0c572c821706fc70b91397ff6/Assets/Resources/Fonts/Consolas - Bold.ttf
--------------------------------------------------------------------------------
/Assets/Resources/Fonts/Consolas - Bold.ttf.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: e88a0fa6137d70749ab2fd22d14a9911
3 | timeCreated: 1428950839
4 | licenseType: Store
5 | TrueTypeFontImporter:
6 | serializedVersion: 2
7 | fontSize: 16
8 | forceTextureCase: -2
9 | characterSpacing: 1
10 | characterPadding: 0
11 | includeFontData: 1
12 | use2xBehaviour: 0
13 | fontNames: []
14 | customCharacters:
15 | fontRenderingMode: 0
16 | userData:
17 | assetBundleName:
18 | assetBundleVariant:
19 |
--------------------------------------------------------------------------------
/Assets/Resources/Fonts/Consolas.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sols11/SFramework/2aecb34fd5adcad0c572c821706fc70b91397ff6/Assets/Resources/Fonts/Consolas.ttf
--------------------------------------------------------------------------------
/Assets/Resources/Fonts/Consolas.ttf.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 4bc109215261f564ab76383e9ad48133
3 | timeCreated: 1428950839
4 | licenseType: Store
5 | TrueTypeFontImporter:
6 | serializedVersion: 2
7 | fontSize: 16
8 | forceTextureCase: -2
9 | characterSpacing: 1
10 | characterPadding: 0
11 | includeFontData: 1
12 | use2xBehaviour: 0
13 | fontNames: []
14 | customCharacters:
15 | fontRenderingMode: 0
16 | userData:
17 | assetBundleName:
18 | assetBundleVariant:
19 |
--------------------------------------------------------------------------------
/Assets/Resources/Fonts/FZYH.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sols11/SFramework/2aecb34fd5adcad0c572c821706fc70b91397ff6/Assets/Resources/Fonts/FZYH.ttf
--------------------------------------------------------------------------------
/Assets/Resources/Fonts/FZYH.ttf.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: d8cd4cc5321fe5444bf5caaa6f65b1d2
3 | timeCreated: 1500386187
4 | licenseType: Pro
5 | TrueTypeFontImporter:
6 | serializedVersion: 4
7 | fontSize: 16
8 | forceTextureCase: -2
9 | characterSpacing: 0
10 | characterPadding: 1
11 | includeFontData: 1
12 | fontName: FZYiHei-M20S
13 | fontNames:
14 | - FZYiHei-M20S
15 | fallbackFontReferences: []
16 | customCharacters:
17 | fontRenderingMode: 0
18 | ascentCalculationMode: 1
19 | userData:
20 | assetBundleName:
21 | assetBundleVariant:
22 |
--------------------------------------------------------------------------------
/Assets/Resources/Fonts/MicrosoftYaHeiMini.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sols11/SFramework/2aecb34fd5adcad0c572c821706fc70b91397ff6/Assets/Resources/Fonts/MicrosoftYaHeiMini.ttf
--------------------------------------------------------------------------------
/Assets/Resources/Fonts/MicrosoftYaHeiMini.ttf.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: df2007c32c3e38b41bd5659dc3036bca
3 | timeCreated: 1552660306
4 | licenseType: Free
5 | TrueTypeFontImporter:
6 | serializedVersion: 4
7 | fontSize: 16
8 | forceTextureCase: -2
9 | characterSpacing: 0
10 | characterPadding: 1
11 | includeFontData: 1
12 | fontName: Microsoft YaHei
13 | fontNames:
14 | - Microsoft YaHei
15 | fallbackFontReferences: []
16 | customCharacters:
17 | fontRenderingMode: 0
18 | ascentCalculationMode: 1
19 | useLegacyBoundsCalculation: 0
20 | userData:
21 | assetBundleName:
22 | assetBundleVariant:
23 |
--------------------------------------------------------------------------------
/Assets/Resources/Fonts/constan.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sols11/SFramework/2aecb34fd5adcad0c572c821706fc70b91397ff6/Assets/Resources/Fonts/constan.ttf
--------------------------------------------------------------------------------
/Assets/Resources/Fonts/constan.ttf.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 53b59257c0e991345a681cfc10624b5e
3 | TrueTypeFontImporter:
4 | serializedVersion: 4
5 | fontSize: 16
6 | forceTextureCase: -2
7 | characterSpacing: 0
8 | characterPadding: 1
9 | includeFontData: 1
10 | fontName:
11 | fontNames: []
12 | fallbackFontReferences: []
13 | customCharacters:
14 | fontRenderingMode: 0
15 | ascentCalculationMode: 1
16 | userData:
17 | assetBundleName:
18 | assetBundleVariant:
19 |
--------------------------------------------------------------------------------
/Assets/Resources/Icons.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 577361e12297a204fb587a8052227672
3 | folderAsset: yes
4 | timeCreated: 1552792218
5 | licenseType: Free
6 | DefaultImporter:
7 | userData:
8 | assetBundleName:
9 | assetBundleVariant:
10 |
--------------------------------------------------------------------------------
/Assets/Resources/Musics.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: b6306eb2e851c234687b290353988781
3 | folderAsset: yes
4 | DefaultImporter:
5 | externalObjects: {}
6 | userData:
7 | assetBundleName:
8 | assetBundleVariant:
9 |
--------------------------------------------------------------------------------
/Assets/Resources/Musics/WhiteLie.mp3:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sols11/SFramework/2aecb34fd5adcad0c572c821706fc70b91397ff6/Assets/Resources/Musics/WhiteLie.mp3
--------------------------------------------------------------------------------
/Assets/Resources/Musics/WhiteLie.mp3.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: dd58dbfe107a38a48a09a2f11d94df0c
3 | AudioImporter:
4 | externalObjects: {}
5 | serializedVersion: 6
6 | defaultSettings:
7 | loadType: 0
8 | sampleRateSetting: 0
9 | sampleRateOverride: 44100
10 | compressionFormat: 1
11 | quality: 1
12 | conversionMode: 0
13 | platformSettingOverrides: {}
14 | forceToMono: 0
15 | normalize: 1
16 | preloadAudioData: 1
17 | loadInBackground: 0
18 | ambisonic: 0
19 | 3D: 1
20 | userData:
21 | assetBundleName:
22 | assetBundleVariant:
23 |
--------------------------------------------------------------------------------
/Assets/Resources/Particles.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: d3f090dcd40e24b4ab3fa06dd3bdd0e2
3 | folderAsset: yes
4 | DefaultImporter:
5 | externalObjects: {}
6 | userData:
7 | assetBundleName:
8 | assetBundleVariant:
9 |
--------------------------------------------------------------------------------
/Assets/Resources/Players.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 810eb41e3f1377543ab6f5f5118862f7
3 | folderAsset: yes
4 | DefaultImporter:
5 | externalObjects: {}
6 | userData:
7 | assetBundleName:
8 | assetBundleVariant:
9 |
--------------------------------------------------------------------------------
/Assets/Resources/Players/Player.prefab.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 08124ed7f849d0142af0d9bd3fbfd223
3 | timeCreated: 1552797511
4 | licenseType: Free
5 | NativeFormatImporter:
6 | mainObjectFileID: 100100000
7 | userData:
8 | assetBundleName:
9 | assetBundleVariant:
10 |
--------------------------------------------------------------------------------
/Assets/Resources/UI.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: cf406d3d2c1290545a302816deb9d474
3 | folderAsset: yes
4 | DefaultImporter:
5 | externalObjects: {}
6 | userData:
7 | assetBundleName:
8 | assetBundleVariant:
9 |
--------------------------------------------------------------------------------
/Assets/Resources/UI/FadeIn.prefab.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 40586768a5115e64fa154ec75ef9a4e0
3 | timeCreated: 1552802276
4 | licenseType: Free
5 | NativeFormatImporter:
6 | mainObjectFileID: -1
7 | userData:
8 | assetBundleName:
9 | assetBundleVariant:
10 |
--------------------------------------------------------------------------------
/Assets/Resources/UI/FadeInWhite.prefab.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 3a101f98f562b394a9a7df2b702cc105
3 | timeCreated: 1552802276
4 | licenseType: Free
5 | NativeFormatImporter:
6 | mainObjectFileID: -1
7 | userData:
8 | assetBundleName:
9 | assetBundleVariant:
10 |
--------------------------------------------------------------------------------
/Assets/Resources/UI/FadeOut.prefab.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: b2d89a5efc6fbee4593bff64d6862a47
3 | timeCreated: 1552802276
4 | licenseType: Free
5 | NativeFormatImporter:
6 | mainObjectFileID: -1
7 | userData:
8 | assetBundleName:
9 | assetBundleVariant:
10 |
--------------------------------------------------------------------------------
/Assets/Resources/UI/FadeOutWhite.prefab.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 15d6e38f51d81cf46b48a5fecf3d53f5
3 | timeCreated: 1552802276
4 | licenseType: Free
5 | NativeFormatImporter:
6 | mainObjectFileID: -1
7 | userData:
8 | assetBundleName:
9 | assetBundleVariant:
10 |
--------------------------------------------------------------------------------
/Assets/Save.xml:
--------------------------------------------------------------------------------
1 | c6463cc20943c6b24d36eb2a0d13fb8e31cba603我1100trueIcons\Weapon\Katana太刀精心加工而成的太刀,用各种方式斩杀怪物都不会有问题false60300020000Decoration3-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1
--------------------------------------------------------------------------------
/Assets/Save.xml.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 61244a5b03dd70a4eb969eb78d40ed63
3 | timeCreated: 1552810721
4 | licenseType: Free
5 | TextScriptImporter:
6 | userData:
7 | assetBundleName:
8 | assetBundleVariant:
9 |
--------------------------------------------------------------------------------
/Assets/Scenes.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: bb75b02c50312b7468302655667e7653
3 | folderAsset: yes
4 | DefaultImporter:
5 | externalObjects: {}
6 | userData:
7 | assetBundleName:
8 | assetBundleVariant:
9 |
--------------------------------------------------------------------------------
/Assets/Scenes/Start.unity.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 16fd83b5b477bbe4488dae25dfbf8dfe
3 | DefaultImporter:
4 | externalObjects: {}
5 | userData:
6 | assetBundleName:
7 | assetBundleVariant:
8 |
--------------------------------------------------------------------------------
/Assets/Scripts.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: f794b2847965bcc4eb53e6c2d1fda0c1
3 | folderAsset: yes
4 | DefaultImporter:
5 | externalObjects: {}
6 | userData:
7 | assetBundleName:
8 | assetBundleVariant:
9 |
--------------------------------------------------------------------------------
/Assets/Scripts/Editor.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 19152f30a080e374084734985d3e28a1
3 | folderAsset: yes
4 | DefaultImporter:
5 | externalObjects: {}
6 | userData:
7 | assetBundleName:
8 | assetBundleVariant:
9 |
--------------------------------------------------------------------------------
/Assets/Scripts/ProjectScript.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 4feac24d5f879c142b03f8aee15efa45
3 | folderAsset: yes
4 | DefaultImporter:
5 | externalObjects: {}
6 | userData:
7 | assetBundleName:
8 | assetBundleVariant:
9 |
--------------------------------------------------------------------------------
/Assets/Scripts/ProjectScript/Enemy.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 7ca47fb047d26be45bf8e18f8c747923
3 | folderAsset: yes
4 | DefaultImporter:
5 | externalObjects: {}
6 | userData:
7 | assetBundleName:
8 | assetBundleVariant:
9 |
--------------------------------------------------------------------------------
/Assets/Scripts/ProjectScript/Player.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 280888f9dfef2b948b77501b1cc71e72
3 | folderAsset: yes
4 | DefaultImporter:
5 | externalObjects: {}
6 | userData:
7 | assetBundleName:
8 | assetBundleVariant:
9 |
--------------------------------------------------------------------------------
/Assets/Scripts/ProjectScript/Player/PlayerMain.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 73d3f8922facdca4f9f2bb678a321385
3 | MonoImporter:
4 | externalObjects: {}
5 | serializedVersion: 2
6 | defaultReferences: []
7 | executionOrder: 0
8 | icon: {instanceID: 0}
9 | userData:
10 | assetBundleName:
11 | assetBundleVariant:
12 |
--------------------------------------------------------------------------------
/Assets/Scripts/ProjectScript/Player/PlayerMainMono.cs:
--------------------------------------------------------------------------------
1 | /*----------------------------------------------------------------------------
2 | Author:
3 | Anotts
4 | Date:
5 | 2017/08/01
6 | Description:
7 | 简介:挂载在Player上的mono脚本
8 | 作用:通常是为了封装动画帧事件和物理引擎而编写
9 | 使用:
10 | 补充:
11 | History:
12 | ----------------------------------------------------------------------------*/
13 |
14 | using System.Collections;
15 | using System.Collections.Generic;
16 | using UnityEngine;
17 | using SFramework;
18 |
19 | namespace DreamKeeper
20 | {
21 | public class PlayerMainMono : IPlayerMono
22 | {
23 | // 暂时没有要执行的
24 | }
25 | }
26 |
--------------------------------------------------------------------------------
/Assets/Scripts/ProjectScript/Player/PlayerMainMono.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 66a45acb4bdb5c84584287273172bd6e
3 | timeCreated: 1552797562
4 | licenseType: Free
5 | MonoImporter:
6 | serializedVersion: 2
7 | defaultReferences: []
8 | executionOrder: 0
9 | icon: {instanceID: 0}
10 | userData:
11 | assetBundleName:
12 | assetBundleVariant:
13 |
--------------------------------------------------------------------------------
/Assets/Scripts/ProjectScript/Scene.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 09b05ec2124448147b348a6aca3b0d69
3 | folderAsset: yes
4 | DefaultImporter:
5 | externalObjects: {}
6 | userData:
7 | assetBundleName:
8 | assetBundleVariant:
9 |
--------------------------------------------------------------------------------
/Assets/Scripts/ProjectScript/SceneState.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: c017915ba2639d64fb7b8c7cc0ee457b
3 | folderAsset: yes
4 | DefaultImporter:
5 | externalObjects: {}
6 | userData:
7 | assetBundleName:
8 | assetBundleVariant:
9 |
--------------------------------------------------------------------------------
/Assets/Scripts/ProjectScript/UI.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: b0cae87874b519747a67ca918cf12279
3 | folderAsset: yes
4 | DefaultImporter:
5 | externalObjects: {}
6 | userData:
7 | assetBundleName:
8 | assetBundleVariant:
9 |
--------------------------------------------------------------------------------
/Assets/Scripts/ProjectScript/UI/UIFadeIn.cs:
--------------------------------------------------------------------------------
1 | /*----------------------------------------------------------------------------
2 | Author:
3 | Anotts
4 | Date:
5 | 2017/08/01
6 | Description:
7 | 简介:简单的淡入效果
8 | 作用:
9 | 使用:
10 | 补充:
11 | History:
12 | ----------------------------------------------------------------------------*/
13 |
14 | using UnityEngine;
15 | using SFramework;
16 | using UnityEngine.UI;
17 |
18 | namespace ProjectScript
19 | {
20 | public class UIFadeIn : ViewBase
21 | {
22 | private float fadeSpeed = 0.5f;
23 | private Image image;
24 | private Color color;
25 | private bool isFading = true;
26 |
27 | private void Awake()
28 | {
29 | base.UIForm_Type = UIFormType.PopUp;
30 | base.UIForm_ShowMode = UIFormShowMode.ReverseChange;
31 | base.UIForm_LucencyType = UIFormLucenyType.Lucency;
32 | image = GetComponent();
33 | color = image.color;
34 | }
35 |
36 | private void Update()
37 | {
38 | if (isFading)
39 | {
40 | if (color.a < 1)
41 | {
42 | color.a += Time.deltaTime * fadeSpeed;
43 | image.color = color;
44 | }
45 | else
46 | {
47 | isFading = false;
48 | }
49 | }
50 | }
51 | }
52 | }
--------------------------------------------------------------------------------
/Assets/Scripts/ProjectScript/UI/UIFadeIn.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 241b5850dc2f0814fb9d12ec2bf38ccb
3 | timeCreated: 1552802324
4 | licenseType: Free
5 | MonoImporter:
6 | serializedVersion: 2
7 | defaultReferences: []
8 | executionOrder: 0
9 | icon: {instanceID: 0}
10 | userData:
11 | assetBundleName:
12 | assetBundleVariant:
13 |
--------------------------------------------------------------------------------
/Assets/Scripts/ProjectScript/UI/UIFadeOut.cs:
--------------------------------------------------------------------------------
1 | /*----------------------------------------------------------------------------
2 | Author:
3 | Anotts
4 | Date:
5 | 2017/08/01
6 | Description:
7 | 简介:简单的淡出效果
8 | 作用:
9 | 使用:
10 | 补充:
11 | History:
12 | ----------------------------------------------------------------------------*/
13 |
14 | using UnityEngine;
15 | using SFramework;
16 | using UnityEngine.UI;
17 |
18 | namespace ProjectScript
19 | {
20 | public class UIFadeOut : ViewBase
21 | {
22 | private float fadeSpeed = 0.5f;
23 | private Image image;
24 | private Color color;
25 | private bool isFading = true;
26 |
27 | private void Awake()
28 | {
29 | base.UIForm_Type = UIFormType.PopUp;
30 | base.UIForm_ShowMode = UIFormShowMode.ReverseChange;
31 | base.UIForm_LucencyType = UIFormLucenyType.Lucency;
32 | image = GetComponent();
33 | color = image.color;
34 | }
35 |
36 | private void Update()
37 | {
38 | if (isFading)
39 | {
40 | if (color.a > 0)
41 | {
42 | color.a -= Time.deltaTime * fadeSpeed;
43 | image.color = color;
44 | }
45 | else
46 | {
47 | isFading = false;
48 | GameMainProgram.Instance.uiManager.CloseUIForms("FadeOut");
49 | GameMainProgram.Instance.uiManager.CloseUIForms("FadeOutWhite");
50 | Destroy(gameObject);
51 | }
52 | }
53 | }
54 | }
55 | }
--------------------------------------------------------------------------------
/Assets/Scripts/ProjectScript/UI/UIFadeOut.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: cd7423b290408ed4883818eef6c753bd
3 | timeCreated: 1552802324
4 | licenseType: Free
5 | MonoImporter:
6 | serializedVersion: 2
7 | defaultReferences: []
8 | executionOrder: 0
9 | icon: {instanceID: 0}
10 | userData:
11 | assetBundleName:
12 | assetBundleVariant:
13 |
--------------------------------------------------------------------------------
/Assets/Scripts/SFramework.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 14972c76ee9360740a59ba1d660419d8
3 | folderAsset: yes
4 | DefaultImporter:
5 | externalObjects: {}
6 | userData:
7 | assetBundleName:
8 | assetBundleVariant:
9 |
--------------------------------------------------------------------------------
/Assets/Scripts/SFramework/Character.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 77a58d04dad80b74ca29b235ad9e3b9b
3 | folderAsset: yes
4 | timeCreated: 1494418708
5 | licenseType: Pro
6 | DefaultImporter:
7 | userData:
8 | assetBundleName:
9 | assetBundleVariant:
10 |
--------------------------------------------------------------------------------
/Assets/Scripts/SFramework/Character/EnemyHurtAttr.cs:
--------------------------------------------------------------------------------
1 | using System.Collections;
2 | using System.Collections.Generic;
3 | using UnityEngine;
4 |
5 | namespace SFramework
6 | {
7 | ///
8 | /// 传参给Enemy受伤的属性类
9 | ///
10 | public class EnemyHurtAttr
11 | {
12 | public int Attack { get; set; }
13 | public float VelocityForward { get; set; }
14 | public float VelocityVertical { get; set; }
15 | public Vector3 TransformForward { get; set; }
16 |
17 | public EnemyHurtAttr()
18 | { }
19 |
20 | public void ModifyAttr(int attack, float velocityForward, float velocityVertical,Vector3 transformForward)
21 | {
22 | Attack = attack;
23 | VelocityForward = velocityForward;
24 | VelocityVertical = velocityVertical;
25 | TransformForward = transformForward;
26 | }
27 | }
28 | }
--------------------------------------------------------------------------------
/Assets/Scripts/SFramework/Character/EnemyHurtAttr.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 67bc2c5a8b427de4faa3d91fb8c01cfa
3 | timeCreated: 1495350150
4 | licenseType: Pro
5 | MonoImporter:
6 | serializedVersion: 2
7 | defaultReferences: []
8 | executionOrder: 0
9 | icon: {instanceID: 0}
10 | userData:
11 | assetBundleName:
12 | assetBundleVariant:
13 |
--------------------------------------------------------------------------------
/Assets/Scripts/SFramework/Character/EnemyMediator.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using UnityEngine;
3 |
4 | namespace SFramework
5 | {
6 | ///
7 | /// IEnemy,IEnemyMono,IEnemyWeapon3个关联类的中介者
8 | /// 负责更换装备
9 | ///
10 | public class EnemyMediator
11 | {
12 | public IEnemy Enemy { get; set; }
13 | public IEnemyMono EnemyMono { get; set; }
14 | public IEnemyWeapon EnemyWeapon { get; set; }
15 | public IEquip WeaponData { get; set; } // 和PlayerMediator不同的是,Enemy没有Fit[],所以需要专门存储武器和防具
16 |
17 | public EnemyMediator(IEnemy enemy)
18 | {
19 | Enemy = enemy;
20 | }
21 |
22 | public void Initialize()
23 | {
24 | // 默认装备,可以在后续修改其对象
25 | EnemyMono = Enemy.GameObjectInScene.GetComponent();
26 | if (EnemyMono != null)
27 | {
28 | EnemyMono.EnemyMedi = this;
29 | EnemyMono.AnimatorComponent = Enemy.animator;
30 | EnemyMono.Rgbd = Enemy.Rgbd;
31 | EnemyWeapon = EnemyMono.iEnemyWeapon;
32 | EnemyMono.Initialize();
33 | if (EnemyWeapon != null)
34 | {
35 | EnemyWeapon.EnemyMedi = this;
36 | EnemyWeapon.Initialize();
37 | EnemyMono.WeaponCollider = EnemyWeapon.WeaponCollider;
38 | }
39 | else
40 | Debug.LogError("iEnemyWeapon未赋值");
41 | }
42 |
43 | UpdateEnemyWeapon(EnemyMono.iEnemyWeapon);
44 | }
45 |
46 |
47 | ///
48 | /// 设置WeaponData,使用的是装备的武器
49 | /// 就目前的实现来说,所有Weapon对象均共用同一个IWeaponMono,所以初始化时关联一个默认Weapon,切换武器时切换Weapon对象即可
50 | ///
51 | ///
52 | public void UpdateEnemyWeapon(IEnemyWeapon enemyWeapon)
53 | {
54 |
55 | }
56 | }
57 |
58 |
59 | }
60 |
61 |
--------------------------------------------------------------------------------
/Assets/Scripts/SFramework/Character/EnemyMediator.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: a6f31241d803ab44a920bf71d29c0134
3 | timeCreated: 1500819512
4 | licenseType: Pro
5 | MonoImporter:
6 | serializedVersion: 2
7 | defaultReferences: []
8 | executionOrder: 0
9 | icon: {instanceID: 0}
10 | userData:
11 | assetBundleName:
12 | assetBundleVariant:
13 |
--------------------------------------------------------------------------------
/Assets/Scripts/SFramework/Character/EnemyMgr.cs:
--------------------------------------------------------------------------------
1 | /*----------------------------------------------------------------------------
2 | Author:
3 | Anotts
4 | Date:
5 | 2017/08/01
6 | Description:
7 | 简介:敌方角色控制系统
8 | 作用:存储整个场景中的所有Enemy,负责敌方角色的创建,管理,删除
9 | 使用:调用接口
10 | 补充:
11 | History:
12 | ----------------------------------------------------------------------------*/
13 |
14 | using System.Collections;
15 | using System.Collections.Generic;
16 | using UnityEngine;
17 |
18 | namespace SFramework
19 | {
20 | ///
21 | /// 敌人控制系统
22 | ///
23 | public class EnemyMgr : IGameMgr
24 | {
25 | private List enemysInScene;
26 |
27 | public EnemyMgr(GameMainProgram gameMain) : base(gameMain)
28 | {
29 | enemysInScene = new List();
30 | }
31 |
32 | public override void Initialize()
33 | {
34 | gameMain.eventMgr.StartListening(EventName.PlayerDead, NotifyPlayerDead);
35 | }
36 | public override void Release()
37 | {
38 | foreach (IEnemy e in enemysInScene)
39 | {
40 | if (e != null)
41 | e.Release();
42 | }
43 | enemysInScene.Clear();
44 | gameMain.eventMgr.StopListening(EventName.PlayerDead, NotifyPlayerDead);
45 | }
46 | public override void FixedUpdate()
47 | {
48 | foreach (IEnemy e in enemysInScene)
49 | e.FixedUpdate();
50 | }
51 | public override void Update()
52 | {
53 | foreach (IEnemy e in enemysInScene)
54 | e.Update();
55 | }
56 | public void NotifyPlayerDead()
57 | {
58 | foreach (IEnemy e in enemysInScene)
59 | e.WhenPlayerDead();
60 | }
61 |
62 | ///
63 | /// 加入Enemy并初始化
64 | ///
65 | ///
66 | public void AddEnemy(IEnemy _enemy)
67 | {
68 | if (_enemy != null)
69 | {
70 | enemysInScene.Add(_enemy);
71 | _enemy.Initialize();
72 | }
73 | }
74 |
75 | ///
76 | /// 删除Enemy并释放
77 | ///
78 | ///
79 | private void RemoveEnemy(IEnemy _enemy)
80 | {
81 | if (_enemy != null)
82 | {
83 | enemysInScene.Remove(_enemy);
84 | _enemy.Release();
85 | }
86 | }
87 |
88 | }
89 | }
--------------------------------------------------------------------------------
/Assets/Scripts/SFramework/Character/EnemyMgr.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 92ce1767b49f50048ad21d4de97ec135
3 | timeCreated: 1495348712
4 | licenseType: Pro
5 | MonoImporter:
6 | serializedVersion: 2
7 | defaultReferences: []
8 | executionOrder: 0
9 | icon: {instanceID: 0}
10 | userData:
11 | assetBundleName:
12 | assetBundleVariant:
13 |
--------------------------------------------------------------------------------
/Assets/Scripts/SFramework/Character/ICharacter.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: eb083fce5b9169149addf8803b70bf9c
3 | timeCreated: 1494418718
4 | licenseType: Pro
5 | MonoImporter:
6 | serializedVersion: 2
7 | defaultReferences: []
8 | executionOrder: 0
9 | icon: {instanceID: 0}
10 | userData:
11 | assetBundleName:
12 | assetBundleVariant:
13 |
--------------------------------------------------------------------------------
/Assets/Scripts/SFramework/Character/ICharacterMono.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 4897fbf1d6d53f146952ef0945e0dfe6
3 | timeCreated: 1499915190
4 | licenseType: Pro
5 | MonoImporter:
6 | serializedVersion: 2
7 | defaultReferences: []
8 | executionOrder: 0
9 | icon: {instanceID: 0}
10 | userData:
11 | assetBundleName:
12 | assetBundleVariant:
13 |
--------------------------------------------------------------------------------
/Assets/Scripts/SFramework/Character/IEnemy.cs:
--------------------------------------------------------------------------------
1 | using System.Collections;
2 | using System.Collections.Generic;
3 | using UnityEngine;
4 | using UnityEngine.AI;
5 |
6 | namespace SFramework
7 | {
8 | ///
9 | /// + Enemy的所有属性
10 | ///
11 | public class IEnemy : ICharacter
12 | {
13 | protected EnemyMediator EnemyMedi { get; set; }
14 |
15 | public IEnemy(GameObject gameObject):base(gameObject)
16 | {
17 | if (GameObjectInScene != null)
18 | {
19 | animator = GameObjectInScene.GetComponent();
20 | Rgbd = GameObjectInScene.GetComponent();
21 | // 关联中介者
22 | EnemyMedi = new EnemyMediator(this);
23 | EnemyMedi.Initialize();
24 | }
25 | }
26 |
27 | public override void Release()
28 | {
29 | EnemyMedi.EnemyMono.Release(); // 先释放再销毁
30 | if (GameObjectInScene != null)
31 | GameObject.Destroy(GameObjectInScene);
32 | }
33 | public virtual EnemyAction Hurt(EnemyHurtAttr enemyHurtAttr)
34 | {
35 | return EnemyAction.Hurt;
36 | }
37 |
38 | public virtual void WhenPlayerDead()
39 | {
40 | }
41 | }
42 | }
43 |
--------------------------------------------------------------------------------
/Assets/Scripts/SFramework/Character/IEnemy.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: c42c48f66aee3aa44b95a0a955c1893e
3 | timeCreated: 1495185629
4 | licenseType: Pro
5 | MonoImporter:
6 | serializedVersion: 2
7 | defaultReferences: []
8 | executionOrder: 0
9 | icon: {instanceID: 0}
10 | userData:
11 | assetBundleName:
12 | assetBundleVariant:
13 |
--------------------------------------------------------------------------------
/Assets/Scripts/SFramework/Character/IEnemyMono.cs:
--------------------------------------------------------------------------------
1 | using System.Collections;
2 | using System.Collections.Generic;
3 | using UnityEngine;
4 | using UnityEngine.AI;
5 |
6 | namespace SFramework
7 | {
8 | ///
9 | ///+ iEnemyWeapon 预制属性,进行初始化
10 | ///+ EnemyMediator
11 | ///+ 动画事件
12 | ///+ Target 导航目标
13 | ///由EnemyMediator初始化,不使用Mono生命周期
14 | ///Enemy的MonoBehaviour脚本,用于武器碰撞检测、动画事件和行为树控制
15 | ///
16 | public class IEnemyMono : ICharacterMono
17 | {
18 | public string targetTag = "Player";
19 | public IEnemyWeapon iEnemyWeapon; //在预制时赋好的变量,与武器引用
20 |
21 | public EnemyMediator EnemyMedi { get; set; }
22 | public Transform Target { get; set; }
23 |
24 | public override void Initialize()
25 | {
26 | base.Initialize();
27 | FindTarget();
28 |
29 | }
30 | public override void Release()
31 | {
32 | iEnemyWeapon.Release();
33 | }
34 |
35 | private void Update()
36 | {
37 | if (Target == null)
38 | FindTarget();
39 | }
40 |
41 | ///
42 | /// 封装iEnemy成员,不要直接使用iEnemy
43 | ///
44 | ///
45 | public virtual EnemyAction Hurt(EnemyHurtAttr enemyHurtAttr)
46 | {
47 | return EnemyMedi.Enemy.Hurt(enemyHurtAttr);
48 | }
49 |
50 | ///
51 | /// findTagTarget
52 | ///
53 | public void FindTarget()
54 | {
55 | var targetObj = GameObject.FindGameObjectWithTag(targetTag);
56 | if (targetObj)
57 | Target = targetObj.transform;
58 | }
59 |
60 | }
61 | }
--------------------------------------------------------------------------------
/Assets/Scripts/SFramework/Character/IEnemyMono.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 5f788afe4e768574595e67972b61a4d8
3 | timeCreated: 1495372194
4 | licenseType: Pro
5 | MonoImporter:
6 | serializedVersion: 2
7 | defaultReferences: []
8 | executionOrder: 0
9 | icon: {instanceID: 0}
10 | userData:
11 | assetBundleName:
12 | assetBundleVariant:
13 |
--------------------------------------------------------------------------------
/Assets/Scripts/SFramework/Character/INPC.cs:
--------------------------------------------------------------------------------
1 | using UnityEngine;
2 |
3 | namespace SFramework
4 | {
5 | ///
6 | /// NPC基类,NPC都会说话,无声音,不移动,动态添加到场景,以Prefab形式保存
7 | ///
8 | public abstract class INPC:MonoBehaviour
9 | {
10 | public Animator AnimatorComponent { get; protected set; }
11 |
12 | protected string dialogKey = string.Empty;
13 | protected float maxDistance = 2;
14 | protected IPlayer player;
15 | protected Transform playerTransform;
16 | protected GameMainProgram gameMainProgram;
17 |
18 | ///
19 | /// 初始化和释放由NpcMgr调用
20 | ///
21 | public virtual void Initialize()
22 | {
23 | gameMainProgram=GameMainProgram.Instance;
24 | AnimatorComponent = gameObject.GetComponent();
25 | // Npc的生成应该在Player之后
26 | player = GameMainProgram.Instance.playerMgr.CurrentPlayer;
27 | if (player != null)
28 | playerTransform = player.GameObjectInScene.transform;
29 | else
30 | Debug.LogError("未能获取到Player");
31 | }
32 |
33 | public virtual void Release()
34 | {
35 | Destroy(gameObject);
36 | }
37 |
38 | public virtual void OnUpdate()
39 | {
40 | if (player == null)
41 | {
42 | player = gameMainProgram.playerMgr.CurrentPlayer;
43 | if (player != null)
44 | playerTransform = player.GameObjectInScene.transform;
45 | }
46 | if (!UIDialog.IsTalking)
47 | {
48 | if (playerTransform == null)
49 | return;
50 | if (Vector3.Distance(playerTransform.position, transform.position) > maxDistance)
51 | return;
52 | //if(gameMainProgram.courseMgr.normalMenuOpen) // 如果暂停菜单打开着,那么不对话
53 | return;
54 | // 在半径为maxDistance的圆范围内时检测输入
55 | if (Input.GetButtonDown("Attack1"))
56 | {
57 | // 对话并禁止移动
58 | UIDialog.IsTalking = true;
59 | gameMainProgram.playerMgr.CurrentPlayer.CanMove = false;
60 | //转向,懒得做,因为禁止移动做的都不好 gameMainProgram.playerMgr.CurrentPlayer.GameObjectInScene.transform.rotation
61 | gameMainProgram.dialogMgr.StartDialog(dialogKey, OnDialogComplete);
62 | }
63 | }
64 | }
65 |
66 | ///
67 | /// 对话结束时的事件
68 | ///
69 | protected virtual void OnDialogComplete()
70 | {
71 | UIDialog.IsTalking = false;
72 | }
73 |
74 | }
75 | }
76 |
--------------------------------------------------------------------------------
/Assets/Scripts/SFramework/Character/INPC.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 471d223d339c3ed4487d88723309086c
3 | timeCreated: 1504016531
4 | licenseType: Pro
5 | MonoImporter:
6 | serializedVersion: 2
7 | defaultReferences: []
8 | executionOrder: 0
9 | icon: {instanceID: 0}
10 | userData:
11 | assetBundleName:
12 | assetBundleVariant:
13 |
--------------------------------------------------------------------------------
/Assets/Scripts/SFramework/Character/IPlayer.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 8136955162ebe6948a8bc904853f5077
3 | timeCreated: 1495108520
4 | licenseType: Pro
5 | MonoImporter:
6 | serializedVersion: 2
7 | defaultReferences: []
8 | executionOrder: 0
9 | icon: {instanceID: 0}
10 | userData:
11 | assetBundleName:
12 | assetBundleVariant:
13 |
--------------------------------------------------------------------------------
/Assets/Scripts/SFramework/Character/IPlayerMono.cs:
--------------------------------------------------------------------------------
1 | /*----------------------------------------------------------------------------
2 | Author:
3 | Anotts
4 | Date:
5 | 2017/08/01
6 | Description:
7 | 简介:
8 | 作用:
9 | 使用:
10 | 补充:
11 | History:
12 | ----------------------------------------------------------------------------*/
13 |
14 | using System.Collections;
15 | using System.Collections.Generic;
16 | using UnityEngine;
17 |
18 | namespace SFramework
19 | {
20 | ///
21 | ///+ iPlayerWeapon 预制属性,进行初始化
22 | ///+ PlayerMediator
23 | ///+ 动画事件
24 | ///由PlayerMediator初始化,不使用Mono生命周期
25 | ///Player的MonoBehaviour脚本,用于武器碰撞检测和动画事件
26 | ///
27 | public abstract class IPlayerMono : ICharacterMono
28 | {
29 | public IPlayerWeapon iPlayerWeapon; //在预制时赋好的变量
30 | protected AnimatorStateInfo stateInfo;
31 | public PlayerMediator PlayerMedi { get; set; }
32 |
33 | ///
34 | /// Release也不会删除GO。
35 | ///
36 | public override void Release()
37 | {
38 | iPlayerWeapon.Release();
39 | }
40 |
41 | ///
42 | /// 提供给EnemyAttack调用
43 | ///
44 | ///
45 | public virtual void Hurt(PlayerHurtAttr _playerHurtAttr)
46 | {
47 | PlayerMedi.Player.Hurt(_playerHurtAttr);
48 | }
49 |
50 | ///
51 | /// 因为Animator不能在AnimationCurve设定所以只好用帧事件
52 | ///
53 | public virtual void AnimatorRootMotion(int open)
54 | {
55 | if(open==1)
56 | AnimatorComponent.applyRootMotion=true;
57 | else
58 | AnimatorComponent.applyRootMotion =false;
59 | }
60 | }
61 | }
--------------------------------------------------------------------------------
/Assets/Scripts/SFramework/Character/IPlayerMono.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 4f36830de1a7b2c4ca79a63e1dbbd350
3 | timeCreated: 1498097125
4 | licenseType: Pro
5 | MonoImporter:
6 | serializedVersion: 2
7 | defaultReferences: []
8 | executionOrder: 0
9 | icon: {instanceID: 0}
10 | userData:
11 | assetBundleName:
12 | assetBundleVariant:
13 |
--------------------------------------------------------------------------------
/Assets/Scripts/SFramework/Character/PlayerHurtAttr.cs:
--------------------------------------------------------------------------------
1 | /*----------------------------------------------------------------------------
2 | Author:
3 | Anotts
4 | Date:
5 | 2017/08/01
6 | Description:
7 | 简介:
8 | 作用:
9 | 使用:
10 | 补充:
11 | History:
12 | ----------------------------------------------------------------------------*/
13 |
14 | using System.Collections;
15 | using System.Collections.Generic;
16 | using UnityEngine;
17 |
18 | namespace SFramework
19 | {
20 | ///
21 | /// 传参给Player受伤的属性类
22 | ///
23 | public class PlayerHurtAttr
24 | {
25 | public int Attack { get; set; }
26 | public float VelocityForward { get; set; }
27 | public float VelocityVertical { get; set; }
28 | public Vector3 TransformForward { get; set; }
29 | public bool CanDefeatedFly { get; set; }
30 |
31 | public PlayerHurtAttr()
32 | { }
33 |
34 | public void ModifyAttr(int attack, float velocityForward, float velocityVertical, Vector3 transformForward,
35 | bool canDefeatedFly=false)
36 | {
37 | Attack = attack;
38 | VelocityForward = velocityForward;
39 | VelocityVertical = velocityVertical;
40 | TransformForward = transformForward;
41 | CanDefeatedFly = canDefeatedFly;
42 | }
43 | }
44 | }
--------------------------------------------------------------------------------
/Assets/Scripts/SFramework/Character/PlayerHurtAttr.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: aa5ce9ff08179714e95081543bd19a84
3 | timeCreated: 1498666019
4 | licenseType: Pro
5 | MonoImporter:
6 | serializedVersion: 2
7 | defaultReferences: []
8 | executionOrder: 0
9 | icon: {instanceID: 0}
10 | userData:
11 | assetBundleName:
12 | assetBundleVariant:
13 |
--------------------------------------------------------------------------------
/Assets/Scripts/SFramework/Character/PlayerMediator.cs:
--------------------------------------------------------------------------------
1 | /*----------------------------------------------------------------------------
2 | Author:
3 | Anotts
4 | Date:
5 | 2017/08/01
6 | Description:
7 | 简介:中介者模式
8 | 作用:
9 | 使用:
10 | 补充:
11 | History:
12 | TODO:装备这边尚未实现
13 | ----------------------------------------------------------------------------*/
14 |
15 | using System;
16 | using UnityEngine;
17 |
18 | namespace SFramework
19 | {
20 | ///
21 | /// IPlayer,IPlayerMono,IPlayerWeapon3个关联类的中介者
22 | /// 负责更换装备
23 | ///
24 | public class PlayerMediator
25 | {
26 | public IPlayer Player { get; set; }
27 | public IPlayerMono PlayerMono { get; set; }
28 | public IPlayerWeapon PlayerWeapon { get; set; } // 可为null
29 |
30 | public PlayerMediator(IPlayer player)
31 | {
32 | Player = player;
33 | }
34 |
35 | ///
36 | /// 建立3个成员的关联
37 | ///
38 | public void Initialize()
39 | {
40 | PlayerMono = Player.GameObjectInScene.GetComponent();
41 | if (PlayerMono)
42 | {
43 | PlayerMono.PlayerMedi= this;
44 | PlayerMono.Rgbd = Player.Rgbd;
45 | PlayerMono.AnimatorComponent = Player.animator;
46 | PlayerWeapon = PlayerMono.iPlayerWeapon;
47 | PlayerMono.Initialize();
48 | if (PlayerWeapon != null)
49 | {
50 | PlayerWeapon.PlayerMedi = this; // 引用
51 | PlayerWeapon.Initialize();
52 | PlayerMono.WeaponCollider = PlayerWeapon.WeaponCollider;
53 | }
54 | else
55 | Debug.LogWarning("iPlayerWeapon未赋值");
56 | UpdatePlayerWeapon(PlayerMono.iPlayerWeapon);
57 | }
58 | }
59 |
60 | ///
61 | /// 用于从装备更新角色和武器属性
62 | ///
63 | ///
64 | public void FitEquip()
65 | {
66 | UpdatePlayerWeapon(PlayerWeapon);
67 | }
68 |
69 | ///
70 | /// 设置WeaponData,使用的是装备的武器
71 | /// 做强化系统时再加上强化的数值
72 | ///
73 | /// 哪一个PlayerWeapon
74 | private void UpdatePlayerWeapon(IPlayerWeapon playerWeapon)
75 | {
76 | if (playerWeapon == null)
77 | return;
78 | }
79 |
80 | }
81 | }
82 |
--------------------------------------------------------------------------------
/Assets/Scripts/SFramework/Character/PlayerMediator.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 7b52245a008e6024082bc4e2429d51ee
3 | timeCreated: 1500791386
4 | licenseType: Pro
5 | MonoImporter:
6 | serializedVersion: 2
7 | defaultReferences: []
8 | executionOrder: 0
9 | icon: {instanceID: 0}
10 | userData:
11 | assetBundleName:
12 | assetBundleVariant:
13 |
--------------------------------------------------------------------------------
/Assets/Scripts/SFramework/Character/PlayerMgr.cs:
--------------------------------------------------------------------------------
1 | /*----------------------------------------------------------------------------
2 | Author:
3 | Anotts
4 | Date:
5 | 2017/08/01
6 | Description:
7 | 简介:角色控制系统
8 | 作用:负责角色的创建,管理,删除
9 | 使用:调用接口
10 | 补充:
11 | History:
12 | ----------------------------------------------------------------------------*/
13 |
14 | using System.Collections;
15 | using System.Collections.Generic;
16 | using UnityEngine;
17 |
18 | namespace SFramework
19 | {
20 | ///
21 | /// 角色控制系统
22 | ///
23 | public class PlayerMgr : IGameMgr
24 | {
25 | public IPlayer CurrentPlayer { get; private set; } // 切换场景时不要消除引用
26 | public bool CanInput { get; set; }
27 |
28 | public PlayerMgr(GameMainProgram gameMain):base(gameMain)
29 | {
30 | }
31 |
32 | public override void Initialize()
33 | {
34 | if (CurrentPlayer != null)
35 | CurrentPlayer.Initialize();
36 | }
37 |
38 | public override void Release()
39 | {
40 | // Destroy
41 | if (CurrentPlayer != null)
42 | {
43 | CurrentPlayer.Release();
44 | GameObject.Destroy(CurrentPlayer.GameObjectInScene);
45 | CurrentPlayer = null;
46 | }
47 | else
48 | Debug.Log("无CurrentPlayer可以销毁!");
49 | }
50 |
51 | public override void FixedUpdate()
52 | {
53 | if (CurrentPlayer != null && CanInput)
54 | CurrentPlayer.FixedUpdate();
55 | }
56 |
57 | public override void Update()
58 | {
59 | if (CurrentPlayer != null && CanInput)
60 | CurrentPlayer.Update();
61 | }
62 |
63 | public void BuildPlayer(Vector3 position, Quaternion quaternion)
64 | {
65 | if (CurrentPlayer == null)
66 | SetCurrentPlayer(new ProjectScript.PlayerMain(GameMainProgram.Instance.resourcesMgr.
67 | LoadAsset(@"Players\Player", false, position, quaternion)));
68 | gameMain.gameDataMgr.Load(CurrentPlayer); // 读档
69 | }
70 |
71 | public void SetCurrentPlayer(IPlayer player)
72 | {
73 | CurrentPlayer = player;
74 | CurrentPlayer.Initialize(); // 设置Player时进行初始化
75 | }
76 |
77 | public void SetPlayerPosition(Vector3 pos)
78 | {
79 | CurrentPlayer.GameObjectInScene.transform.position = pos;
80 | }
81 | }
82 | }
83 |
--------------------------------------------------------------------------------
/Assets/Scripts/SFramework/Character/PlayerMgr.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 901ff8932c9d9d8469f23c9fddcd9839
3 | timeCreated: 1495114867
4 | licenseType: Pro
5 | MonoImporter:
6 | serializedVersion: 2
7 | defaultReferences: []
8 | executionOrder: 0
9 | icon: {instanceID: 0}
10 | userData:
11 | assetBundleName:
12 | assetBundleVariant:
13 |
--------------------------------------------------------------------------------
/Assets/Scripts/SFramework/GameLoop.cs:
--------------------------------------------------------------------------------
1 | /*----------------------------------------------------------------------------
2 | Author:
3 | Anotts
4 | Date:
5 | 2017/08/01
6 | Description:
7 | 简介:游戏的入口类,继承了MonoBehaviour
8 | 作用:控制场景状态机SceneStateController的初始状态、更新及设置起始场景
9 | 使用:在每个场景,我们只需要创建一个挂载了GameLoop脚本的物体,并选择需要动态加载的场景状态,就可以测试目标场景,而无需修改代码。这使得场景测试更加快捷
10 | 补充:项目主逻辑只用这一个Monobehaviour脚本驱动,并且设置了DontDestroyOnLoad,使之在每个场景下都保持为单例
11 | History:
12 | ----------------------------------------------------------------------------*/
13 |
14 | using UnityEngine;
15 |
16 | namespace SFramework
17 | {
18 | ///
19 | /// 游戏主循环
20 | ///
21 | public class GameLoop : MonoBehaviour
22 | {
23 | private static GameLoop _instance;
24 |
25 | public static GameLoop Instance
26 | {
27 | get
28 | {
29 | if (_instance == null)
30 | {
31 | _instance = FindObjectOfType();
32 |
33 | if (_instance == null)
34 | _instance = new GameObject("GameLoop").AddComponent();
35 | }
36 | return _instance;
37 | }
38 | }
39 |
40 | public SceneStateController sceneStateController = new SceneStateController();
41 |
42 | [SerializeField]
43 | private SceneState sceneState;
44 |
45 | void Awake()
46 | {
47 | if (_instance == null)
48 | _instance = GetComponent();
49 | else if (_instance != GetComponent())
50 | {
51 | Debug.LogWarningFormat("There is more than one {0} in the scene,auto inactive the copy one.", typeof(GameLoop).ToString());
52 | Destroy(gameObject);
53 | return;
54 | }
55 | DontDestroyOnLoad(gameObject);
56 | }
57 |
58 | void Start()
59 | {
60 | // 要测试的场景,只需要在Inspector中设置就行了
61 | sceneStateController.SetState(sceneState, false);
62 | }
63 |
64 | void FixedUpdate()
65 | {
66 | //物理相关的处理
67 | sceneStateController.FixedUpdate();
68 | }
69 |
70 | void Update()
71 | {
72 | sceneStateController.StateUpdate();
73 | }
74 | }
75 | }
76 |
--------------------------------------------------------------------------------
/Assets/Scripts/SFramework/GameLoop.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 08654b480edabdd498e3245d27000d46
3 | timeCreated: 1504434241
4 | licenseType: Pro
5 | MonoImporter:
6 | serializedVersion: 2
7 | defaultReferences: []
8 | executionOrder: -500
9 | icon: {instanceID: 0}
10 | userData:
11 | assetBundleName:
12 | assetBundleVariant:
13 |
--------------------------------------------------------------------------------
/Assets/Scripts/SFramework/GameMainProgram.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 921e82dec6bb5e84390b1e8f8e54fa02
3 | timeCreated: 1494400034
4 | licenseType: Pro
5 | MonoImporter:
6 | serializedVersion: 2
7 | defaultReferences: []
8 | executionOrder: 0
9 | icon: {instanceID: 0}
10 | userData:
11 | assetBundleName:
12 | assetBundleVariant:
13 |
--------------------------------------------------------------------------------
/Assets/Scripts/SFramework/GameMgr.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 180b386eab8faba4eb28005539b68e12
3 | folderAsset: yes
4 | timeCreated: 1494398462
5 | licenseType: Pro
6 | DefaultImporter:
7 | userData:
8 | assetBundleName:
9 | assetBundleVariant:
10 |
--------------------------------------------------------------------------------
/Assets/Scripts/SFramework/GameMgr/AudioMgr.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 9ed39ebd7e0cc964ca468e47db197aa9
3 | timeCreated: 1502952510
4 | licenseType: Pro
5 | MonoImporter:
6 | serializedVersion: 2
7 | defaultReferences: []
8 | executionOrder: 0
9 | icon: {instanceID: 0}
10 | userData:
11 | assetBundleName:
12 | assetBundleVariant:
13 |
--------------------------------------------------------------------------------
/Assets/Scripts/SFramework/GameMgr/CoroutineMgr.cs:
--------------------------------------------------------------------------------
1 | /*----------------------------------------------------------------------------
2 | Author:
3 | Anotts
4 | Date:
5 | 2017/08/01
6 | Description:
7 | 简介:协程控制系统
8 | 作用:让不继承Monobehavior的物体也能够使用协程
9 | 使用:CoroutineMgr.Instance.方法
10 | 补充:单例模式。
11 | History:
12 | ----------------------------------------------------------------------------*/
13 |
14 | using System.Collections;
15 | using System.Collections.Generic;
16 | using UnityEngine;
17 |
18 | namespace SFramework
19 | {
20 | ///
21 | /// 协程管理器
22 | ///
23 | public class CoroutineMgr : MonoBehaviour
24 | {
25 | private static CoroutineMgr _instance;
26 |
27 | public static CoroutineMgr Instance
28 | {
29 | get
30 | {
31 | if (_instance == null)
32 | {
33 | _instance = FindObjectOfType();
34 |
35 | if (_instance == null)
36 | _instance = new GameObject("CoroutineMgr").AddComponent();
37 | }
38 | return _instance;
39 | }
40 | }
41 |
42 | void Awake()
43 | {
44 | if (_instance == null)
45 | _instance = GetComponent();
46 | else if (_instance != GetComponent())
47 | {
48 | Debug.LogWarningFormat("There is more than one {0} in the scene,auto inactive the copy one.", typeof(CoroutineMgr).ToString());
49 | gameObject.SetActive(false);
50 | return;
51 | }
52 | DontDestroyOnLoad(gameObject);
53 | }
54 |
55 | // 其实这里不封装也能调用,因为继承了
56 | public new Coroutine StartCoroutine(IEnumerator routine)
57 | {
58 | return base.StartCoroutine(routine);
59 | }
60 |
61 | public new void StopCoroutine(IEnumerator routine)
62 | {
63 | base.StopCoroutine(routine);
64 | }
65 |
66 | public new void StopAllCoroutines()
67 | {
68 | base.StopAllCoroutines();
69 | }
70 |
71 | public new void StopCoroutine(Coroutine routine)
72 | {
73 | base.StopCoroutine(routine);
74 | }
75 | }
76 | }
--------------------------------------------------------------------------------
/Assets/Scripts/SFramework/GameMgr/CoroutineMgr.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 224179303a0959243aab507357dfe8c2
3 | timeCreated: 1501250951
4 | licenseType: Pro
5 | MonoImporter:
6 | serializedVersion: 2
7 | defaultReferences: []
8 | executionOrder: 0
9 | icon: {instanceID: 0}
10 | userData:
11 | assetBundleName:
12 | assetBundleVariant:
13 |
--------------------------------------------------------------------------------
/Assets/Scripts/SFramework/GameMgr/CourseMgr.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 90edd1057441c2347b3edad24532f9bd
3 | timeCreated: 1499315558
4 | licenseType: Pro
5 | MonoImporter:
6 | serializedVersion: 2
7 | defaultReferences: []
8 | executionOrder: 0
9 | icon: {instanceID: 0}
10 | userData:
11 | assetBundleName:
12 | assetBundleVariant:
13 |
--------------------------------------------------------------------------------
/Assets/Scripts/SFramework/GameMgr/DataBaseMgr.cs:
--------------------------------------------------------------------------------
1 | /*----------------------------------------------------------------------------
2 | Author:
3 | Anotts
4 | Date:
5 | 2017/08/01
6 | Description:
7 | 简介:游戏数据库(默认基于Json)
8 | 作用:存放游戏中的所有装备、道具等数据,提供给游戏中数据对象使用。
9 | 使用:
10 | 补充:
11 | History:
12 | ----------------------------------------------------------------------------*/
13 |
14 | using System.Collections;
15 | using System.Collections.Generic;
16 | using UnityEngine;
17 |
18 | namespace SFramework
19 | {
20 | ///
21 | /// 游戏数据库
22 | ///
23 | public class DataBaseMgr : IGameMgr
24 | {
25 | // 字典存放所有种类的Item,key也可以用enum
26 | public Dictionary equipDict;
27 | public Dictionary enemyEquipDict;
28 | public List Tasks { get; set; }
29 | public IProp[] Props { get; private set; }
30 |
31 | public DataBaseMgr(GameMainProgram gameMain) : base(gameMain)
32 | {
33 | }
34 |
35 | ///
36 | /// 常用于调用FileMgr加载数据库文件
37 | ///
38 | public override void Awake()
39 | {
40 | equipDict = gameMain.fileMgr.LoadJsonDataBase>("Equip");
41 | Debug.Log("Equip数据加载完毕");
42 | Props = gameMain.fileMgr.LoadJsonDataBase("Prop");
43 | Debug.Log("Prop数据库加载完毕");
44 | enemyEquipDict = gameMain.fileMgr.LoadJsonDataBase>("EnemyEquip");
45 | Debug.Log("EnemyEquip数据加载完毕");
46 | Tasks = gameMain.fileMgr.LoadJsonDataBase>("Tasks");
47 | Debug.Log("Tasks数据加载完毕");
48 | Debug.Log("数据库文件全部加载完毕");
49 | }
50 |
51 | }
52 | }
--------------------------------------------------------------------------------
/Assets/Scripts/SFramework/GameMgr/DataBaseMgr.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: aae6c34026d966740abd54a79a38ee59
3 | timeCreated: 1500644558
4 | licenseType: Pro
5 | MonoImporter:
6 | serializedVersion: 2
7 | defaultReferences: []
8 | executionOrder: 0
9 | icon: {instanceID: 0}
10 | userData:
11 | assetBundleName:
12 | assetBundleVariant:
13 |
--------------------------------------------------------------------------------
/Assets/Scripts/SFramework/GameMgr/DialogMgr.cs:
--------------------------------------------------------------------------------
1 | /*----------------------------------------------------------------------------
2 | Author:
3 | Anotts
4 | Date:
5 | 2017/08/01
6 | Description:
7 | 简介:对话系统
8 | 作用:管理游戏中的所有对话。只是保存所有对话,对话实质实现由UIDialog控制
9 | 使用:
10 | 补充:
11 | History:
12 | ----------------------------------------------------------------------------*/
13 |
14 | using UnityEngine;
15 | using System.Collections;
16 | using System.Collections.Generic;
17 | using UnityEngine.Events;
18 |
19 | namespace SFramework
20 | {
21 | ///
22 | /// 对话管理
23 | ///
24 | public class DialogMgr:IGameMgr
25 | {
26 | private Dictionary> talksDict;
27 |
28 | public DialogMgr(GameMainProgram gameMain) : base(gameMain)
29 | {
30 | }
31 |
32 | public override void Awake()
33 | {
34 | talksDict= gameMain.fileMgr.LoadJsonDataBase>>("Dialog");
35 | Debug.Log("成功读取对话数据");
36 | }
37 |
38 | public void StartDialog(string key,UnityAction dialogCompleteAction=null)
39 | {
40 | List talks = UnityHelper.FindDic(talksDict, key);
41 |
42 | if (talks == null||talks.Count==0)
43 | {
44 | Debug.LogError("对话内容为空");
45 | return;
46 | }
47 | UIDialog.StartDialog(talks,dialogCompleteAction);
48 | }
49 |
50 | }
51 | }
52 |
--------------------------------------------------------------------------------
/Assets/Scripts/SFramework/GameMgr/DialogMgr.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: e0a2f9dd435d23b489c365b9de41037b
3 | timeCreated: 1503990564
4 | licenseType: Pro
5 | MonoImporter:
6 | serializedVersion: 2
7 | defaultReferences: []
8 | executionOrder: 0
9 | icon: {instanceID: 0}
10 | userData:
11 | assetBundleName:
12 | assetBundleVariant:
13 |
--------------------------------------------------------------------------------
/Assets/Scripts/SFramework/GameMgr/EventMgr.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: f1830e7c85fd50d4ba542fc32cec6f5f
3 | timeCreated: 1498228753
4 | licenseType: Pro
5 | MonoImporter:
6 | serializedVersion: 2
7 | defaultReferences: []
8 | executionOrder: 0
9 | icon: {instanceID: 0}
10 | userData:
11 | assetBundleName:
12 | assetBundleVariant:
13 |
--------------------------------------------------------------------------------
/Assets/Scripts/SFramework/GameMgr/FileMgr.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: c8ebe444a5e309b4fba0d52f11c3023c
3 | timeCreated: 1500609948
4 | licenseType: Pro
5 | MonoImporter:
6 | serializedVersion: 2
7 | defaultReferences: []
8 | executionOrder: 0
9 | icon: {instanceID: 0}
10 | userData:
11 | assetBundleName:
12 | assetBundleVariant:
13 |
--------------------------------------------------------------------------------
/Assets/Scripts/SFramework/GameMgr/GameDataMgr.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 83330775f54db6546a62494ea91994be
3 | timeCreated: 1501299965
4 | licenseType: Pro
5 | MonoImporter:
6 | serializedVersion: 2
7 | defaultReferences: []
8 | executionOrder: 0
9 | icon: {instanceID: 0}
10 | userData:
11 | assetBundleName:
12 | assetBundleVariant:
13 |
--------------------------------------------------------------------------------
/Assets/Scripts/SFramework/GameMgr/IGameMgr.cs:
--------------------------------------------------------------------------------
1 | /*----------------------------------------------------------------------------
2 | Author:
3 | Anotts
4 | Date:
5 | 2017/08/01
6 | Description:
7 | 简介:子系统抽象类
8 | 作用:子系统作为管理者,需要负责被管理对象的 Awake,Initialize,FixedUpdate,Update,Release 生命周期的调用。
9 | 使用:声明一个Manager类,继承并实现IGameMgr类
10 | 补充:
11 | History:
12 | ----------------------------------------------------------------------------*/
13 |
14 | using UnityEngine;
15 | using System.Collections;
16 |
17 | namespace SFramework
18 | {
19 | ///
20 | /// 游戏管理者抽象类
21 | ///
22 | public abstract class IGameMgr
23 | {
24 | protected GameMainProgram gameMain = null;
25 |
26 | // 继承后在这里声明需要被管理的对象
27 |
28 | ///
29 | /// 构造函数需指定GameMainProgram
30 | ///
31 | ///
32 | public IGameMgr(GameMainProgram gameMain)
33 | {
34 | this.gameMain = gameMain;
35 | }
36 |
37 | // 以下接口提供给GameMainProgram调用
38 | ///
39 | /// 初次构造后调用(Awake方法通常需要用到其他Mgr,因此需要在构造函数之后执行)
40 | ///
41 | public virtual void Awake() { }
42 |
43 | ///
44 | /// 每次场景加载后调用
45 | ///
46 | public virtual void Initialize() { }
47 |
48 | ///
49 | /// 场景切换时调用
50 | ///
51 | public virtual void Release() { }
52 |
53 | public virtual void FixedUpdate() { }
54 |
55 | public virtual void Update() { }
56 |
57 | }
58 | }
--------------------------------------------------------------------------------
/Assets/Scripts/SFramework/GameMgr/IGameMgr.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 90c5a0e9097841147879fe0274fc32f4
3 | MonoImporter:
4 | serializedVersion: 2
5 | defaultReferences: []
6 | executionOrder: 0
7 | icon: {instanceID: 0}
8 | userData:
9 |
--------------------------------------------------------------------------------
/Assets/Scripts/SFramework/GameMgr/LanguageMgr.cs:
--------------------------------------------------------------------------------
1 | /*----------------------------------------------------------------------------
2 | Author:
3 | Anotts
4 | Date:
5 | 2017/08/01
6 | Description:
7 | 简介:游戏界面语言管理器
8 | 作用:从设置获取当前语言,存储不同语言显示的字符,以及更换游戏中的字体
9 | 使用:当需要显示文本时,调用ShowText接口
10 | 补充:默认提供中文和英语两种语言选择
11 | History:
12 | ----------------------------------------------------------------------------*/
13 |
14 | using System.Collections;
15 | using System.Collections.Generic;
16 | using UnityEngine;
17 |
18 | namespace SFramework
19 | {
20 | ///
21 | /// 多语言本地化
22 | ///
23 | public class LanguageMgr : IGameMgr
24 | {
25 | private SettingData SettingSaveData { get; set; } // 存储语言首选项
26 | private Dictionary languageCN_Dict;
27 | private Dictionary languageEN_Dict;
28 | private Font fontCN;
29 | private Font fontEN;
30 | private string fontPathCN = @"Fonts\MicrosoftYaHeiMini";
31 | private string fontPathEN = @"Fonts\ARJULIAN";
32 |
33 | public LanguageMgr(GameMainProgram gameMain) : base(gameMain)
34 | {
35 | languageCN_Dict = new Dictionary();
36 | languageEN_Dict = new Dictionary();
37 | }
38 |
39 | public override void Awake()
40 | {
41 | SettingSaveData = gameMain.gameDataMgr.SettingSaveData;
42 | // 加载语言本地化数据文件
43 | languageCN_Dict = gameMain.fileMgr.LoadJsonDataBase>("Language_CN");
44 | languageEN_Dict = gameMain.fileMgr.LoadJsonDataBase>("Language_EN");
45 | // 加载语言对应的字体
46 | fontCN = gameMain.resourcesMgr.LoadResource(fontPathCN);
47 | fontEN = gameMain.resourcesMgr.LoadResource(fontPathEN);
48 | Debug.Log("LanguageMgr加载完毕");
49 | }
50 |
51 | ///
52 | /// 显示文本信息
53 | ///
54 | /// 文本的ID
55 | ///
56 | public string ShowText(string stringId)
57 | {
58 | if (SettingSaveData.IsChinese)
59 | return UnityHelper.FindDic(languageCN_Dict, stringId);
60 | else
61 | return UnityHelper.FindDic(languageEN_Dict, stringId);
62 | }
63 |
64 | public Font GetFont(int fontChoose = 0)
65 | {
66 | if (fontChoose == 1)
67 | return fontCN;
68 | else if (fontChoose == 2)
69 | return fontEN;
70 | else if (SettingSaveData.IsChinese)
71 | return fontCN;
72 | else
73 | return fontEN;
74 |
75 | }
76 | }
77 | }
78 |
--------------------------------------------------------------------------------
/Assets/Scripts/SFramework/GameMgr/LanguageMgr.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 05d73388afe05f7458e2972473e0e976
3 | timeCreated: 1501052050
4 | licenseType: Pro
5 | MonoImporter:
6 | serializedVersion: 2
7 | defaultReferences: []
8 | executionOrder: 0
9 | icon: {instanceID: 0}
10 | userData:
11 | assetBundleName:
12 | assetBundleVariant:
13 |
--------------------------------------------------------------------------------
/Assets/Scripts/SFramework/GameMgr/NpcMgr.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 0c87e939b4995aa4ba51c916266c23e6
3 | timeCreated: 1504064274
4 | licenseType: Pro
5 | MonoImporter:
6 | serializedVersion: 2
7 | defaultReferences: []
8 | executionOrder: 0
9 | icon: {instanceID: 0}
10 | userData:
11 | assetBundleName:
12 | assetBundleVariant:
13 |
--------------------------------------------------------------------------------
/Assets/Scripts/SFramework/GameMgr/ResourcesMgr.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 265171c5957cace46a92adfdb392d19f
3 | timeCreated: 1493525234
4 | licenseType: Pro
5 | MonoImporter:
6 | serializedVersion: 2
7 | defaultReferences: []
8 | executionOrder: 0
9 | icon: {instanceID: 0}
10 | userData:
11 | assetBundleName:
12 | assetBundleVariant:
13 |
--------------------------------------------------------------------------------
/Assets/Scripts/SFramework/GameMgr/SqlMgr.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 00e4ed30373dcf54699d22cdfc6f44e2
3 | timeCreated: 1508241810
4 | licenseType: Free
5 | MonoImporter:
6 | serializedVersion: 2
7 | defaultReferences: []
8 | executionOrder: 0
9 | icon: {instanceID: 0}
10 | userData:
11 | assetBundleName:
12 | assetBundleVariant:
13 |
--------------------------------------------------------------------------------
/Assets/Scripts/SFramework/GameMgr/ThreadMgr.cs:
--------------------------------------------------------------------------------
1 | /*----------------------------------------------------------------------------
2 | Author:
3 | Anotts
4 | Date:
5 | 2017/08/01
6 | Description:
7 | 简介:
8 | 作用:
9 | 使用:
10 | 补充:
11 | History:
12 | ----------------------------------------------------------------------------*/
13 |
14 | using System.Collections;
15 | using System.Collections.Generic;
16 | using System.Threading;
17 | using UnityEngine;
18 |
19 | namespace SFramework
20 | {
21 | ///
22 | /// 线程管理
23 | ///
24 | public class ThreadMgr : IGameMgr
25 | {
26 | public List ThreadList { get; set; }
27 |
28 | public ThreadMgr(GameMainProgram gameMain) : base(gameMain)
29 | {
30 | ThreadList = new List();
31 | }
32 |
33 | public override void Initialize()
34 | {
35 | }
36 |
37 | public override void Release()
38 | {
39 | }
40 |
41 | ///
42 | /// 创建无参线程对象
43 | ///
44 | ///
45 | public Thread CreateThread(ThreadStart fun)
46 | {
47 | Thread thread = new Thread(fun);
48 | ThreadList.Add(thread);
49 | //启动线程
50 | thread.Start();
51 | return thread;
52 | }
53 |
54 | ///
55 | /// 创建有参线程对象
56 | ///
57 | ///
58 | public Thread CreateThread(ParameterizedThreadStart fun)
59 | {
60 | Thread thread = new Thread(fun);
61 | ThreadList.Add(thread);
62 | //启动线程
63 | thread.Start();
64 | return thread;
65 | }
66 |
67 | ///
68 | /// 在线程池中创建一个后台线程
69 | ///
70 | ///
71 | public void CreateInThreadPool(WaitCallback callback)
72 | {
73 | ThreadPool.QueueUserWorkItem(callback);
74 | }
75 |
76 | }
77 | }
--------------------------------------------------------------------------------
/Assets/Scripts/SFramework/GameMgr/ThreadMgr.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: fec6d31206869f843bb51b3718706587
3 | timeCreated: 1508648881
4 | licenseType: Free
5 | MonoImporter:
6 | serializedVersion: 2
7 | defaultReferences: []
8 | executionOrder: 0
9 | icon: {instanceID: 0}
10 | userData:
11 | assetBundleName:
12 | assetBundleVariant:
13 |
--------------------------------------------------------------------------------
/Assets/Scripts/SFramework/Item.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 33aaa61acebb1c445a24b23b2a7118ea
3 | folderAsset: yes
4 | timeCreated: 1495371607
5 | licenseType: Pro
6 | DefaultImporter:
7 | userData:
8 | assetBundleName:
9 | assetBundleVariant:
10 |
--------------------------------------------------------------------------------
/Assets/Scripts/SFramework/Item/IEquip.cs:
--------------------------------------------------------------------------------
1 | /*----------------------------------------------------------------------------
2 | Author:
3 | Anotts
4 | Date:
5 | 2017/08/01
6 | Description:
7 | 简介:装备基类
8 | 作用:
9 | 使用:
10 | 补充:
11 | History:
12 | ----------------------------------------------------------------------------*/
13 |
14 | using System;
15 | using System.Collections;
16 | using System.Collections.Generic;
17 | using UnityEngine;
18 | using System.Xml.Serialization;
19 |
20 | namespace SFramework
21 | {
22 | ///
23 | /// 装备基类
24 | ///
25 | public class IEquip : IItem
26 | {
27 | // 展示属性
28 | public FitType Type { get; protected set; } // 装备类型
29 |
30 | public IEquip() : base()
31 | {
32 | Type = FitType.Weapon;
33 | Name = "Equip";
34 | }
35 | }
36 | }
37 |
--------------------------------------------------------------------------------
/Assets/Scripts/SFramework/Item/IEquip.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 94af5fcc66337cb4fae126ad59256d17
3 | timeCreated: 1499841437
4 | licenseType: Pro
5 | MonoImporter:
6 | serializedVersion: 2
7 | defaultReferences: []
8 | executionOrder: 0
9 | icon: {instanceID: 0}
10 | userData:
11 | assetBundleName:
12 | assetBundleVariant:
13 |
--------------------------------------------------------------------------------
/Assets/Scripts/SFramework/Item/IItem.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 17cccf11cf125e74c965ad319bf55021
3 | timeCreated: 1499840354
4 | licenseType: Pro
5 | MonoImporter:
6 | serializedVersion: 2
7 | defaultReferences: []
8 | executionOrder: 0
9 | icon: {instanceID: 0}
10 | userData:
11 | assetBundleName:
12 | assetBundleVariant:
13 |
--------------------------------------------------------------------------------
/Assets/Scripts/SFramework/Item/IProp.cs:
--------------------------------------------------------------------------------
1 | /*----------------------------------------------------------------------------
2 | Author:
3 | Anotts
4 | Date:
5 | 2017/08/01
6 | Description:
7 | 简介:道具基类
8 | 作用:
9 | 使用:
10 | 补充:
11 | History:
12 | ----------------------------------------------------------------------------*/
13 |
14 | using System.Collections;
15 | using System.Collections.Generic;
16 | using UnityEngine;
17 |
18 | namespace SFramework
19 | {
20 | ///
21 | /// 道具基类
22 | ///
23 | public class IProp : IItem
24 | {
25 | // 展示属性
26 | public int Id { get; protected set; }
27 | public PropType Type { get; protected set; }
28 | public int MaxNum { get; protected set; } //上限数目
29 |
30 | public IProp():base()
31 | {
32 | Id = 0;
33 | Type = PropType.Medicine;
34 | Name = "Prop";
35 | MaxNum = 100;
36 | }
37 |
38 | }
39 | }
40 |
--------------------------------------------------------------------------------
/Assets/Scripts/SFramework/Item/IProp.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 0f19974985fe50a4da9b603762a3a7a8
3 | timeCreated: 1499841452
4 | licenseType: Pro
5 | MonoImporter:
6 | serializedVersion: 2
7 | defaultReferences: []
8 | executionOrder: 0
9 | icon: {instanceID: 0}
10 | userData:
11 | assetBundleName:
12 | assetBundleVariant:
13 |
--------------------------------------------------------------------------------
/Assets/Scripts/SFramework/MonoFunction.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 5cfb12f036f91b54a8029d4d8daa0c96
3 | folderAsset: yes
4 | timeCreated: 1498460521
5 | licenseType: Pro
6 | DefaultImporter:
7 | userData:
8 | assetBundleName:
9 | assetBundleVariant:
10 |
--------------------------------------------------------------------------------
/Assets/Scripts/SFramework/MonoFunction/AutoCam.cs:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sols11/SFramework/2aecb34fd5adcad0c572c821706fc70b91397ff6/Assets/Scripts/SFramework/MonoFunction/AutoCam.cs
--------------------------------------------------------------------------------
/Assets/Scripts/SFramework/MonoFunction/AutoCam.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: b1cde2eaae062a54d8765dcfb6cababb
3 | timeCreated: 1552811102
4 | licenseType: Free
5 | MonoImporter:
6 | serializedVersion: 2
7 | defaultReferences: []
8 | executionOrder: 0
9 | icon: {instanceID: 0}
10 | userData:
11 | assetBundleName:
12 | assetBundleVariant:
13 |
--------------------------------------------------------------------------------
/Assets/Scripts/SFramework/MonoFunction/AutoDisable.cs:
--------------------------------------------------------------------------------
1 | /*----------------------------------------------------------------------------
2 | Author:
3 | Anotts
4 | Date:
5 | 2017/08/01
6 | Description:
7 | 简介:
8 | 作用:常用于特效
9 | 使用:
10 | 补充:
11 | History:
12 | ----------------------------------------------------------------------------*/
13 |
14 | using System.Collections;
15 | using System.Collections.Generic;
16 | using UnityEngine;
17 | using System;
18 |
19 | namespace SFramework
20 | {
21 | ///
22 | /// 自动关闭或销毁
23 | ///
24 | public class AutoDisable : MonoBehaviour
25 | {
26 | public enum Disable { SetFalse, Destroy }
27 | public Disable disable = Disable.Destroy;
28 | public float time = 1;
29 | private AudioSource audioSource;
30 |
31 | void Awake()
32 | {
33 | audioSource=GetComponent();
34 | GameMainProgram.Instance.audioMgr.AddSound(audioSource);
35 | }
36 |
37 | void OnEnable()
38 | {
39 | StartCoroutine(Wait());
40 | }
41 |
42 | void OnDestroy()
43 | {
44 | GameMainProgram.Instance.audioMgr.RemoveSound(audioSource);
45 | }
46 |
47 | IEnumerator Wait()
48 | {
49 | yield return new WaitForSeconds(time);
50 | if (disable == Disable.SetFalse)
51 | gameObject.SetActive(false);
52 | else
53 | Destroy(gameObject);
54 | }
55 | }
56 | }
--------------------------------------------------------------------------------
/Assets/Scripts/SFramework/MonoFunction/AutoDisable.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 3aa496075d3166740901e5789bf20426
3 | timeCreated: 1497781473
4 | licenseType: Pro
5 | MonoImporter:
6 | serializedVersion: 2
7 | defaultReferences: []
8 | executionOrder: 0
9 | icon: {instanceID: 0}
10 | userData:
11 | assetBundleName:
12 | assetBundleVariant:
13 |
--------------------------------------------------------------------------------
/Assets/Scripts/SFramework/MonoFunction/CameraCtrl.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 73cfbd177624590419c267e620bfeb8c
3 | timeCreated: 1499184431
4 | licenseType: Pro
5 | MonoImporter:
6 | serializedVersion: 2
7 | defaultReferences: []
8 | executionOrder: 0
9 | icon: {instanceID: 0}
10 | userData:
11 | assetBundleName:
12 | assetBundleVariant:
13 |
--------------------------------------------------------------------------------
/Assets/Scripts/SFramework/MonoFunction/ShakeObject.cs:
--------------------------------------------------------------------------------
1 | /*----------------------------------------------------------------------------
2 | Author:
3 | Anotts
4 | Date:
5 | 2017/08/01
6 | Description:
7 | 简介:
8 | 作用:
9 | 使用:
10 | 补充:
11 | History:
12 | ----------------------------------------------------------------------------*/
13 |
14 | using System.Collections;
15 | using System.Collections.Generic;
16 | using UnityEngine;
17 |
18 | namespace SFramework
19 | {
20 | ///
21 | /// 震动物体,主要用于Camera震屏
22 | ///
23 | public class ShakeObject : MonoBehaviour
24 | {
25 | // enable设为true后,在startTime后震屏一次
26 | public float startTime = 1.0f; // 开始震屏的时间
27 | public Vector3 directionStrength = new Vector3(0, 1, 0); //方向和力度
28 | public float speed = 1.0f; // 震动速度,影响震动的时长
29 | public AnimationCurve curve = new AnimationCurve(new Keyframe(0, 0), new Keyframe(0.13f, 0.4f), new Keyframe(0.33f, -0.33f), new Keyframe(0.5f, 0.17f), new Keyframe(0.71f, -0.12f), new Keyframe(1, 0));
30 | // 动画曲线默认持续1s,实际震动时长=1/speed
31 |
32 | float timer;
33 | float keepTimer;
34 | float duration;
35 | Vector3 thisPosition; // currentPos-lastShakePos
36 | Vector3 shakePosition;// culculatePos
37 |
38 | void OnEnable()
39 | {
40 | duration = 1 / speed;
41 | }
42 |
43 | void FixedUpdate()
44 | {
45 | keepTimer += Time.deltaTime;
46 | thisPosition = transform.position - shakePosition;
47 | shakePosition = new Vector3(curve.Evaluate((keepTimer - timer) * speed) * directionStrength.x,
48 | curve.Evaluate((keepTimer - timer) * speed) * directionStrength.y, curve.Evaluate((keepTimer - timer) * speed) * directionStrength.z);
49 | if (timer >= startTime)
50 | {
51 | transform.position = shakePosition + thisPosition;
52 | // 震屏结束后
53 | if(keepTimer>startTime+duration)
54 | {
55 | keepTimer = timer = 0;
56 | enabled = false;
57 | }
58 | }
59 | else
60 | {
61 | timer += Time.deltaTime;
62 | }
63 | }
64 |
65 |
66 |
67 | }
68 | }
--------------------------------------------------------------------------------
/Assets/Scripts/SFramework/MonoFunction/ShakeObject.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 7b62394dd1b8b4045b90c781339341a8
3 | timeCreated: 1552810718
4 | licenseType: Free
5 | MonoImporter:
6 | serializedVersion: 2
7 | defaultReferences: []
8 | executionOrder: 0
9 | icon: {instanceID: 0}
10 | userData:
11 | assetBundleName:
12 | assetBundleVariant:
13 |
--------------------------------------------------------------------------------
/Assets/Scripts/SFramework/MonoFunction/TransparentCam.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: c66ac2c76505f0445a400b22f1c1d83b
3 | timeCreated: 1552811148
4 | licenseType: Free
5 | MonoImporter:
6 | serializedVersion: 2
7 | defaultReferences: []
8 | executionOrder: 0
9 | icon: {instanceID: 0}
10 | userData:
11 | assetBundleName:
12 | assetBundleVariant:
13 |
--------------------------------------------------------------------------------
/Assets/Scripts/SFramework/SceneState.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: d05a18db0f7069943b2e0069de53976b
3 | folderAsset: yes
4 | timeCreated: 1494398433
5 | licenseType: Pro
6 | DefaultImporter:
7 | userData:
8 | assetBundleName:
9 | assetBundleVariant:
10 |
--------------------------------------------------------------------------------
/Assets/Scripts/SFramework/SceneState/ISceneState.cs:
--------------------------------------------------------------------------------
1 | /*----------------------------------------------------------------------------
2 | Author:
3 | Anotts
4 | Date:
5 | 2017/08/01
6 | Description:
7 | 简介:场景状态类的基类(接口)
8 | 作用:控制接口方法的初始化、更新、释放
9 | 使用:场景状态类决定了这个场景中存在哪些对象,使用哪些功能
10 | 补充:
11 | History:
12 | 2019/03/15 之前保留了一个awake方法,现在用不上了,用构造函数实现
13 | ----------------------------------------------------------------------------*/
14 |
15 | using System.Collections;
16 | using UnityEngine;
17 |
18 | namespace SFramework
19 | {
20 | ///
21 | /// 场景状态"接口"类
22 | ///
23 | public abstract class ISceneState
24 | {
25 | public string SceneName { get; set; } // UnityScene文件对应的名称,即需要加载的场景名称
26 | protected SceneStateController Controller { get; set; } // 控制者
27 | protected GameMainProgram gameMainProgram; // 主程序
28 |
29 | public ISceneState(SceneStateController controller)
30 | {
31 | Controller = controller;
32 | }
33 |
34 | ///
35 | /// 初始化GameMainProgram,初始化场景,场景初始设置
36 | ///
37 | public virtual void StateBegin()
38 | {
39 | gameMainProgram = GameMainProgram.Instance;
40 | gameMainProgram.Initialize();
41 | }
42 |
43 | ///
44 | /// 结束场景
45 | ///
46 | public virtual void StateEnd()
47 | {
48 | gameMainProgram.Release();
49 | }
50 |
51 | public virtual void FixedUpdate()
52 | {
53 | gameMainProgram.FixedUpdate();
54 | }
55 |
56 | public virtual void StateUpdate()
57 | {
58 | gameMainProgram.Update();
59 | }
60 |
61 | public override string ToString()
62 | {
63 | return SceneName;
64 | }
65 |
66 |
67 | }
68 | }
69 |
--------------------------------------------------------------------------------
/Assets/Scripts/SFramework/SceneState/ISceneState.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 2f5de975131cf8f498f4a5e3fce895a6
3 | timeCreated: 1494397594
4 | licenseType: Pro
5 | MonoImporter:
6 | serializedVersion: 2
7 | defaultReferences: []
8 | executionOrder: 0
9 | icon: {instanceID: 0}
10 | userData:
11 | assetBundleName:
12 | assetBundleVariant:
13 |
--------------------------------------------------------------------------------
/Assets/Scripts/SFramework/SceneState/SceneStateController.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: f337675e763d6a444a6b61ba1f1fccd4
3 | timeCreated: 1494397761
4 | licenseType: Pro
5 | MonoImporter:
6 | serializedVersion: 2
7 | defaultReferences: []
8 | executionOrder: 0
9 | icon: {instanceID: 0}
10 | userData:
11 | assetBundleName:
12 | assetBundleVariant:
13 |
--------------------------------------------------------------------------------
/Assets/Scripts/SFramework/SceneState/StartScene.cs:
--------------------------------------------------------------------------------
1 | /*----------------------------------------------------------------------------
2 | Author:
3 | Anotts
4 | Date:
5 | 2017/08/01
6 | Description:
7 | 简介:StartState是ISceneState接口的一个实例,作为初始场景状态类展示场景状态的使用方法
8 | 作用:控制主程序的Initialize、FixedUpdate、Update、Release
9 | 使用:建议的命名为:SceneName要和场景名称相同,SceneState类名为"场景名称"+"Scene"。场景、场景名、场景类一一对应,不要重名
10 | 补充:
11 | History:
12 | ----------------------------------------------------------------------------*/
13 |
14 | using System.Collections;
15 | using System.Collections.Generic;
16 | using UnityEngine;
17 |
18 | namespace SFramework
19 | {
20 | public class StartScene : ISceneState
21 | {
22 | public StartScene(SceneStateController controller) : base(controller)
23 | {
24 | this.SceneName = "Start";
25 | }
26 |
27 | public override void StateBegin()
28 | {
29 | base.StateBegin();
30 | // 场景初始化
31 | gameMainProgram.playerMgr.BuildPlayer(Vector3.zero, Quaternion.identity);
32 | gameMainProgram.playerMgr.CanInput = true; // 接受输入
33 | // 其他角色在Player之后创建
34 |
35 | // UI,BGM
36 | GameMainProgram.Instance.uiManager.ShowUIForms("FadeOut");
37 | gameMainProgram.audioMgr.PlayMusic(0);
38 | }
39 |
40 | public override void StateEnd()
41 | {
42 | // 先Release其他成员,再调用base
43 | base.StateEnd();
44 | }
45 |
46 | public override void FixedUpdate()
47 | {
48 | base.FixedUpdate();
49 | }
50 |
51 | public override void StateUpdate()
52 | {
53 | base.StateUpdate();
54 | }
55 |
56 | }
57 | }
58 |
--------------------------------------------------------------------------------
/Assets/Scripts/SFramework/SceneState/StartScene.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: bec48145901e23b43872110c669c72fd
3 | MonoImporter:
4 | externalObjects: {}
5 | serializedVersion: 2
6 | defaultReferences: []
7 | executionOrder: 0
8 | icon: {instanceID: 0}
9 | userData:
10 | assetBundleName:
11 | assetBundleVariant:
12 |
--------------------------------------------------------------------------------
/Assets/Scripts/SFramework/SystemDefine.cs:
--------------------------------------------------------------------------------
1 | /*----------------------------------------------------------------------------
2 | Author:
3 | Anotts
4 | Date:
5 | 2017/08/01
6 | Description:
7 | 简介:系统全局变量定义文件
8 | 作用:定义系统的全局变量,在本文件保存除UI外所有全局公共枚举。UI相关的全局变量放在Common.cs文件中
9 | 使用:可以直接为契合项目而修改本文件,设置你需要的全局变量(包括枚举类型)
10 | 补充:
11 | History:
12 | ----------------------------------------------------------------------------*/
13 |
14 | namespace SFramework
15 | {
16 | ///
17 | /// 系统全局变量设置
18 | ///
19 | public static class SystemDefine
20 | {
21 | // 填写全局变量
22 |
23 | }
24 |
25 | public enum ObjectLayer
26 | {
27 | Default = 0,
28 | TransparentFX = 1,
29 | IgnoreRaycast = 2,
30 | BuiltinLayer3,
31 | Water = 4,
32 | UI = 5,
33 | BuiltinLayer6,
34 | BuiltinLayer7,
35 | Ground = 8,
36 | Player = 9,
37 | Enemy = 10,
38 | Effect = 11,
39 | PlayerWeapon = 12,
40 | EnemyWeapon = 13,
41 | Without = 14,
42 | Wall = 15,
43 | PostProcessing = 16,
44 | }
45 |
46 | ///
47 | /// 装备的类型,及对应的Slot位置
48 | ///
49 | public enum FitType
50 | {
51 | Prop = -1, // 非药物的道具,不可装备
52 | Cloth = 0,
53 | Cestus = 1,
54 | Weapon = 2,
55 | Decoration = 3,
56 | Pants = 4,
57 | Shoe = 5,
58 | }
59 |
60 | public enum PropType
61 | {
62 | Medicine=0,
63 | Material=1,
64 | Event=2
65 | }
66 |
67 | ///
68 | /// 定义Hurt的返回值
69 | ///
70 | public enum EnemyAction
71 | {
72 | Hurt = 0, // 受伤
73 | Defend = 1, // 轻攻击防御,重攻击被破防
74 | Parry = 2, // 轻攻击防御,重攻击弹开
75 | Shield = 3, // 轻重攻击都弹开
76 | Miss = 4, // 未命中
77 | }
78 |
79 | public enum EnemyType
80 | {
81 | Monster = 0,
82 | Warrior = 1,
83 | Magian = 2,
84 | }
85 |
86 | ///
87 | /// 各个事件
88 | ///
89 | public enum EventName
90 | {
91 | PlayerHP_SP = 0,
92 | PlayerDead = 1,
93 | MedicineNum = 2,
94 | BossDead = 3,
95 | DialogComplete=4,
96 | }
97 |
98 | ///
99 | /// 使用标准委托的事件
100 | ///
101 | public enum EventHandlerName
102 | { }
103 |
104 |
105 |
106 | }
107 |
--------------------------------------------------------------------------------
/Assets/Scripts/SFramework/SystemDefine.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 445384674dbf5c1418cfa10cf4288ff8
3 | timeCreated: 1495261666
4 | licenseType: Pro
5 | MonoImporter:
6 | serializedVersion: 2
7 | defaultReferences: []
8 | executionOrder: 0
9 | icon: {instanceID: 0}
10 | userData:
11 | assetBundleName:
12 | assetBundleVariant:
13 |
--------------------------------------------------------------------------------
/Assets/Scripts/SFramework/UI.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: e6dc5e99e04f55c49afd1d6920f9532f
3 | folderAsset: yes
4 | timeCreated: 1494397434
5 | licenseType: Pro
6 | DefaultImporter:
7 | userData:
8 | assetBundleName:
9 | assetBundleVariant:
10 |
--------------------------------------------------------------------------------
/Assets/Scripts/SFramework/UI/Common.cs:
--------------------------------------------------------------------------------
1 | /*----------------------------------------------------------------------------
2 | Author:
3 | Anotts
4 | Date:
5 | 2017/08/01
6 | Description:
7 | 简介:UI框架核心参数
8 | 作用:包括
9 | 1:系统常量
10 | 2:全局性方法。
11 | 3:系统枚举类型
12 | 4:委托定义
13 | 使用:
14 | 补充:
15 | History:
16 | ----------------------------------------------------------------------------*/
17 |
18 | using UnityEngine;
19 |
20 | namespace SFramework
21 | {
22 | #region 系统枚举类型
23 |
24 | ///
25 | /// UI窗体(位置)类型
26 | ///
27 | public enum UIFormType
28 | {
29 | ///
30 | /// 普通窗体
31 | ///
32 | Normal,
33 | ///
34 | /// 固定窗体,非全屏非弹出窗体均属于这种,位置放在Normal之上,如CharacterInventory
35 | ///
36 | Fixed,
37 | ///
38 | /// 弹出窗体,位置最靠前
39 | ///
40 | PopUp
41 | }
42 |
43 | ///
44 | /// UI窗体的显示类型
45 | ///
46 | public enum UIFormShowMode
47 | {
48 | ///
49 | /// 可以与其他窗体并列显示的窗体
50 | ///
51 | Normal,
52 | ///
53 | /// “反向切换”:用于弹出窗体,栈存储,即我们一般要求玩家必须先关闭弹出的顶层窗体,再依次关闭下一级窗体。
54 | ///
55 | ReverseChange,
56 | ///
57 | /// 隐藏其他窗体,通常用于全屏窗体
58 | ///
59 | HideOther
60 | }
61 |
62 | ///
63 | /// 遮罩窗体透明度类型,仅对弹出窗体有用
64 | ///
65 | public enum UIFormLucenyType
66 | {
67 | ///
68 | /// 完全透明,不能穿透
69 | ///
70 | Lucency,
71 | ///
72 | /// 半透明,不能穿透
73 | ///
74 | Translucence,
75 | ///
76 | /// 低透明,不能穿透
77 | ///
78 | ImPenetrable,
79 | ///
80 | /// 可以穿透
81 | ///
82 | Pentrate
83 | }
84 |
85 | #endregion
86 |
87 | public class Common : MonoBehaviour
88 | {
89 | /* 路径常量 */
90 | public const string SYS_PATH_CANVAS = "Canvas";
91 | public const string SYS_PATH_UI = @"\Resources\UI\";
92 | /* 标签常量 */
93 | public const string SYS_TAG_CANVAS = "Canvas";
94 | /* 节点常量 */
95 | public const string SYS_NORMAL_NODE = "Normal";
96 | public const string SYS_FIXED_NODE = "Fixed";
97 | public const string SYS_POPUP_NODE = "PopUp";
98 |
99 | /* 摄像机层深的常量 */
100 |
101 | /* 全局性的方法 */
102 | //Todo...
103 |
104 | /* 委托的定义 */
105 | //Todo....
106 | }
107 | }
108 |
--------------------------------------------------------------------------------
/Assets/Scripts/SFramework/UI/Common.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: f9fd2b26a0b915d4180fca874b4e17a7
3 | timeCreated: 1493519311
4 | licenseType: Pro
5 | MonoImporter:
6 | serializedVersion: 2
7 | defaultReferences: []
8 | executionOrder: 0
9 | icon: {instanceID: 0}
10 | userData:
11 | assetBundleName:
12 | assetBundleVariant:
13 |
--------------------------------------------------------------------------------
/Assets/Scripts/SFramework/UI/UIDialog.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: c222914617cb1f94d9b1ac1f2155d3cc
3 | timeCreated: 1504004788
4 | licenseType: Pro
5 | MonoImporter:
6 | serializedVersion: 2
7 | defaultReferences: []
8 | executionOrder: 0
9 | icon: {instanceID: 0}
10 | userData:
11 | assetBundleName:
12 | assetBundleVariant:
13 |
--------------------------------------------------------------------------------
/Assets/Scripts/SFramework/UI/UILoading.cs:
--------------------------------------------------------------------------------
1 | /*----------------------------------------------------------------------------
2 | Author:
3 | Anotts
4 | Date:
5 | 2017/08/01
6 | Description:
7 | 简介:实现异步加载的UI进度条
8 | 作用:Loading场景作为异步的中转站
9 | 使用:
10 | 补充:
11 | History:
12 | ----------------------------------------------------------------------------*/
13 |
14 | using System.Collections;
15 | using System.Collections.Generic;
16 | using UnityEngine;
17 | using UnityEngine.UI;
18 | using UnityEngine.SceneManagement;
19 |
20 | namespace SFramework
21 | {
22 | public class UILoading : MonoBehaviour
23 | {
24 | public static string nextScene = "Main"; // 静态传值
25 | public Image fillImg;
26 | public Text percentageText;
27 |
28 | void Start()
29 | {
30 | StartCoroutine(LoadingSceneAsync(nextScene));
31 | }
32 |
33 | ///
34 | /// 异步加载
35 | ///
36 | ///
37 | ///
38 | private IEnumerator LoadingSceneAsync(string sceneName)
39 | {
40 | float displayProgress = 0; // 显示进度
41 | float toProgress = 0; // 当前加载的进度
42 | AsyncOperation op = SceneManager.LoadSceneAsync(sceneName);
43 | op.allowSceneActivation = false; // 未加载完时不激活这个Scene
44 | while (op.progress < 0.9f)
45 | {
46 | toProgress = (int)op.progress;
47 | while (displayProgress < toProgress)
48 | {
49 | displayProgress += 0.01f;
50 | percentageText.text = (int)(displayProgress * 100)+"%";
51 | fillImg.fillAmount = displayProgress;
52 | yield return new WaitForEndOfFrame();
53 | }
54 | }
55 | toProgress = 1;
56 | while (displayProgress < toProgress)
57 | {
58 | displayProgress += 0.01f;
59 | percentageText.text = (int)(displayProgress * 100) + "%";
60 | fillImg.fillAmount = displayProgress;
61 | yield return new WaitForEndOfFrame();
62 | }
63 | op.allowSceneActivation = true; // 其实同步如果更快的话早就加载完了,但是再快我们也要限制在100帧后才能激活新场景
64 | }
65 | }
66 | }
--------------------------------------------------------------------------------
/Assets/Scripts/SFramework/UI/UILoading.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 29070bc1fb541ec45bb032050e18fee4
3 | timeCreated: 1501252896
4 | licenseType: Pro
5 | MonoImporter:
6 | serializedVersion: 2
7 | defaultReferences: []
8 | executionOrder: 0
9 | icon: {instanceID: 0}
10 | userData:
11 | assetBundleName:
12 | assetBundleVariant:
13 |
--------------------------------------------------------------------------------
/Assets/Scripts/SFramework/UI/UIManager.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 1cd4c60b230ece54fae05878fa6a4d74
3 | timeCreated: 1493527438
4 | licenseType: Pro
5 | MonoImporter:
6 | serializedVersion: 2
7 | defaultReferences: []
8 | executionOrder: 0
9 | icon: {instanceID: 0}
10 | userData:
11 | assetBundleName:
12 | assetBundleVariant:
13 |
--------------------------------------------------------------------------------
/Assets/Scripts/SFramework/UI/UIMaskMgr.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: bda93cb4741891b4ca54f2bd31857612
3 | timeCreated: 1493526541
4 | licenseType: Pro
5 | MonoImporter:
6 | serializedVersion: 2
7 | defaultReferences: []
8 | executionOrder: 0
9 | icon: {instanceID: 0}
10 | userData:
11 | assetBundleName:
12 | assetBundleVariant:
13 |
--------------------------------------------------------------------------------
/Assets/Scripts/SFramework/UI/ViewBase.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: b5ca92bc6578efd40a96d563a400d18c
3 | timeCreated: 1493519032
4 | licenseType: Pro
5 | MonoImporter:
6 | serializedVersion: 2
7 | defaultReferences: []
8 | executionOrder: 0
9 | icon: {instanceID: 0}
10 | userData:
11 | assetBundleName:
12 | assetBundleVariant:
13 |
--------------------------------------------------------------------------------
/Assets/Scripts/SFramework/Utility.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 0d3511ade84e2ef49a7e6236b5830578
3 | folderAsset: yes
4 | timeCreated: 1501250951
5 | licenseType: Pro
6 | DefaultImporter:
7 | userData:
8 | assetBundleName:
9 | assetBundleVariant:
10 |
--------------------------------------------------------------------------------
/Assets/Scripts/SFramework/Utility/ExtensionMethods.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Collections.Generic;
3 | using System.Linq;
4 | using System.Text;
5 |
6 | namespace SFramework
7 | {
8 | ///
9 | /// 扩展方法集中管理静态类
10 | ///
11 | public static class ExtensionMethods
12 | {
13 | ///
14 | /// 为string扩展IsNullOrEmpty方法
15 | ///
16 | ///
17 | ///
18 | public static bool IsNullOrEmpty(this string str)
19 | {
20 | return String.IsNullOrEmpty(str);
21 | }
22 |
23 | }
24 | }
25 |
--------------------------------------------------------------------------------
/Assets/Scripts/SFramework/Utility/ExtensionMethods.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: a1f8fbbb52b9e2a43882c6b5207a1ed8
3 | timeCreated: 1508256260
4 | licenseType: Free
5 | MonoImporter:
6 | serializedVersion: 2
7 | defaultReferences: []
8 | executionOrder: 0
9 | icon: {instanceID: 0}
10 | userData:
11 | assetBundleName:
12 | assetBundleVariant:
13 |
--------------------------------------------------------------------------------
/Assets/Scripts/SFramework/Utility/GameData.cs:
--------------------------------------------------------------------------------
1 | /*----------------------------------------------------------------------------
2 | Author:
3 | Anotts
4 | Date:
5 | 2017/08/01
6 | Description:
7 | 简介:存档包含的数据(包括游戏存档和设置存档)
8 | 作用:持久化数据
9 | 使用:根据自己需要保存的数据来编写
10 | 补充:
11 | History:
12 | ----------------------------------------------------------------------------*/
13 |
14 | using UnityEngine;
15 | using System.Collections.Generic;
16 |
17 | namespace SFramework
18 | {
19 | ///
20 | /// Xml存档的数据对象
21 | /// 读取引用类型的数据从GameData获取比较保险,读取值类型数据则从CurrentPlayer获取
22 | ///
23 | public class GameData
24 | {
25 | // 密钥,用于防止拷贝存档
26 | public string key;
27 |
28 | // 下面是添加需要储存的内容,目前都是Player的内容
29 | // Player的属性由装备和初始值决定,无需记录
30 | public string Name { get; set; }
31 | public int Rank { get; set; }
32 | public int Gold { get; set; }
33 | // 技能开关
34 | public bool CanAttack { get; set; }
35 | // 装备和道具
36 | public IEquip[] Fit { get; set; }
37 | public int[] PropNum { get; set; } // 和Player使用同一地址
38 | // 任务数据
39 | public List TasksData { get; set; }
40 |
41 | public GameData()
42 | {
43 | //构造函数,设置默认存档
44 | key = SystemInfo.deviceUniqueIdentifier; //设定密钥,根据具体平台设定//
45 | // Player
46 | Name = "我";
47 | Rank = 1;
48 | Gold = 100;
49 |
50 | CanAttack = true;
51 | // 初始装备
52 | Fit = new IEquip[6];
53 | Fit[(int)FitType.Weapon] = UnityHelper.FindDic(GameMainProgram.Instance.dataBaseMgr.equipDict, "太刀");
54 | // 初始背包,1~31值为-1
55 | PropNum = new int[32];
56 | for (int i = 1; i < 32; i++)
57 | PropNum[i] = -1;
58 | PropNum[0] = 3;
59 | // 其他
60 | TasksData = new List();
61 | }
62 | }
63 |
64 | ///
65 | /// 存储设置数据。
66 | /// 结束场景时存档,加载场景时读档(BuildPlayer),但是只有第一次读档是从文件中读档,之后直接读取运行时存档即可
67 | ///
68 | public class SettingData
69 | {
70 | // 因为不能存float,所以int放大100倍
71 | public int MusicVolume { get; set; }
72 | public int SoundVolume { get; set; }
73 | public bool IsChinese { get; set; } // 语言变更后需要重新打开UI才能生效,但是一般打开Setting时,其他UI都没打开
74 |
75 | public SettingData()
76 | {
77 | MusicVolume = 100;
78 | SoundVolume = 100;
79 | IsChinese = true;
80 | }
81 | }
82 | }
83 |
--------------------------------------------------------------------------------
/Assets/Scripts/SFramework/Utility/GameData.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 95d366352b7726940a132adc7457aabd
3 | timeCreated: 1501750850
4 | licenseType: Pro
5 | MonoImporter:
6 | serializedVersion: 2
7 | defaultReferences: []
8 | executionOrder: 0
9 | icon: {instanceID: 0}
10 | userData:
11 | assetBundleName:
12 | assetBundleVariant:
13 |
--------------------------------------------------------------------------------
/Assets/Scripts/SFramework/Utility/Loom.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 4990af10fa4077848b2521dd9c1a9850
3 | timeCreated: 1508291796
4 | licenseType: Free
5 | MonoImporter:
6 | serializedVersion: 2
7 | defaultReferences: []
8 | executionOrder: 0
9 | icon: {instanceID: 0}
10 | userData:
11 | assetBundleName:
12 | assetBundleVariant:
13 |
--------------------------------------------------------------------------------
/Assets/Scripts/SFramework/Utility/Singleton.cs:
--------------------------------------------------------------------------------
1 | /*----------------------------------------------------------------------------
2 | Author:
3 | Anotts
4 | Date:
5 | 2017/08/01
6 | Description:
7 | 简介:框架中提供了两个单例模式的模板,此类为不继承MonoBehaviour的模板
8 | 作用:易于实现单例模式
9 | 使用:继承该单例类即可
10 | 补充:注意单例类的构造函数必须是private的,这样才能确保类只有一个对象,不让外部类实例化该类
11 | 单例类不能够被继承
12 | History:
13 | ----------------------------------------------------------------------------*/
14 |
15 | using UnityEngine;
16 |
17 | namespace SFramework
18 | {
19 | ///
20 | /// 单例模板,不继承MonoBehaviour。new()约束可以让编译器知道:提供的任何类型参数都必须具有可访问的无参数(或默认)构造函数。
21 | ///
22 | ///
23 | public class Singleton where T : new()
24 | {
25 | private static T _instance;
26 |
27 | public static T Instance
28 | {
29 | get
30 | {
31 | if (_instance == null)
32 | {
33 | _instance = new T();
34 | // 不继承mono的单例不一定要挂载到gameObject上
35 | Debug.Log("生成Singleton" + typeof(T).ToString());
36 | }
37 | return _instance;
38 | }
39 | }
40 |
41 | }
42 | }
--------------------------------------------------------------------------------
/Assets/Scripts/SFramework/Utility/Singleton.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 00b597c4bb3ac4044b4a6c6e23819651
3 | timeCreated: 1493481126
4 | licenseType: Pro
5 | MonoImporter:
6 | serializedVersion: 2
7 | defaultReferences: []
8 | executionOrder: 0
9 | icon: {instanceID: 0}
10 | userData:
11 | assetBundleName:
12 | assetBundleVariant:
13 |
--------------------------------------------------------------------------------
/Assets/Scripts/SFramework/Utility/SingletonMonoBehaviour.cs:
--------------------------------------------------------------------------------
1 | /*----------------------------------------------------------------------------
2 | Author:
3 | Anotts
4 | Date:
5 | 2017/08/01
6 | Description:
7 | 简介:框架中提供了两个单例模式的模板,此类为继承MonoBehaviour的模板
8 | 作用:易于实现单例模式
9 | 使用:继承该单例类即可
10 | 补充:注意单例类的构造函数必须是private的,这样才能确保类只有一个对象,不让外部类实例化该类
11 | 单例类不能够被继承
12 | History:
13 | ----------------------------------------------------------------------------*/
14 |
15 | using System.Collections;
16 | using System.Collections.Generic;
17 | using UnityEngine;
18 |
19 | namespace SFramework
20 | {
21 | ///
22 | /// 单例模板,要求T(类)继承MonoBehaviour
23 | ///
24 | ///
25 | public class SingletonMonoBehaviour : MonoBehaviour where T : MonoBehaviour
26 | {
27 | private static T _instance;
28 | ///
29 | /// 外界通过属性调用单例以及创建单例
30 | ///
31 | public static T Instance
32 | {
33 | get
34 | {
35 | if (_instance == null)
36 | {
37 | _instance = FindObjectOfType();
38 |
39 | if (_instance == null)
40 | {
41 | _instance = new GameObject("single_" + typeof(T)).AddComponent();
42 | print("生成SingletonMonoBehaviour" + typeof(T).ToString());
43 | }
44 | }
45 | return _instance;
46 | }
47 | }
48 | protected virtual void Init()
49 | {
50 | DontDestroyOnLoad(gameObject);//切换场景不销毁
51 | hideFlags = HideFlags.DontSave;
52 | }
53 | ///
54 | /// awake时进行单例检测和初始化
55 | ///
56 | protected virtual void Awake()
57 | {
58 | if (_instance == null)
59 | _instance = GetComponent();
60 | else if (_instance != GetComponent())
61 | {
62 | Debug.LogWarningFormat("场景中超过1个{0},关闭新增的物体", typeof(T).ToString());
63 | gameObject.SetActive(false);
64 | return;
65 | }
66 | Init();
67 | }
68 | }
69 | }
--------------------------------------------------------------------------------
/Assets/Scripts/SFramework/Utility/SingletonMonoBehaviour.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 75d6c9cb64df25541b2df223971943cb
3 | timeCreated: 1493481126
4 | licenseType: Pro
5 | MonoImporter:
6 | serializedVersion: 2
7 | defaultReferences: []
8 | executionOrder: 0
9 | icon: {instanceID: 0}
10 | userData:
11 | assetBundleName:
12 | assetBundleVariant:
13 |
--------------------------------------------------------------------------------
/Assets/Scripts/SFramework/Utility/Task.cs:
--------------------------------------------------------------------------------
1 | /*----------------------------------------------------------------------------
2 | Author:
3 | Anotts
4 | Date:
5 | 2017/08/01
6 | Description:
7 | 简介:简易的任务系统,包括存储任务显示信息的Task结构,和存储玩家任务完成情况的TaskData结构
8 | 作用:
9 | 使用:可以根据项目需要改写代码。添加任务-调用IPlayer.AddTask(目前暂时只在UITasksMenu中用到)
10 | 补充:TODO:暂未完善
11 | History:
12 | ----------------------------------------------------------------------------*/
13 |
14 | using UnityEngine;
15 |
16 | namespace SFramework
17 | {
18 | ///
19 | /// 存储任务信息,存在数据库文件中
20 | ///
21 | public class Task
22 | {
23 | public string TaskName { get; set; }
24 | public string TaskPlace { get; set; }
25 | public int TaskAward { get; set; }
26 |
27 | public Task()
28 | {
29 | TaskName = "讨伐xxx";
30 | TaskPlace = "xx";
31 | TaskAward = 0;
32 | }
33 | }
34 |
35 | ///
36 | /// 存储任务完成相关信息,存在存档里
37 | ///
38 | public class TaskData
39 | {
40 | public int Id { get; set; } // 对应在任务数据库的下标
41 | public bool IsActive { get; set; }
42 |
43 | public bool HasCompleted
44 | {
45 | get { return HasCompletedRank1 || HasCompletedRank2 || HasCompletedRank3; }
46 | }
47 | public bool HasCompletedRank1 { get; set; }
48 | public bool HasCompletedRank2 { get; set; }
49 | public bool HasCompletedRank3 { get; set; }
50 |
51 | ///
52 | /// 添加新任务时,默认的构造
53 | ///
54 | public TaskData()
55 | {
56 | Id = 0;
57 | IsActive = true;
58 | }
59 | }
60 | }
61 |
--------------------------------------------------------------------------------
/Assets/Scripts/SFramework/Utility/Task.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 08cca3c6bb8e30e49b921fbf015edaa3
3 | timeCreated: 1552661039
4 | licenseType: Free
5 | MonoImporter:
6 | serializedVersion: 2
7 | defaultReferences: []
8 | executionOrder: 0
9 | icon: {instanceID: 0}
10 | userData:
11 | assetBundleName:
12 | assetBundleVariant:
13 |
--------------------------------------------------------------------------------
/Assets/Scripts/SFramework/Utility/UnityHelper.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 42b54c45ec5c236489f324ff353c634b
3 | timeCreated: 1493521757
4 | licenseType: Pro
5 | MonoImporter:
6 | serializedVersion: 2
7 | defaultReferences: []
8 | executionOrder: 0
9 | icon: {instanceID: 0}
10 | userData:
11 | assetBundleName:
12 | assetBundleVariant:
13 |
--------------------------------------------------------------------------------
/Assets/Scripts/SFramework/Utility/XmlSaver.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 4bc290d402774f749bb22241c82cd80f
3 | timeCreated: 1501299965
4 | licenseType: Pro
5 | MonoImporter:
6 | serializedVersion: 2
7 | defaultReferences: []
8 | executionOrder: 0
9 | icon: {instanceID: 0}
10 | userData:
11 | assetBundleName:
12 | assetBundleVariant:
13 |
--------------------------------------------------------------------------------
/Assets/Scripts/SFramework/Weapon.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 93a3b1292a253a84a9387b36dbe02138
3 | folderAsset: yes
4 | timeCreated: 1499872825
5 | licenseType: Pro
6 | DefaultImporter:
7 | userData:
8 | assetBundleName:
9 | assetBundleVariant:
10 |
--------------------------------------------------------------------------------
/Assets/Scripts/SFramework/Weapon/IEnemyWeapon.cs:
--------------------------------------------------------------------------------
1 | using System.Collections;
2 | using System.Collections.Generic;
3 | using UnityEngine;
4 |
5 | namespace SFramework
6 | {
7 | ///
8 | ///+ 敌人武器所需属性
9 | ///+ EnemyMediator
10 | /// 武器的控制层
11 | ///
12 | public abstract class IEnemyWeapon : IWeaponMono
13 | {
14 | public EnemyMediator EnemyMedi { get; set; }
15 | public bool IsOnlyPlayer { get; set; }
16 | protected PlayerHurtAttr PlayerHurtAttr { get; set; }
17 | protected IPlayerMono OnlyPlayerMono { get; set; }
18 |
19 | public override void Initialize()
20 | {
21 | base.Initialize();
22 | //一定要初始化
23 | TransformForward = Vector3.zero;
24 | PlayerHurtAttr = new PlayerHurtAttr();
25 | }
26 |
27 | }
28 | }
--------------------------------------------------------------------------------
/Assets/Scripts/SFramework/Weapon/IEnemyWeapon.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 89f0bb4cf9d5c494a98351427851c4e7
3 | timeCreated: 1495187877
4 | licenseType: Pro
5 | MonoImporter:
6 | serializedVersion: 2
7 | defaultReferences: []
8 | executionOrder: 0
9 | icon: {instanceID: 0}
10 | userData:
11 | assetBundleName:
12 | assetBundleVariant:
13 |
--------------------------------------------------------------------------------
/Assets/Scripts/SFramework/Weapon/IPlayerWeapon.cs:
--------------------------------------------------------------------------------
1 | using System.Collections;
2 | using System.Collections.Generic;
3 | using UnityEngine;
4 |
5 | namespace SFramework
6 | {
7 | ///
8 | /// + 玩家武器所需属性
9 | /// + PlayerMediator
10 | /// 武器的控制层
11 | ///
12 | public abstract class IPlayerWeapon:IWeaponMono
13 | {
14 | protected string hitEffectPath; //打击特效
15 | protected List enemyList;
16 |
17 | public PlayerMediator PlayerMedi { get; set; }
18 | protected EnemyHurtAttr EnemyHurtAttribute { get; set; }
19 | ///
20 | /// 敌人是否防御住了攻击
21 | ///
22 | protected EnemyAction EnemyReturn { get; set; }
23 |
24 | ///
25 | /// 清空队列,提供给AnimEvent
26 | ///
27 | public void ClearList()
28 | {
29 | enemyList.Clear();
30 | }
31 |
32 | public override void Initialize()
33 | {
34 | base.Initialize();
35 | EnemyHurtAttribute = new EnemyHurtAttr();
36 | EnemyReturn = EnemyAction.Hurt;
37 | //List必须要初始化
38 | enemyList = new List();
39 | }
40 |
41 | public override void Release()
42 | {
43 | base.Release();
44 | ClearList();
45 | }
46 |
47 | }
48 | }
49 |
--------------------------------------------------------------------------------
/Assets/Scripts/SFramework/Weapon/IPlayerWeapon.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 18cbbf44b2ef63e4da94851145eb4382
3 | timeCreated: 1499915190
4 | licenseType: Pro
5 | MonoImporter:
6 | serializedVersion: 2
7 | defaultReferences: []
8 | executionOrder: 0
9 | icon: {instanceID: 0}
10 | userData:
11 | assetBundleName:
12 | assetBundleVariant:
13 |
--------------------------------------------------------------------------------
/Assets/Scripts/SFramework/Weapon/IWeaponMono.cs:
--------------------------------------------------------------------------------
1 | /*----------------------------------------------------------------------------
2 | Author:
3 | Anotts
4 | Date:
5 | 2017/08/01
6 | Description:
7 | 简介:
8 | 作用:
9 | 使用:
10 | 补充:
11 | History:
12 | ----------------------------------------------------------------------------*/
13 |
14 | using System.Collections;
15 | using System.Collections.Generic;
16 | using UnityEngine;
17 |
18 | namespace SFramework
19 | {
20 | ///
21 | ///+ 可在检视面板设置的属性
22 | ///+ 武器战斗系统所需属性
23 | ///会细分为Player和Enemy两种,两者的武器可以互相转换
24 | ///
25 | public class IWeaponMono : MonoBehaviour
26 | {
27 | //可在检视面板设置的属性
28 | public float m_AttackFactor = 1; //攻击力系数,不同的攻击方式改变的是攻击力系数而不是基础攻击力
29 | public float m_VelocityForward = 6;
30 | public float m_VelocityVertical;
31 | public bool canDefeatedFly = false; // 攻击后是否击飞
32 | protected ResourcesMgr resourcesMgr;
33 |
34 | public int BasicAttack { get; set; }
35 | public int Crit { get; set; }
36 | //武器战斗系统所需属性
37 | public float AttackFactor { get { return m_AttackFactor; } set { m_AttackFactor = value; } }
38 | public float VelocityForward { get { return m_VelocityForward; } set { m_VelocityForward = value; } }
39 | public float VelocityVertical { get { return m_VelocityVertical; } protected set { m_VelocityVertical = value; } }
40 | public Vector3 TransformForward { get; protected set; }
41 | public Collider WeaponCollider { get; protected set; }
42 | protected float RealAttack { get; set; }
43 |
44 | public virtual void Initialize()
45 | {
46 | resourcesMgr = GameMainProgram.Instance.resourcesMgr;
47 | WeaponCollider = GetComponent();
48 | AttackFactor = 1;
49 | VelocityForward = 7;
50 | }
51 |
52 | public virtual void Release() { }
53 | public virtual void Update() { }
54 | public virtual void FixedUpdate() { }
55 |
56 | protected virtual void OnTriggerEnter(Collider col) { }
57 |
58 | }
59 | }
--------------------------------------------------------------------------------
/Assets/Scripts/SFramework/Weapon/IWeaponMono.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: fd71e139bf4c8e84d805e7ee94161e92
3 | timeCreated: 1499872837
4 | licenseType: Pro
5 | MonoImporter:
6 | serializedVersion: 2
7 | defaultReferences: []
8 | executionOrder: 0
9 | icon: {instanceID: 0}
10 | userData:
11 | assetBundleName:
12 | assetBundleVariant:
13 |
--------------------------------------------------------------------------------
/Assets/Setting.json:
--------------------------------------------------------------------------------
1 | {"MusicVolume":100,"SoundVolume":100,"IsChinese":true}
--------------------------------------------------------------------------------
/Assets/Setting.json.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 2e88a248b277c844586b8c72feb8958f
3 | timeCreated: 1552658778
4 | licenseType: Free
5 | TextScriptImporter:
6 | userData:
7 | assetBundleName:
8 | assetBundleVariant:
9 |
--------------------------------------------------------------------------------
/Assets/StreamingAssets.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 09cb4bf3d7d1868419b9907c6b5d5f9e
3 | folderAsset: yes
4 | DefaultImporter:
5 | externalObjects: {}
6 | userData:
7 | assetBundleName:
8 | assetBundleVariant:
9 |
--------------------------------------------------------------------------------
/Assets/StreamingAssets/DataBase.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 1b94db34a07775445aa3066f04b4b3e1
3 | folderAsset: yes
4 | timeCreated: 1500566935
5 | licenseType: Pro
6 | DefaultImporter:
7 | userData:
8 | assetBundleName:
9 | assetBundleVariant:
10 |
--------------------------------------------------------------------------------
/Assets/StreamingAssets/DataBase/Dialog.json:
--------------------------------------------------------------------------------
1 | {
2 | "Merchant": [
3 | "来买点什么吧",
4 | "不过现在货物紧张,所以能卖的东西比较少咯"
5 | ],
6 | "Recycler": [
7 | "回收各种道具,有多少要多少"
8 | ]
9 | }
--------------------------------------------------------------------------------
/Assets/StreamingAssets/DataBase/Dialog.json.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: f5005f2667603a147b043e26d181c420
3 | timeCreated: 1504008122
4 | licenseType: Pro
5 | DefaultImporter:
6 | userData:
7 | assetBundleName:
8 | assetBundleVariant:
9 |
--------------------------------------------------------------------------------
/Assets/StreamingAssets/DataBase/EnemyEquip.json:
--------------------------------------------------------------------------------
1 | {
2 | "野猪武器": {
3 | "Type": 3,
4 | "IconPath": "Icons\\Weapon\\Katana",
5 | "Name": "野猪武器",
6 | "Detail": "",
7 | "CanSale": false,
8 | "Price": 0,
9 | "SalePrice": 1,
10 | "HP": 0,
11 | "SP": 0,
12 | "Attack": 10,
13 | "Defend": 0,
14 | "Crit": 0,
15 | "Speed": 0
16 | },
17 | "野猪防具": {
18 | "Type": 2,
19 | "IconPath": "Icons\\Cloth\\Cloth",
20 | "Name": "野猪防具",
21 | "Detail": "",
22 | "CanSale": false,
23 | "Price": 0,
24 | "SalePrice": 1,
25 | "HP": 200,
26 | "SP": 0,
27 | "Attack": 0,
28 | "Defend": 0,
29 | "Crit": 0,
30 | "Speed": 0
31 | }
32 | }
--------------------------------------------------------------------------------
/Assets/StreamingAssets/DataBase/EnemyEquip.json.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: cf892e5c8207d5d4b9b42a35fc3786f2
3 | timeCreated: 1500784200
4 | licenseType: Pro
5 | DefaultImporter:
6 | userData:
7 | assetBundleName:
8 | assetBundleVariant:
9 |
--------------------------------------------------------------------------------
/Assets/StreamingAssets/DataBase/Equip.json:
--------------------------------------------------------------------------------
1 | {
2 | "太刀": {
3 | "Type": 3,
4 | "IconPath": "Icons\\Weapon\\Katana",
5 | "Name": "太刀",
6 | "Detail": "精心加工而成的太刀,用各种方式斩杀怪物都不会有问题",
7 | "CanSale": false,
8 | "Price": 60,
9 | "SalePrice": 30,
10 | "HP": 0,
11 | "SP": 0,
12 | "Attack": 20,
13 | "Defend": 0,
14 | "Crit": 0,
15 | "Speed": 0
16 | }
17 | }
--------------------------------------------------------------------------------
/Assets/StreamingAssets/DataBase/Equip.json.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: bb2fcc712e446b7439f679cdfa60fcba
3 | timeCreated: 1500645956
4 | licenseType: Pro
5 | DefaultImporter:
6 | userData:
7 | assetBundleName:
8 | assetBundleVariant:
9 |
--------------------------------------------------------------------------------
/Assets/StreamingAssets/DataBase/Language_CN.json:
--------------------------------------------------------------------------------
1 | {
2 | "Battle": "战斗",
3 | "Pack": "背包",
4 | "Store": "商店",
5 | "Make": "打造",
6 | "Setting": "设置",
7 | "Help": "帮助",
8 | "Exit": "退出",
9 | "Equip": "装备",
10 | "Prop": "道具",
11 | "Buy": "购买",
12 | "Sale": "出售"
13 | }
--------------------------------------------------------------------------------
/Assets/StreamingAssets/DataBase/Language_CN.json.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 4a36c18362ec9e0499e26fdc6a7a4cec
3 | timeCreated: 1501052227
4 | licenseType: Pro
5 | DefaultImporter:
6 | userData:
7 | assetBundleName:
8 | assetBundleVariant:
9 |
--------------------------------------------------------------------------------
/Assets/StreamingAssets/DataBase/Language_EN.json:
--------------------------------------------------------------------------------
1 | {
2 | "Battle": "Battle",
3 | "Pack": "Pack"
4 | }
--------------------------------------------------------------------------------
/Assets/StreamingAssets/DataBase/Language_EN.json.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 12259820d2379cf44bb20e44ad9e3c2c
3 | timeCreated: 1501054119
4 | licenseType: Pro
5 | DefaultImporter:
6 | userData:
7 | assetBundleName:
8 | assetBundleVariant:
9 |
--------------------------------------------------------------------------------
/Assets/StreamingAssets/DataBase/Prop.json:
--------------------------------------------------------------------------------
1 | [
2 | {
3 | "Id": 0,
4 | "Type": 0,
5 | "MaxNum": 10,
6 | "IconPath": "Icons\\Prop\\RedMedicine",
7 | "Name": "红血瓶",
8 | "Detail": "可以携带,喝下后能够回复少量的HP。",
9 | "CanSale": true,
10 | "Price": 50,
11 | "SalePrice": 25,
12 | "HP": 50,
13 | "SP": 0,
14 | "Attack": 0,
15 | "Defend": 0,
16 | "Crit": 0,
17 | "Speed": 0
18 | }
19 | ]
--------------------------------------------------------------------------------
/Assets/StreamingAssets/DataBase/Prop.json.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 053cefc74d849f84892bee9f3e40478a
3 | timeCreated: 1500646351
4 | licenseType: Pro
5 | DefaultImporter:
6 | userData:
7 | assetBundleName:
8 | assetBundleVariant:
9 |
--------------------------------------------------------------------------------
/Assets/StreamingAssets/DataBase/Tasks.json:
--------------------------------------------------------------------------------
1 | [
2 | {
3 | "TaskName": "讨伐石巨人",
4 | "TaskPlace": "神庙",
5 | "TaskAward": 100
6 | }
7 | ]
--------------------------------------------------------------------------------
/Assets/StreamingAssets/DataBase/Tasks.json.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 29ceda7003945eb4796fef113858e5c1
3 | timeCreated: 1504489802
4 | licenseType: Pro
5 | DefaultImporter:
6 | userData:
7 | assetBundleName:
8 | assetBundleVariant:
9 |
--------------------------------------------------------------------------------
/Assets/StreamingAssets/Log.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 4d24c1d3e56f8984d891ab0052af77e7
3 | folderAsset: yes
4 | timeCreated: 1501156312
5 | licenseType: Pro
6 | DefaultImporter:
7 | userData:
8 | assetBundleName:
9 | assetBundleVariant:
10 |
--------------------------------------------------------------------------------
/Assets/StreamingAssets/Log/Game_Log.txt:
--------------------------------------------------------------------------------
1 | Develop|8:18 PM| 角色初始化完毕
2 |
3 | Develop|8:19 PM| 角色初始化完毕
4 |
5 | Develop|8:26 PM| 角色初始化完毕
6 |
7 |
--------------------------------------------------------------------------------
/Assets/StreamingAssets/Log/Game_Log.txt.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: d8c951aecb0c55545adb3d00096144cb
3 | timeCreated: 1501157947
4 | licenseType: Pro
5 | DefaultImporter:
6 | userData:
7 | assetBundleName:
8 | assetBundleVariant:
9 |
--------------------------------------------------------------------------------
/Doc/6.相机控制.md:
--------------------------------------------------------------------------------
1 | ## 相机控制
2 | ##### CameraCtrl
3 | 简介:相机控制系统
4 | 作用:控制游戏中的相机
5 | 使用:我们为Camera制定了一个Prefab,默认是4层结构。
6 | 顶层root结点一般是和transform同步的跟随结点,这个transform会根据具体情况计算出来
7 | 根据不同项目的实现,可能会挂载AutoCam,FreeLookCam等具体的相机脚本
8 | 次层pivot结点负责一些偏移
9 | 然后的MainCamera结点,是Camera实际所在的位置,挂载该脚本
10 | 最后是PreCamera结点,负责显示一些前置特效之类的
11 | 补充:TODO:如果需要一些特殊效果,可以添加DoTween之类的插件
12 | 具体Camera实现结构需改进
13 | 属性-_instance,mainCamera,shakeComponent,AutoCam
14 |
15 | 方法-ShakeMainCamera,DialogCamera,SetAreaLimit,EnableAutoCam
16 |
17 |
18 | 相关技术-DoTween,震屏,相机跟随,插值
19 |
20 | #### 震屏
21 | ##### ShakeObject : MonoBehaviour
22 |
23 | 震动物体,主要用于Camera震屏
24 |
25 | 属性-startTime,directionStrength,speed,duation
26 |
27 | 震动的原理是设置一个AnimationCurve,FixedUpdate中更新物体的position
28 |
29 | curve.Evaluate获得对应时间下的动画曲线
30 |
31 | #### 相机跟随
32 | ##### AutoCam : MonoBehaviour
33 | 属性-m_AutoTarget,m_TargetEnemy,playerTransform,enemyTransform
34 |
35 | 提供了3种Update类型,经测试FixedUpdate时效果最好,能平滑不卡的Lerp移动Camera
36 |
37 | 能同时跟随Player和Enemy两个Transform,并动态地调整距离(根据一个公式计算)。在Target为null或activeFalse时均重新查找
38 |
39 | #### 限制Camera移动范围
40 | 当Player移动出一定范围时,Camera不跟着移动,同时用Collider限制Player移动出Camera,范围是一个矩形,x,-x,z,-z,并用Clamp限制。
41 |
42 | #### 遮挡半透查询控制器
43 | ##### TransparentCam : MonoBehaviour
44 | 需要支持透明通道的Shader
45 |
46 | 通过射线得到碰撞模型的材质,然后修改材质的透明度
47 |
48 | 属性-targetObject,materials,sharedMats,transparentLayer,Dictionary transparentDic,List clearList
49 |
50 | 方法-在Update中调用以下3个方法
51 | - UpdateTransparentObject 每帧对字典中每个材质做渐变处理(控制Shader属性)
52 | - UpdateRayCastHit 相机发出射线,对碰撞到的物体的子物体所有renderer做Shader替换
53 | - RemoveUnuseTransparent 将不再是遮挡半透的材质恢复
54 |
55 | 对每一个Renderer,Shader替换时将该Renderer的信息存到字典中,再替换materials的Shader,换回时用sharedMats还原之前的materials
56 |
57 | 这里选择Transparent/Bumped Diffuse作为透明Shader,注意要把这个Shader打包进来
58 |
59 | #### material与sharedMaterial的区别
60 | 从效率上来说最好用sharedMaterial,它是共享材质,无论如何操作材质的属性(如更换颜色或者更换shader),内存中只会占用一份。
61 |
62 | 用material的话,每次更换属性的时候Unity就会自动new一份新的material作用于它。直到Application.LoadLevel() 或者Resources.UnloadUnusedAssets();的时候才会施放内存。所以material就有可能会造成内存泄漏
63 |
64 | 切换场景时会释放所以一般不要紧
65 |
--------------------------------------------------------------------------------
/Doc/基于Unity3D的游戏框架设计与实现-论文PPT.pptx:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sols11/SFramework/2aecb34fd5adcad0c572c821706fc70b91397ff6/Doc/基于Unity3D的游戏框架设计与实现-论文PPT.pptx
--------------------------------------------------------------------------------
/Logs/Packages-Update.log:
--------------------------------------------------------------------------------
1 |
2 | === Sat Mar 2 16:12:41 2019
3 |
4 | Packages were changed.
5 | Update Mode: mergeDefaultDependencies
6 |
7 | The following packages were added:
8 | com.unity.analytics@3.2.2
9 | com.unity.purchasing@2.0.3
10 | com.unity.ads@2.0.8
11 | com.unity.textmeshpro@1.3.0
12 | com.unity.package-manager-ui@2.0.3
13 | com.unity.collab-proxy@1.2.15
14 | com.unity.modules.ai@1.0.0
15 | com.unity.modules.animation@1.0.0
16 | com.unity.modules.assetbundle@1.0.0
17 | com.unity.modules.audio@1.0.0
18 | com.unity.modules.cloth@1.0.0
19 | com.unity.modules.director@1.0.0
20 | com.unity.modules.imageconversion@1.0.0
21 | com.unity.modules.imgui@1.0.0
22 | com.unity.modules.jsonserialize@1.0.0
23 | com.unity.modules.particlesystem@1.0.0
24 | com.unity.modules.physics@1.0.0
25 | com.unity.modules.physics2d@1.0.0
26 | com.unity.modules.screencapture@1.0.0
27 | com.unity.modules.terrain@1.0.0
28 | com.unity.modules.terrainphysics@1.0.0
29 | com.unity.modules.tilemap@1.0.0
30 | com.unity.modules.ui@1.0.0
31 | com.unity.modules.uielements@1.0.0
32 | com.unity.modules.umbra@1.0.0
33 | com.unity.modules.unityanalytics@1.0.0
34 | com.unity.modules.unitywebrequest@1.0.0
35 | com.unity.modules.unitywebrequestassetbundle@1.0.0
36 | com.unity.modules.unitywebrequestaudio@1.0.0
37 | com.unity.modules.unitywebrequesttexture@1.0.0
38 | com.unity.modules.unitywebrequestwww@1.0.0
39 | com.unity.modules.vehicles@1.0.0
40 | com.unity.modules.video@1.0.0
41 | com.unity.modules.vr@1.0.0
42 | com.unity.modules.wind@1.0.0
43 | com.unity.modules.xr@1.0.0
44 |
--------------------------------------------------------------------------------
/Packages/manifest.json:
--------------------------------------------------------------------------------
1 | {
2 | "dependencies": {
3 | "com.unity.ads": "2.0.8",
4 | "com.unity.analytics": "3.2.2",
5 | "com.unity.collab-proxy": "1.2.15",
6 | "com.unity.package-manager-ui": "2.0.3",
7 | "com.unity.purchasing": "2.0.3",
8 | "com.unity.textmeshpro": "1.3.0",
9 | "com.unity.modules.ai": "1.0.0",
10 | "com.unity.modules.animation": "1.0.0",
11 | "com.unity.modules.assetbundle": "1.0.0",
12 | "com.unity.modules.audio": "1.0.0",
13 | "com.unity.modules.cloth": "1.0.0",
14 | "com.unity.modules.director": "1.0.0",
15 | "com.unity.modules.imageconversion": "1.0.0",
16 | "com.unity.modules.imgui": "1.0.0",
17 | "com.unity.modules.jsonserialize": "1.0.0",
18 | "com.unity.modules.particlesystem": "1.0.0",
19 | "com.unity.modules.physics": "1.0.0",
20 | "com.unity.modules.physics2d": "1.0.0",
21 | "com.unity.modules.screencapture": "1.0.0",
22 | "com.unity.modules.terrain": "1.0.0",
23 | "com.unity.modules.terrainphysics": "1.0.0",
24 | "com.unity.modules.tilemap": "1.0.0",
25 | "com.unity.modules.ui": "1.0.0",
26 | "com.unity.modules.uielements": "1.0.0",
27 | "com.unity.modules.umbra": "1.0.0",
28 | "com.unity.modules.unityanalytics": "1.0.0",
29 | "com.unity.modules.unitywebrequest": "1.0.0",
30 | "com.unity.modules.unitywebrequestassetbundle": "1.0.0",
31 | "com.unity.modules.unitywebrequestaudio": "1.0.0",
32 | "com.unity.modules.unitywebrequesttexture": "1.0.0",
33 | "com.unity.modules.unitywebrequestwww": "1.0.0",
34 | "com.unity.modules.vehicles": "1.0.0",
35 | "com.unity.modules.video": "1.0.0",
36 | "com.unity.modules.vr": "1.0.0",
37 | "com.unity.modules.wind": "1.0.0",
38 | "com.unity.modules.xr": "1.0.0"
39 | }
40 | }
41 |
--------------------------------------------------------------------------------
/ProjectSettings/AudioManager.asset:
--------------------------------------------------------------------------------
1 | %YAML 1.1
2 | %TAG !u! tag:unity3d.com,2011:
3 | --- !u!11 &1
4 | AudioManager:
5 | m_ObjectHideFlags: 0
6 | m_Volume: 1
7 | Rolloff Scale: 1
8 | Doppler Factor: 1
9 | Default Speaker Mode: 2
10 | m_SampleRate: 0
11 | m_DSPBufferSize: 1024
12 | m_VirtualVoiceCount: 512
13 | m_RealVoiceCount: 32
14 | m_SpatializerPlugin:
15 | m_AmbisonicDecoderPlugin:
16 | m_DisableAudio: 0
17 | m_VirtualizeEffects: 1
18 |
--------------------------------------------------------------------------------
/ProjectSettings/ClusterInputManager.asset:
--------------------------------------------------------------------------------
1 | %YAML 1.1
2 | %TAG !u! tag:unity3d.com,2011:
3 | --- !u!236 &1
4 | ClusterInputManager:
5 | m_ObjectHideFlags: 0
6 | m_Inputs: []
7 |
--------------------------------------------------------------------------------
/ProjectSettings/DynamicsManager.asset:
--------------------------------------------------------------------------------
1 | %YAML 1.1
2 | %TAG !u! tag:unity3d.com,2011:
3 | --- !u!55 &1
4 | PhysicsManager:
5 | m_ObjectHideFlags: 0
6 | serializedVersion: 3
7 | m_Gravity: {x: 0, y: -9.81, z: 0}
8 | m_DefaultMaterial: {fileID: 0}
9 | m_BounceThreshold: 2
10 | m_SleepThreshold: 0.005
11 | m_DefaultContactOffset: 0.01
12 | m_DefaultSolverIterations: 6
13 | m_DefaultSolverVelocityIterations: 1
14 | m_QueriesHitBackfaces: 0
15 | m_QueriesHitTriggers: 1
16 | m_EnableAdaptiveForce: 0
17 | m_EnablePCM: 1
18 | m_LayerCollisionMatrix: ffc7ffffffc7ffffffc7ffffffffffffffc7ffffffc7ffffffffffffffffffffff46ffffffa7ffffff97ffffc800feffc804feffc802feffffc1ffffff46ffffffc7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
19 |
--------------------------------------------------------------------------------
/ProjectSettings/EditorBuildSettings.asset:
--------------------------------------------------------------------------------
1 | %YAML 1.1
2 | %TAG !u! tag:unity3d.com,2011:
3 | --- !u!1045 &1
4 | EditorBuildSettings:
5 | m_ObjectHideFlags: 0
6 | serializedVersion: 2
7 | m_Scenes:
8 | - enabled: 0
9 | path:
10 | guid: 00000000000000000000000000000000
11 | - enabled: 1
12 | path: Assets/Scenes/Start.unity
13 | guid: 16fd83b5b477bbe4488dae25dfbf8dfe
14 |
--------------------------------------------------------------------------------
/ProjectSettings/EditorSettings.asset:
--------------------------------------------------------------------------------
1 | %YAML 1.1
2 | %TAG !u! tag:unity3d.com,2011:
3 | --- !u!159 &1
4 | EditorSettings:
5 | m_ObjectHideFlags: 0
6 | serializedVersion: 7
7 | m_ExternalVersionControlSupport: Visible Meta Files
8 | m_SerializationMode: 2
9 | m_LineEndingsForNewScripts: 2
10 | m_DefaultBehaviorMode: 0
11 | m_SpritePackerMode: 0
12 | m_SpritePackerPaddingPower: 1
13 | m_EtcTextureCompressorBehavior: 1
14 | m_EtcTextureFastCompressor: 1
15 | m_EtcTextureNormalCompressor: 2
16 | m_EtcTextureBestCompressor: 4
17 | m_ProjectGenerationIncludedExtensions: txt;xml;fnt;cd
18 | m_ProjectGenerationRootNamespace:
19 | m_UserGeneratedProjectSuffix:
20 | m_CollabEditorSettings:
21 | inProgressEnabled: 1
22 |
--------------------------------------------------------------------------------
/ProjectSettings/GraphicsSettings.asset:
--------------------------------------------------------------------------------
1 | %YAML 1.1
2 | %TAG !u! tag:unity3d.com,2011:
3 | --- !u!30 &1
4 | GraphicsSettings:
5 | m_ObjectHideFlags: 0
6 | serializedVersion: 12
7 | m_Deferred:
8 | m_Mode: 1
9 | m_Shader: {fileID: 69, guid: 0000000000000000f000000000000000, type: 0}
10 | m_DeferredReflections:
11 | m_Mode: 1
12 | m_Shader: {fileID: 74, guid: 0000000000000000f000000000000000, type: 0}
13 | m_ScreenSpaceShadows:
14 | m_Mode: 1
15 | m_Shader: {fileID: 64, guid: 0000000000000000f000000000000000, type: 0}
16 | m_LegacyDeferred:
17 | m_Mode: 1
18 | m_Shader: {fileID: 63, guid: 0000000000000000f000000000000000, type: 0}
19 | m_DepthNormals:
20 | m_Mode: 1
21 | m_Shader: {fileID: 62, guid: 0000000000000000f000000000000000, type: 0}
22 | m_MotionVectors:
23 | m_Mode: 1
24 | m_Shader: {fileID: 75, guid: 0000000000000000f000000000000000, type: 0}
25 | m_LightHalo:
26 | m_Mode: 1
27 | m_Shader: {fileID: 105, guid: 0000000000000000f000000000000000, type: 0}
28 | m_LensFlare:
29 | m_Mode: 1
30 | m_Shader: {fileID: 102, guid: 0000000000000000f000000000000000, type: 0}
31 | m_AlwaysIncludedShaders:
32 | - {fileID: 7, guid: 0000000000000000f000000000000000, type: 0}
33 | - {fileID: 15104, guid: 0000000000000000f000000000000000, type: 0}
34 | - {fileID: 15105, guid: 0000000000000000f000000000000000, type: 0}
35 | - {fileID: 15106, guid: 0000000000000000f000000000000000, type: 0}
36 | - {fileID: 10753, guid: 0000000000000000f000000000000000, type: 0}
37 | - {fileID: 10770, guid: 0000000000000000f000000000000000, type: 0}
38 | - {fileID: 10783, guid: 0000000000000000f000000000000000, type: 0}
39 | m_PreloadedShaders: []
40 | m_SpritesDefaultMaterial: {fileID: 10754, guid: 0000000000000000f000000000000000,
41 | type: 0}
42 | m_CustomRenderPipeline: {fileID: 0}
43 | m_TransparencySortMode: 0
44 | m_TransparencySortAxis: {x: 0, y: 0, z: 1}
45 | m_DefaultRenderingPath: 1
46 | m_DefaultMobileRenderingPath: 1
47 | m_TierSettings: []
48 | m_LightmapStripping: 0
49 | m_FogStripping: 0
50 | m_InstancingStripping: 0
51 | m_LightmapKeepPlain: 1
52 | m_LightmapKeepDirCombined: 1
53 | m_LightmapKeepDynamicPlain: 1
54 | m_LightmapKeepDynamicDirCombined: 1
55 | m_LightmapKeepShadowMask: 1
56 | m_LightmapKeepSubtractive: 1
57 | m_FogKeepLinear: 1
58 | m_FogKeepExp: 1
59 | m_FogKeepExp2: 1
60 | m_AlbedoSwatchInfos: []
61 | m_LightsUseLinearIntensity: 0
62 | m_LightsUseColorTemperature: 0
63 |
--------------------------------------------------------------------------------
/ProjectSettings/NavMeshAreas.asset:
--------------------------------------------------------------------------------
1 | %YAML 1.1
2 | %TAG !u! tag:unity3d.com,2011:
3 | --- !u!126 &1
4 | NavMeshProjectSettings:
5 | m_ObjectHideFlags: 0
6 | serializedVersion: 2
7 | areas:
8 | - name: Walkable
9 | cost: 1
10 | - name: Not Walkable
11 | cost: 1
12 | - name: Jump
13 | cost: 2
14 | - name:
15 | cost: 1
16 | - name:
17 | cost: 1
18 | - name:
19 | cost: 1
20 | - name:
21 | cost: 1
22 | - name:
23 | cost: 1
24 | - name:
25 | cost: 1
26 | - name:
27 | cost: 1
28 | - name:
29 | cost: 1
30 | - name:
31 | cost: 1
32 | - name:
33 | cost: 1
34 | - name:
35 | cost: 1
36 | - name:
37 | cost: 1
38 | - name:
39 | cost: 1
40 | - name:
41 | cost: 1
42 | - name:
43 | cost: 1
44 | - name:
45 | cost: 1
46 | - name:
47 | cost: 1
48 | - name:
49 | cost: 1
50 | - name:
51 | cost: 1
52 | - name:
53 | cost: 1
54 | - name:
55 | cost: 1
56 | - name:
57 | cost: 1
58 | - name:
59 | cost: 1
60 | - name:
61 | cost: 1
62 | - name:
63 | cost: 1
64 | - name:
65 | cost: 1
66 | - name:
67 | cost: 1
68 | - name:
69 | cost: 1
70 | - name:
71 | cost: 1
72 | m_LastAgentTypeID: -887442657
73 | m_Settings:
74 | - serializedVersion: 2
75 | agentTypeID: 0
76 | agentRadius: 0.5
77 | agentHeight: 2
78 | agentSlope: 45
79 | agentClimb: 0.75
80 | ledgeDropHeight: 0
81 | maxJumpAcrossDistance: 0
82 | minRegionArea: 2
83 | manualCellSize: 0
84 | cellSize: 0.16666667
85 | manualTileSize: 0
86 | tileSize: 256
87 | accuratePlacement: 0
88 | debug:
89 | m_Flags: 0
90 | m_SettingNames:
91 | - Humanoid
92 |
--------------------------------------------------------------------------------
/ProjectSettings/NetworkManager.asset:
--------------------------------------------------------------------------------
1 | %YAML 1.1
2 | %TAG !u! tag:unity3d.com,2011:
3 | --- !u!149 &1
4 | NetworkManager:
5 | m_ObjectHideFlags: 0
6 | m_DebugLevel: 0
7 | m_Sendrate: 15
8 | m_AssetToPrefab: {}
9 |
--------------------------------------------------------------------------------
/ProjectSettings/Physics2DSettings.asset:
--------------------------------------------------------------------------------
1 | %YAML 1.1
2 | %TAG !u! tag:unity3d.com,2011:
3 | --- !u!19 &1
4 | Physics2DSettings:
5 | m_ObjectHideFlags: 0
6 | serializedVersion: 4
7 | m_Gravity: {x: 0, y: -9.81}
8 | m_DefaultMaterial: {fileID: 0}
9 | m_VelocityIterations: 8
10 | m_PositionIterations: 3
11 | m_VelocityThreshold: 1
12 | m_MaxLinearCorrection: 0.2
13 | m_MaxAngularCorrection: 8
14 | m_MaxTranslationSpeed: 100
15 | m_MaxRotationSpeed: 360
16 | m_BaumgarteScale: 0.2
17 | m_BaumgarteTimeOfImpactScale: 0.75
18 | m_TimeToSleep: 0.5
19 | m_LinearSleepTolerance: 0.01
20 | m_AngularSleepTolerance: 2
21 | m_DefaultContactOffset: 0.01
22 | m_AutoSimulation: 1
23 | m_QueriesHitTriggers: 1
24 | m_QueriesStartInColliders: 1
25 | m_ChangeStopsCallbacks: 0
26 | m_CallbacksOnDisable: 1
27 | m_ReuseCollisionCallbacks: 1
28 | m_AutoSyncTransforms: 0
29 | m_AlwaysShowColliders: 0
30 | m_ShowColliderSleep: 1
31 | m_ShowColliderContacts: 0
32 | m_ShowColliderAABB: 0
33 | m_ContactArrowScale: 0.2
34 | m_ColliderAwakeColor: {r: 0.5686275, g: 0.95686275, b: 0.54509807, a: 0.7529412}
35 | m_ColliderAsleepColor: {r: 0.5686275, g: 0.95686275, b: 0.54509807, a: 0.36078432}
36 | m_ColliderContactColor: {r: 1, g: 0, b: 1, a: 0.6862745}
37 | m_ColliderAABBColor: {r: 1, g: 1, b: 0, a: 0.2509804}
38 | m_LayerCollisionMatrix: ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
39 |
--------------------------------------------------------------------------------
/ProjectSettings/PresetManager.asset:
--------------------------------------------------------------------------------
1 | %YAML 1.1
2 | %TAG !u! tag:unity3d.com,2011:
3 | --- !u!1386491679 &1
4 | PresetManager:
5 | m_ObjectHideFlags: 0
6 | m_DefaultList:
7 | - type:
8 | m_NativeTypeID: 108
9 | m_ManagedTypePPtr: {fileID: 0}
10 | m_ManagedTypeFallback:
11 | defaultPresets:
12 | - m_Preset: {fileID: 2655988077585873504, guid: c1cf8506f04ef2c4a88b64b6c4202eea,
13 | type: 2}
14 | - type:
15 | m_NativeTypeID: 1020
16 | m_ManagedTypePPtr: {fileID: 0}
17 | m_ManagedTypeFallback:
18 | defaultPresets:
19 | - m_Preset: {fileID: 2655988077585873504, guid: 0cd792cc87e492d43b4e95b205fc5cc6,
20 | type: 2}
21 | - type:
22 | m_NativeTypeID: 1006
23 | m_ManagedTypePPtr: {fileID: 0}
24 | m_ManagedTypeFallback:
25 | defaultPresets:
26 | - m_Preset: {fileID: 2655988077585873504, guid: 7a99f8aa944efe94cb9bd74562b7d5f9,
27 | type: 2}
28 |
--------------------------------------------------------------------------------
/ProjectSettings/ProjectVersion.txt:
--------------------------------------------------------------------------------
1 | m_EditorVersion: 5.6.6f2
2 |
--------------------------------------------------------------------------------
/ProjectSettings/TagManager.asset:
--------------------------------------------------------------------------------
1 | %YAML 1.1
2 | %TAG !u! tag:unity3d.com,2011:
3 | --- !u!78 &1
4 | TagManager:
5 | serializedVersion: 2
6 | tags:
7 | - Canvas
8 | - UICamera
9 | - Enemy
10 | - Environment
11 | layers:
12 | - Default
13 | - TransparentFX
14 | - Ignore Raycast
15 | -
16 | - Water
17 | - UI
18 | -
19 | -
20 | - Ground
21 | - Player
22 | - Enemy
23 | - Effect
24 | - PlayerWeapon
25 | - EnemyWeapon
26 | - Without
27 | - Wall
28 | - PostProcessing
29 | -
30 | -
31 | -
32 | -
33 | -
34 | -
35 | -
36 | -
37 | -
38 | -
39 | -
40 | -
41 | -
42 | -
43 | -
44 | m_SortingLayers:
45 | - name: Default
46 | uniqueID: 0
47 | locked: 0
48 |
--------------------------------------------------------------------------------
/ProjectSettings/TimeManager.asset:
--------------------------------------------------------------------------------
1 | %YAML 1.1
2 | %TAG !u! tag:unity3d.com,2011:
3 | --- !u!5 &1
4 | TimeManager:
5 | m_ObjectHideFlags: 0
6 | Fixed Timestep: 0.02
7 | Maximum Allowed Timestep: 0.1
8 | m_TimeScale: 1
9 | Maximum Particle Timestep: 0.03
10 |
--------------------------------------------------------------------------------
/ProjectSettings/UnityConnectSettings.asset:
--------------------------------------------------------------------------------
1 | %YAML 1.1
2 | %TAG !u! tag:unity3d.com,2011:
3 | --- !u!310 &1
4 | UnityConnectSettings:
5 | m_ObjectHideFlags: 0
6 | serializedVersion: 1
7 | m_Enabled: 0
8 | m_TestMode: 0
9 | m_EventOldUrl: https://api.uca.cloud.unity3d.com/v1/events
10 | m_EventUrl: https://cdp.cloud.unity3d.com/v1/events
11 | m_ConfigUrl: https://config.uca.cloud.unity3d.com
12 | m_TestInitMode: 0
13 | CrashReportingSettings:
14 | m_EventUrl: https://perf-events.cloud.unity3d.com
15 | m_Enabled: 0
16 | m_LogBufferSize: 10
17 | m_CaptureEditorExceptions: 1
18 | UnityPurchasingSettings:
19 | m_Enabled: 0
20 | m_TestMode: 0
21 | UnityAnalyticsSettings:
22 | m_Enabled: 1
23 | m_TestMode: 0
24 | m_InitializeOnStartup: 1
25 | UnityAdsSettings:
26 | m_Enabled: 0
27 | m_InitializeOnStartup: 1
28 | m_TestMode: 0
29 | m_IosGameId:
30 | m_AndroidGameId:
31 | m_GameIds: {}
32 | m_GameId:
33 | PerformanceReportingSettings:
34 | m_Enabled: 0
35 |
--------------------------------------------------------------------------------
/ProjectSettings/VFXManager.asset:
--------------------------------------------------------------------------------
1 | %YAML 1.1
2 | %TAG !u! tag:unity3d.com,2011:
3 | --- !u!937362698 &1
4 | VFXManager:
5 | m_ObjectHideFlags: 0
6 | m_IndirectShader: {fileID: 0}
7 | m_CopyBufferShader: {fileID: 0}
8 | m_SortShader: {fileID: 0}
9 | m_RenderPipeSettingsPath:
10 | m_FixedTimeStep: 0.016666668
11 | m_MaxDeltaTime: 0.05
12 |
--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
1 | # SFramework
2 | 基于Unity引擎的万能游戏框架 Unity-Framework
3 |
4 | - 独立设计开发的原创游戏框架,具备良好的可扩展性
5 | - 控制游戏生命周期,框架尽量不继承Monobehavior
6 | - 基于单例模式,外观模式,桥接模式等设计模式
7 | - 可使用PhysX物理引擎,动画帧事件等基于Monobehavior的功能
8 | - 代码追求精简高效,核心代码仅5000+行
9 | - 规范的命名规则,在各脚本的文件头可方便地查阅说明文档
10 |
11 | 
12 |
13 | ## 项目工程结构
14 |
15 | Plugins:插件
16 |
17 | Repo:资源
18 |
19 | Resources:热加载资源
20 |
21 | Scenes:场景
22 |
23 | Scripts:脚本
24 |
25 | StreamingAssets:热加载配置文件
26 |
27 | ## 命名规范
28 |
29 | 类名、方法、属性 大写开头
30 |
31 | 字段名、参数、局部变量 小写开头
32 |
33 | 每个脚本文件头需要填写:
34 | ```c#
35 | /*----------------------------------------------------------------------------
36 | Author:
37 | Anotts
38 | Date:
39 | 2017/08/01
40 | Description:
41 | 简介:
42 | 作用:
43 | 使用:
44 | 补充:
45 | History:
46 | ----------------------------------------------------------------------------*/
47 | ```
48 |
49 | 现已将各脚本的说明写入文件头,可直接查阅学习使用。
50 |
51 | ## 安装集成
52 |
53 | 建议直接以此项目为基础进行开发。
54 |
55 | 如果要集成到其他项目,可以直接Clone到项目目录下,也可以通过安装unitypackage包的形式集成。
56 |
57 | 尽量不要让框架本身和项目产生耦合,框架的命名空间是SFramework,项目的命名空间默认是ProjectScript,需要区分开。
58 |
59 | 项目开发时往往可能需要对框架进行修改,这时只需要开一个branch,将修改提交到branch,最后pull request到框架原来的Git项目(即SFramewok)即可。
60 |
61 | ## 快速上手
62 |
63 | 可从Start场景开始开发,可在Doc文件夹中查看技术文档。
64 |
65 | 1. 添加场景只需按SceneStateController类的说明来做
66 | 2. 添加角色只需按角色架构文档说明来做
67 | 3. 添加UI只需按UIManager类的说明来做
68 | 4. 添加音乐音效只需按AudioMgr类的说明来做
69 | 5. 存档设置只需按GameDataMgr类的说明来做
70 | 6. 添加系统只需按GameMainProgram类的说明来做
71 | 7. 以此类推,待补充……
72 |
73 | ## 开源协议
74 |
75 | GNU General Public License v3.0 (GPL)
76 |
--------------------------------------------------------------------------------