Compare commits

..

26 Commits

Author SHA1 Message Date
8009174cbe Shader框架相关
1.编写了URP的屏幕后特效框架,在URP的文件夹。
2.添加了转场的相关的两个Shader,在Shader文件夹。
2022-03-21 17:45:57 +08:00
lspdC
698339a63c 3.20 和京力交融之后的版本 2022-03-20 23:28:11 +08:00
lspdC
44c4946a71 3.20
整理了树木交互,写了个具体互动物品的基类。
创建了火类,实现火焰交互示意(拿上木棍才能成功交互)。
2022-03-20 23:24:29 +08:00
lspdC
1b5d15c2d2 sb coding 2022-03-20 14:43:08 +08:00
Roman
00e4c21a1c Merge branch '黄恺乐' of https://e.coding.net/gensokyogroup/CangJie/CangJie into Roman
# Conflicts:
#	Assets/Scenes/乐/Sample1.unity
#	Assets/Scenes/勍/InteractTest.unity
#	Assets/Scripts/乐/Item.cs
#	Assets/Scripts/乐/ItemController.cs
#	Assets/Scripts/乐/Player.cs
#	Assets/Scripts/乐/Shu.cs
#	Logs/ApiUpdaterCheck.txt
2022-03-19 23:30:20 +08:00
lspdC
733af40c3e 3.19
完成物品栏系统,实现简单对象池,完成树木交互,实现示意动画
2022-03-19 23:02:32 +08:00
Roman
32e1fd2d93 任务:编写场景1逻辑
1.完成对话系统框架
(1.系统结构见图
(2.使用方法为对ConversationController单例使用OnCall(Staring 对话名)
(3.需要自行编辑对话内容,填写AConversation组件的内容即可

果咩,我摸了五天,求职的压力实在是太大了😿😿
2022-03-19 22:52:00 +08:00
Roman
7db9125c45 Squashed commit of the following:
commit dbb026271fc709d07b36b271b11997919d15f3e0
Author: lspdC <961907320@qq.com>
Date:   Tue Mar 15 20:26:46 2022 +0800

    1、初步完成武器栏 树木交互
    2、尝试用对象池实现手持武器切换(还未完成)
    3、在一些简单的继承问题上对京力的部分代码进行修改(集中在Interactable类中)

commit c5cbe5ba76fcf20db855016ebfa33bb9ef79f390
Author: lspdC <961907320@qq.com>
Date:   Tue Mar 15 10:39:58 2022 +0800

    合并3.14分支

commit f3b7fd6631a3c3b87b17ac40b4542c2485103b46
Author: lspdC <961907320@qq.com>
Date:   Tue Mar 15 10:37:34 2022 +0800

    3.14进度(合并前)

# Conflicts:
#	UserSettings/EditorUserSettings.asset
2022-03-19 17:47:36 +08:00
lspdC
dbb026271f 1、初步完成武器栏 树木交互
2、尝试用对象池实现手持武器切换(还未完成)
3、在一些简单的继承问题上对京力的部分代码进行修改(集中在Interactable类中)
2022-03-15 20:26:46 +08:00
lspdC
c5cbe5ba76 合并3.14分支 2022-03-15 10:39:58 +08:00
lspdC
f3b7fd6631 3.14进度(合并前) 2022-03-15 10:37:34 +08:00
Roman
c20e4ffb17 任务:编写场景1逻辑
1.完善黄帝功能使其
(1.有函数可以提出需求,返回值为一种绳结类型

2.增加一些美术素材

3.搭建场景
(*.引入cinemaMachine
(1.增加cinemaMachine组件,使其跟随玩家
(2.布置地面碰撞盒
(3.放置空气墙
(4.放置三个不同种类的绳结
(5.放置黄帝
(6.粗略制作了一下视差

4.添加图层分层
(1.内含:远景、中景(不遮挡玩家,中景(遮挡玩家、近景、UI

任务:对接主程满足需求

1.给PlayerContoral加了一个切换操作状态的函数,目前有Normal和Null两种状态

我是每天上班提醒小助手,今天你上班了吗?😺
2022-03-15 00:38:35 +08:00
Roman
11b7428164 合并了分支 2022-03-14 21:17:13 +08:00
lspdC
2675769e95 建了树类 删去不必要函数 对Player类进行少量修改 2022-03-14 12:50:06 +08:00
lspdC
53572ab941 合并3.13分支 2022-03-13 23:27:31 +08:00
Roman
b96029fd5e 任务:编写序章场景逻辑
1.编写交互操作逻辑,我会用脚本给玩家物体添加一个子物体,子物体有一个触发器,当玩家按下交互键,通过回调看是否有Catch到的可交互物体,若有,我会触发可交互物体的OnCall,若没有,则不做反应。

2.编写可交互物体基类,可交互物体继承自Event,Start时检查碰撞盒状态。当检查到玩家进入触发器,把自己交给玩家的Catch。当检查到玩家离开触发器,看目前的Catch是否和自己一样,若一样则清除Catch,若不一样说明已经Catch了其他东西,不做反应。

3.编写绳结类,继承自可交互物体。当交互,给中介者发送信息,让中介者更改记录的当前记录的绳结是哪一个
(1.内含一个来自中介者的枚举类型的变量,记录自己属于哪一种绳结
(2.当OnCall,把自己的类型发给中介者

4.编写绳结中介者,负责玩家、皇帝和绳结的信息交流。
(1.有一个枚举类型,内含三种绳结种类
(2.有一个枚举类型的变量,记录当前记录的是哪一个绳结
(3.当绳结发来信息,更新记录的当前绳结

5.添加新的按键监听,并增加PlayerControl的虚函数

6.编写黄帝类
(1.继承自可交互物体
(2.内含一个来自中介者的枚举类型,记录皇帝对哪一种绳结提出要求
(3.当OnCall,检查中介者中记录的绳结和要求的是不是同一种,若是则触发后续流程,若不是,则触发摇头等动作,目前不做反应
(4.内含函数与后期外界对接,用来指定皇帝需要的绳结类型

*记得给Player类的Interact函数加上Base

我是每天上班提醒小助手,今天你上班了吗?😺
2022-03-13 21:40:55 +08:00
lspdC
5c7c268092 合并3.12京力的修改 2022-03-12 21:22:17 +08:00
Roman
fa2911708d 合并了分支 2022-03-12 21:17:50 +08:00
Roman
876778ccb0 任务:编写底层逻辑,增加一些有用的工具类
1.新增单例模式单例类模板,可以广泛用在同时间只有一个存在在场景中的各种管理器
2.新增事件框架
3.新增状态模式的状态类和状态管理员类的类模板
4.新增进入式触发器
5.新增互动式触发器(涉及玩家类的更改,暂缓)
*.以上均为底层代码,目前无法测试,如果发现问题请联系开发者,如无必要,请勿修改

我是每天上班提醒小助手,今天你上班了吗?😺
2022-03-12 21:14:07 +08:00
lspdC
34a4cf17f8 写了基本的2d控制器 完成基础的移动、跳跃、翻身、地面监测。基本参数已暴露。 2022-03-12 21:05:15 +08:00
Roman
d5c382fbca 合并了分支 2022-03-12 16:18:48 +08:00
lspdC
ccaf9413b8 sb coding 2022-03-12 16:10:31 +08:00
Roman
a454af8653 添加了Player脚本 2022-03-12 15:56:25 +08:00
Roman
68db9d5711 合并了分支 2022-03-12 14:54:57 +08:00
Roman
e10d588cf5 任务:编写操控地图
1.添加基本操作:移动、跳跃、交互和攻击的按键监听,编写好了父类,使用时只需要继承PlayerControl,然后重写里面的函数即可,注释和摘要齐全,如无必要请勿修改

我是每天上班提醒小助手,今天你上班了吗?😺
2022-03-11 22:42:57 +08:00
Roman
c780a1948b 2022-03-10 22:55:13 +08:00
185 changed files with 13555 additions and 75 deletions

6
.vsconfig Normal file
View File

@ -0,0 +1,6 @@
{
"version": "1.0",
"components": [
"Microsoft.VisualStudio.Workload.ManagedGame"
]
}

View File

@ -1,8 +1,8 @@
fileFormatVersion: 2
guid: fd02c799f3f5c4c83b2fc26c105a3821
timeCreated: 1453725747
licenseType: Store
guid: 4b1d56e94605bbc41afd08c436f48ce7
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -1,8 +1,8 @@
fileFormatVersion: 2
guid: f597f19f656ba56eae4f6a3a7cc528f4
timeCreated: 1488828285
licenseType: Store
guid: b2eb23e15ad2aba49949e0458f039008
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,53 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!74 &7400000
AnimationClip:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name: Empty
serializedVersion: 7
m_Legacy: 0
m_Compressed: 0
m_UseHighQualityCurve: 1
m_RotationCurves: []
m_CompressedRotationCurves: []
m_EulerCurves: []
m_PositionCurves: []
m_ScaleCurves: []
m_FloatCurves: []
m_PPtrCurves: []
m_SampleRate: 60
m_WrapMode: 0
m_Bounds:
m_Center: {x: 0, y: 0, z: 0}
m_Extent: {x: 0, y: 0, z: 0}
m_ClipBindingConstant:
genericBindings: []
pptrCurveMapping: []
m_AnimationClipSettings:
serializedVersion: 2
m_AdditiveReferencePoseClip: {fileID: 0}
m_AdditiveReferencePoseTime: 0
m_StartTime: 0
m_StopTime: 1
m_OrientationOffsetY: 0
m_Level: 0
m_CycleOffset: 0
m_HasAdditiveReferencePose: 0
m_LoopTime: 0
m_LoopBlend: 0
m_LoopBlendOrientation: 0
m_LoopBlendPositionY: 0
m_LoopBlendPositionXZ: 0
m_KeepOriginalOrientation: 0
m_KeepOriginalPositionY: 1
m_KeepOriginalPositionXZ: 0
m_HeightFromFeet: 0
m_Mirror: 0
m_EditorCurves: []
m_EulerEditorCurves: []
m_HasGenericRootTransform: 0
m_HasMotionFloatCurves: 0
m_Events: []

View File

@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 4f71d41a86ce8a04a8f7659c3b6ba649
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 7400000
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,289 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!74 &7400000
AnimationClip:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name: Fall
serializedVersion: 7
m_Legacy: 0
m_Compressed: 0
m_UseHighQualityCurve: 1
m_RotationCurves: []
m_CompressedRotationCurves: []
m_EulerCurves:
- curve:
serializedVersion: 2
m_Curve:
- serializedVersion: 3
time: 0
value: {x: 0, y: 0, z: 0}
inSlope: {x: 0, y: 0, z: 0}
outSlope: {x: 0, y: 0, z: 0}
tangentMode: 0
weightedMode: 0
inWeight: {x: 0.33333334, y: 0.33333334, z: 0.33333334}
outWeight: {x: 0.33333334, y: 0.33333334, z: 0.33333334}
- serializedVersion: 3
time: 1
value: {x: 0, y: 0, z: -90}
inSlope: {x: 0, y: 0, z: 0}
outSlope: {x: 0, y: 0, z: 0}
tangentMode: 0
weightedMode: 0
inWeight: {x: 0.33333334, y: 0.33333334, z: 0.33333334}
outWeight: {x: 0.33333334, y: 0.33333334, z: 0.33333334}
m_PreInfinity: 2
m_PostInfinity: 2
m_RotationOrder: 4
path:
m_PositionCurves: []
m_ScaleCurves: []
m_FloatCurves:
- curve:
serializedVersion: 2
m_Curve:
- serializedVersion: 3
time: 0
value: 0
inSlope: Infinity
outSlope: Infinity
tangentMode: 103
weightedMode: 0
inWeight: 0
outWeight: 0
m_PreInfinity: 2
m_PostInfinity: 2
m_RotationOrder: 4
attribute: m_IsActive
path: "\u5C0F\u6728\u5934 (1)"
classID: 1
script: {fileID: 0}
- curve:
serializedVersion: 2
m_Curve:
- serializedVersion: 3
time: 0
value: 0
inSlope: Infinity
outSlope: Infinity
tangentMode: 103
weightedMode: 0
inWeight: 0
outWeight: 0
m_PreInfinity: 2
m_PostInfinity: 2
m_RotationOrder: 4
attribute: m_IsActive
path: "\u5C0F\u6728\u5934"
classID: 1
script: {fileID: 0}
m_PPtrCurves: []
m_SampleRate: 60
m_WrapMode: 0
m_Bounds:
m_Center: {x: 0, y: 0, z: 0}
m_Extent: {x: 0, y: 0, z: 0}
m_ClipBindingConstant:
genericBindings:
- serializedVersion: 2
path: 0
attribute: 4
script: {fileID: 0}
typeID: 4
customType: 4
isPPtrCurve: 0
- serializedVersion: 2
path: 1729229156
attribute: 2086281974
script: {fileID: 0}
typeID: 1
customType: 0
isPPtrCurve: 0
- serializedVersion: 2
path: 3413804001
attribute: 2086281974
script: {fileID: 0}
typeID: 1
customType: 0
isPPtrCurve: 0
pptrCurveMapping: []
m_AnimationClipSettings:
serializedVersion: 2
m_AdditiveReferencePoseClip: {fileID: 0}
m_AdditiveReferencePoseTime: 0
m_StartTime: 0
m_StopTime: 1
m_OrientationOffsetY: 0
m_Level: 0
m_CycleOffset: 0
m_HasAdditiveReferencePose: 0
m_LoopTime: 0
m_LoopBlend: 0
m_LoopBlendOrientation: 0
m_LoopBlendPositionY: 0
m_LoopBlendPositionXZ: 0
m_KeepOriginalOrientation: 0
m_KeepOriginalPositionY: 1
m_KeepOriginalPositionXZ: 0
m_HeightFromFeet: 0
m_Mirror: 0
m_EditorCurves:
- curve:
serializedVersion: 2
m_Curve:
- serializedVersion: 3
time: 0
value: 0
inSlope: 0
outSlope: 0
tangentMode: 136
weightedMode: 0
inWeight: 0.33333334
outWeight: 0.33333334
- serializedVersion: 3
time: 1
value: 0
inSlope: 0
outSlope: 0
tangentMode: 136
weightedMode: 0
inWeight: 0.33333334
outWeight: 0.33333334
m_PreInfinity: 2
m_PostInfinity: 2
m_RotationOrder: 4
attribute: localEulerAnglesRaw.x
path:
classID: 4
script: {fileID: 0}
- curve:
serializedVersion: 2
m_Curve:
- serializedVersion: 3
time: 0
value: 0
inSlope: 0
outSlope: 0
tangentMode: 136
weightedMode: 0
inWeight: 0.33333334
outWeight: 0.33333334
- serializedVersion: 3
time: 1
value: 0
inSlope: 0
outSlope: 0
tangentMode: 136
weightedMode: 0
inWeight: 0.33333334
outWeight: 0.33333334
m_PreInfinity: 2
m_PostInfinity: 2
m_RotationOrder: 4
attribute: localEulerAnglesRaw.y
path:
classID: 4
script: {fileID: 0}
- curve:
serializedVersion: 2
m_Curve:
- serializedVersion: 3
time: 0
value: 0
inSlope: 0
outSlope: 0
tangentMode: 136
weightedMode: 0
inWeight: 0.33333334
outWeight: 0.33333334
- serializedVersion: 3
time: 1
value: -90
inSlope: 0
outSlope: 0
tangentMode: 136
weightedMode: 0
inWeight: 0.33333334
outWeight: 0.33333334
m_PreInfinity: 2
m_PostInfinity: 2
m_RotationOrder: 4
attribute: localEulerAnglesRaw.z
path:
classID: 4
script: {fileID: 0}
- curve:
serializedVersion: 2
m_Curve:
- serializedVersion: 3
time: 0
value: 0
inSlope: Infinity
outSlope: Infinity
tangentMode: 103
weightedMode: 0
inWeight: 0
outWeight: 0
m_PreInfinity: 2
m_PostInfinity: 2
m_RotationOrder: 4
attribute: m_IsActive
path: "\u5C0F\u6728\u5934 (1)"
classID: 1
script: {fileID: 0}
- curve:
serializedVersion: 2
m_Curve:
- serializedVersion: 3
time: 0
value: 0
inSlope: Infinity
outSlope: Infinity
tangentMode: 103
weightedMode: 0
inWeight: 0
outWeight: 0
m_PreInfinity: 2
m_PostInfinity: 2
m_RotationOrder: 4
attribute: m_IsActive
path: "\u5C0F\u6728\u5934"
classID: 1
script: {fileID: 0}
m_EulerEditorCurves:
- curve:
serializedVersion: 2
m_Curve: []
m_PreInfinity: 2
m_PostInfinity: 2
m_RotationOrder: 4
attribute: m_LocalEulerAngles.x
path:
classID: 4
script: {fileID: 0}
- curve:
serializedVersion: 2
m_Curve: []
m_PreInfinity: 2
m_PostInfinity: 2
m_RotationOrder: 4
attribute: m_LocalEulerAngles.y
path:
classID: 4
script: {fileID: 0}
- curve:
serializedVersion: 2
m_Curve: []
m_PreInfinity: 2
m_PostInfinity: 2
m_RotationOrder: 4
attribute: m_LocalEulerAngles.z
path:
classID: 4
script: {fileID: 0}
m_HasGenericRootTransform: 1
m_HasMotionFloatCurves: 0
m_Events: []

View File

@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 951184307496ffd478344c57c3da83a4
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 7400000
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,636 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!74 &7400000
AnimationClip:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name: Shake
serializedVersion: 7
m_Legacy: 0
m_Compressed: 0
m_UseHighQualityCurve: 1
m_RotationCurves: []
m_CompressedRotationCurves: []
m_EulerCurves:
- curve:
serializedVersion: 2
m_Curve:
- serializedVersion: 3
time: 0
value: {x: 0, y: 0, z: 0}
inSlope: {x: 0, y: 0, z: 0}
outSlope: {x: 0, y: 0, z: 0}
tangentMode: 0
weightedMode: 0
inWeight: {x: 0.33333334, y: 0.33333334, z: 0.33333334}
outWeight: {x: 0.33333334, y: 0.33333334, z: 0.33333334}
- serializedVersion: 3
time: 0.16666667
value: {x: 0, y: 0, z: -3.475}
inSlope: {x: 0, y: 0, z: 0}
outSlope: {x: 0, y: 0, z: 0}
tangentMode: 0
weightedMode: 0
inWeight: {x: 0.33333334, y: 0.33333334, z: 0.33333334}
outWeight: {x: 0.33333334, y: 0.33333334, z: 0.33333334}
- serializedVersion: 3
time: 0.33333334
value: {x: 0, y: 0, z: 3.475}
inSlope: {x: 0, y: 0, z: 0}
outSlope: {x: 0, y: 0, z: 0}
tangentMode: 0
weightedMode: 0
inWeight: {x: 0.33333334, y: 0.33333334, z: 0.33333334}
outWeight: {x: 0.33333334, y: 0.33333334, z: 0.33333334}
- serializedVersion: 3
time: 0.5
value: {x: 0, y: 0, z: 0}
inSlope: {x: 0, y: 0, z: 0}
outSlope: {x: 0, y: 0, z: 0}
tangentMode: 0
weightedMode: 0
inWeight: {x: 0.33333334, y: 0.33333334, z: 0.33333334}
outWeight: {x: 0.33333334, y: 0.33333334, z: 0.33333334}
m_PreInfinity: 2
m_PostInfinity: 2
m_RotationOrder: 4
path:
m_PositionCurves:
- curve:
serializedVersion: 2
m_Curve:
- serializedVersion: 3
time: 0.5
value: {x: -0.3980676, y: 0.612394, z: 0}
inSlope: {x: 0, y: 0, z: 0}
outSlope: {x: 0, y: 0, z: 0}
tangentMode: 0
weightedMode: 0
inWeight: {x: 0.33333334, y: 0.33333334, z: 0.33333334}
outWeight: {x: 0.33333334, y: 0.33333334, z: 0.33333334}
- serializedVersion: 3
time: 1
value: {x: -0.39806762, y: -0.51, z: 0}
inSlope: {x: 0, y: 0, z: 0}
outSlope: {x: 0, y: 0, z: 0}
tangentMode: 0
weightedMode: 0
inWeight: {x: 0.33333334, y: 0.33333334, z: 0.33333334}
outWeight: {x: 0.33333334, y: 0.33333334, z: 0.33333334}
m_PreInfinity: 2
m_PostInfinity: 2
m_RotationOrder: 4
path: "\u5C0F\u6728\u5934"
- curve:
serializedVersion: 2
m_Curve:
- serializedVersion: 3
time: 0.5833333
value: {x: -0.3903382, y: 0.74588215, z: 0}
inSlope: {x: 0, y: 0, z: 0}
outSlope: {x: 0, y: 0, z: 0}
tangentMode: 0
weightedMode: 0
inWeight: {x: 0.33333334, y: 0.33333334, z: 0.33333334}
outWeight: {x: 0.33333334, y: 0.33333334, z: 0.33333334}
- serializedVersion: 3
time: 1
value: {x: -0.39033815, y: 0.2, z: 0}
inSlope: {x: 0, y: 0, z: 0}
outSlope: {x: 0, y: 0, z: 0}
tangentMode: 0
weightedMode: 0
inWeight: {x: 0.33333334, y: 0.33333334, z: 0.33333334}
outWeight: {x: 0.33333334, y: 0.33333334, z: 0.33333334}
m_PreInfinity: 2
m_PostInfinity: 2
m_RotationOrder: 4
path: "\u5C0F\u6728\u5934 (1)"
m_ScaleCurves: []
m_FloatCurves:
- curve:
serializedVersion: 2
m_Curve:
- serializedVersion: 3
time: 0.5
value: 1
inSlope: 0
outSlope: 0
tangentMode: 136
weightedMode: 0
inWeight: 0.33333334
outWeight: 0.33333334
- serializedVersion: 3
time: 0.7
value: 0
inSlope: 0
outSlope: 0
tangentMode: 136
weightedMode: 0
inWeight: 0.33333334
outWeight: 0.33333334
m_PreInfinity: 2
m_PostInfinity: 2
m_RotationOrder: 4
attribute: m_Color.a
path: "\u5C0F\u6728\u5934"
classID: 212
script: {fileID: 0}
- curve:
serializedVersion: 2
m_Curve:
- serializedVersion: 3
time: 0.5833333
value: 1
inSlope: 0
outSlope: 0
tangentMode: 136
weightedMode: 0
inWeight: 0.33333334
outWeight: 0.33333334
- serializedVersion: 3
time: 1
value: 0
inSlope: 0
outSlope: 0
tangentMode: 136
weightedMode: 0
inWeight: 0.33333334
outWeight: 0.33333334
m_PreInfinity: 2
m_PostInfinity: 2
m_RotationOrder: 4
attribute: m_Color.a
path: "\u5C0F\u6728\u5934 (1)"
classID: 212
script: {fileID: 0}
m_PPtrCurves: []
m_SampleRate: 60
m_WrapMode: 0
m_Bounds:
m_Center: {x: 0, y: 0, z: 0}
m_Extent: {x: 0, y: 0, z: 0}
m_ClipBindingConstant:
genericBindings:
- serializedVersion: 2
path: 3413804001
attribute: 1
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
- serializedVersion: 2
path: 1729229156
attribute: 1
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
- serializedVersion: 2
path: 0
attribute: 4
script: {fileID: 0}
typeID: 4
customType: 4
isPPtrCurve: 0
- serializedVersion: 2
path: 3413804001
attribute: 304273561
script: {fileID: 0}
typeID: 212
customType: 0
isPPtrCurve: 0
- serializedVersion: 2
path: 1729229156
attribute: 304273561
script: {fileID: 0}
typeID: 212
customType: 0
isPPtrCurve: 0
pptrCurveMapping: []
m_AnimationClipSettings:
serializedVersion: 2
m_AdditiveReferencePoseClip: {fileID: 0}
m_AdditiveReferencePoseTime: 0
m_StartTime: 0
m_StopTime: 1
m_OrientationOffsetY: 0
m_Level: 0
m_CycleOffset: 0
m_HasAdditiveReferencePose: 0
m_LoopTime: 0
m_LoopBlend: 0
m_LoopBlendOrientation: 0
m_LoopBlendPositionY: 0
m_LoopBlendPositionXZ: 0
m_KeepOriginalOrientation: 0
m_KeepOriginalPositionY: 1
m_KeepOriginalPositionXZ: 0
m_HeightFromFeet: 0
m_Mirror: 0
m_EditorCurves:
- curve:
serializedVersion: 2
m_Curve:
- serializedVersion: 3
time: 0
value: 0
inSlope: 0
outSlope: 0
tangentMode: 136
weightedMode: 0
inWeight: 0.33333334
outWeight: 0.33333334
- serializedVersion: 3
time: 0.16666667
value: 0
inSlope: 0
outSlope: 0
tangentMode: 136
weightedMode: 0
inWeight: 0.33333334
outWeight: 0.33333334
- serializedVersion: 3
time: 0.33333334
value: 0
inSlope: 0
outSlope: 0
tangentMode: 136
weightedMode: 0
inWeight: 0.33333334
outWeight: 0.33333334
- serializedVersion: 3
time: 0.5
value: 0
inSlope: 0
outSlope: 0
tangentMode: 136
weightedMode: 0
inWeight: 0.33333334
outWeight: 0.33333334
m_PreInfinity: 2
m_PostInfinity: 2
m_RotationOrder: 4
attribute: localEulerAnglesRaw.x
path:
classID: 4
script: {fileID: 0}
- curve:
serializedVersion: 2
m_Curve:
- serializedVersion: 3
time: 0
value: 0
inSlope: 0
outSlope: 0
tangentMode: 136
weightedMode: 0
inWeight: 0.33333334
outWeight: 0.33333334
- serializedVersion: 3
time: 0.16666667
value: 0
inSlope: 0
outSlope: 0
tangentMode: 136
weightedMode: 0
inWeight: 0.33333334
outWeight: 0.33333334
- serializedVersion: 3
time: 0.33333334
value: 0
inSlope: 0
outSlope: 0
tangentMode: 136
weightedMode: 0
inWeight: 0.33333334
outWeight: 0.33333334
- serializedVersion: 3
time: 0.5
value: 0
inSlope: 0
outSlope: 0
tangentMode: 136
weightedMode: 0
inWeight: 0.33333334
outWeight: 0.33333334
m_PreInfinity: 2
m_PostInfinity: 2
m_RotationOrder: 4
attribute: localEulerAnglesRaw.y
path:
classID: 4
script: {fileID: 0}
- curve:
serializedVersion: 2
m_Curve:
- serializedVersion: 3
time: 0
value: 0
inSlope: 0
outSlope: 0
tangentMode: 136
weightedMode: 0
inWeight: 0.33333334
outWeight: 0.33333334
- serializedVersion: 3
time: 0.16666667
value: -3.475
inSlope: 0
outSlope: 0
tangentMode: 136
weightedMode: 0
inWeight: 0.33333334
outWeight: 0.33333334
- serializedVersion: 3
time: 0.33333334
value: 3.475
inSlope: 0
outSlope: 0
tangentMode: 136
weightedMode: 0
inWeight: 0.33333334
outWeight: 0.33333334
- serializedVersion: 3
time: 0.5
value: 0
inSlope: 0
outSlope: 0
tangentMode: 136
weightedMode: 0
inWeight: 0.33333334
outWeight: 0.33333334
m_PreInfinity: 2
m_PostInfinity: 2
m_RotationOrder: 4
attribute: localEulerAnglesRaw.z
path:
classID: 4
script: {fileID: 0}
- curve:
serializedVersion: 2
m_Curve:
- serializedVersion: 3
time: 0.5
value: -0.3980676
inSlope: 0
outSlope: 0
tangentMode: 136
weightedMode: 0
inWeight: 0.33333334
outWeight: 0.33333334
- serializedVersion: 3
time: 1
value: -0.39806762
inSlope: 0
outSlope: 0
tangentMode: 136
weightedMode: 0
inWeight: 0.33333334
outWeight: 0.33333334
m_PreInfinity: 2
m_PostInfinity: 2
m_RotationOrder: 4
attribute: m_LocalPosition.x
path: "\u5C0F\u6728\u5934"
classID: 4
script: {fileID: 0}
- curve:
serializedVersion: 2
m_Curve:
- serializedVersion: 3
time: 0.5
value: 0.612394
inSlope: 0
outSlope: 0
tangentMode: 136
weightedMode: 0
inWeight: 0.33333334
outWeight: 0.33333334
- serializedVersion: 3
time: 1
value: -0.51
inSlope: 0
outSlope: 0
tangentMode: 136
weightedMode: 0
inWeight: 0.33333334
outWeight: 0.33333334
m_PreInfinity: 2
m_PostInfinity: 2
m_RotationOrder: 4
attribute: m_LocalPosition.y
path: "\u5C0F\u6728\u5934"
classID: 4
script: {fileID: 0}
- curve:
serializedVersion: 2
m_Curve:
- serializedVersion: 3
time: 0.5
value: 0
inSlope: 0
outSlope: 0
tangentMode: 136
weightedMode: 0
inWeight: 0.33333334
outWeight: 0.33333334
- serializedVersion: 3
time: 1
value: 0
inSlope: 0
outSlope: 0
tangentMode: 136
weightedMode: 0
inWeight: 0.33333334
outWeight: 0.33333334
m_PreInfinity: 2
m_PostInfinity: 2
m_RotationOrder: 4
attribute: m_LocalPosition.z
path: "\u5C0F\u6728\u5934"
classID: 4
script: {fileID: 0}
- curve:
serializedVersion: 2
m_Curve:
- serializedVersion: 3
time: 0.5
value: 1
inSlope: 0
outSlope: 0
tangentMode: 136
weightedMode: 0
inWeight: 0.33333334
outWeight: 0.33333334
- serializedVersion: 3
time: 0.7
value: 0
inSlope: 0
outSlope: 0
tangentMode: 136
weightedMode: 0
inWeight: 0.33333334
outWeight: 0.33333334
m_PreInfinity: 2
m_PostInfinity: 2
m_RotationOrder: 4
attribute: m_Color.a
path: "\u5C0F\u6728\u5934"
classID: 212
script: {fileID: 0}
- curve:
serializedVersion: 2
m_Curve:
- serializedVersion: 3
time: 0.5833333
value: -0.3903382
inSlope: 0
outSlope: 0
tangentMode: 136
weightedMode: 0
inWeight: 0.33333334
outWeight: 0.33333334
- serializedVersion: 3
time: 1
value: -0.39033815
inSlope: 0
outSlope: 0
tangentMode: 136
weightedMode: 0
inWeight: 0.33333334
outWeight: 0.33333334
m_PreInfinity: 2
m_PostInfinity: 2
m_RotationOrder: 4
attribute: m_LocalPosition.x
path: "\u5C0F\u6728\u5934 (1)"
classID: 4
script: {fileID: 0}
- curve:
serializedVersion: 2
m_Curve:
- serializedVersion: 3
time: 0.5833333
value: 0.74588215
inSlope: 0
outSlope: 0
tangentMode: 136
weightedMode: 0
inWeight: 0.33333334
outWeight: 0.33333334
- serializedVersion: 3
time: 1
value: 0.2
inSlope: 0
outSlope: 0
tangentMode: 136
weightedMode: 0
inWeight: 0.33333334
outWeight: 0.33333334
m_PreInfinity: 2
m_PostInfinity: 2
m_RotationOrder: 4
attribute: m_LocalPosition.y
path: "\u5C0F\u6728\u5934 (1)"
classID: 4
script: {fileID: 0}
- curve:
serializedVersion: 2
m_Curve:
- serializedVersion: 3
time: 0.5833333
value: 0
inSlope: 0
outSlope: 0
tangentMode: 136
weightedMode: 0
inWeight: 0.33333334
outWeight: 0.33333334
- serializedVersion: 3
time: 1
value: 0
inSlope: 0
outSlope: 0
tangentMode: 136
weightedMode: 0
inWeight: 0.33333334
outWeight: 0.33333334
m_PreInfinity: 2
m_PostInfinity: 2
m_RotationOrder: 4
attribute: m_LocalPosition.z
path: "\u5C0F\u6728\u5934 (1)"
classID: 4
script: {fileID: 0}
- curve:
serializedVersion: 2
m_Curve:
- serializedVersion: 3
time: 0.5833333
value: 1
inSlope: 0
outSlope: 0
tangentMode: 136
weightedMode: 0
inWeight: 0.33333334
outWeight: 0.33333334
- serializedVersion: 3
time: 1
value: 0
inSlope: 0
outSlope: 0
tangentMode: 136
weightedMode: 0
inWeight: 0.33333334
outWeight: 0.33333334
m_PreInfinity: 2
m_PostInfinity: 2
m_RotationOrder: 4
attribute: m_Color.a
path: "\u5C0F\u6728\u5934 (1)"
classID: 212
script: {fileID: 0}
m_EulerEditorCurves:
- curve:
serializedVersion: 2
m_Curve: []
m_PreInfinity: 2
m_PostInfinity: 2
m_RotationOrder: 4
attribute: m_LocalEulerAngles.x
path:
classID: 4
script: {fileID: 0}
- curve:
serializedVersion: 2
m_Curve: []
m_PreInfinity: 2
m_PostInfinity: 2
m_RotationOrder: 4
attribute: m_LocalEulerAngles.y
path:
classID: 4
script: {fileID: 0}
- curve:
serializedVersion: 2
m_Curve: []
m_PreInfinity: 2
m_PostInfinity: 2
m_RotationOrder: 4
attribute: m_LocalEulerAngles.z
path:
classID: 4
script: {fileID: 0}
m_HasGenericRootTransform: 1
m_HasMotionFloatCurves: 0
m_Events:
- time: 0.98333335
functionName: ChangeToLastWeapon
data:
objectReferenceParameter: {fileID: 0}
floatParameter: 0
intParameter: 0
messageOptions: 0

View File

@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 338039c598435fe47b36e3faa8a39be5
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 7400000
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,194 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!1107 &-7882301587831338161
AnimatorStateMachine:
serializedVersion: 6
m_ObjectHideFlags: 1
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name: Base Layer
m_ChildStates:
- serializedVersion: 1
m_State: {fileID: -7198673788992821918}
m_Position: {x: 100, y: 540, z: 0}
- serializedVersion: 1
m_State: {fileID: -6611441686942547392}
m_Position: {x: 240, y: 400, z: 0}
- serializedVersion: 1
m_State: {fileID: 8020492566475511360}
m_Position: {x: 210, y: 650, z: 0}
m_ChildStateMachines: []
m_AnyStateTransitions:
- {fileID: 3038297982892717297}
- {fileID: 7043963421109177551}
m_EntryTransitions: []
m_StateMachineTransitions: {}
m_StateMachineBehaviours: []
m_AnyStatePosition: {x: -100, y: 590, z: 0}
m_EntryPosition: {x: 50, y: 120, z: 0}
m_ExitPosition: {x: 800, y: 120, z: 0}
m_ParentStateMachinePosition: {x: 800, y: 20, z: 0}
m_DefaultState: {fileID: -6611441686942547392}
--- !u!1102 &-7198673788992821918
AnimatorState:
serializedVersion: 6
m_ObjectHideFlags: 1
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name: Shake
m_Speed: 1
m_CycleOffset: 0
m_Transitions: []
m_StateMachineBehaviours: []
m_Position: {x: 50, y: 50, z: 0}
m_IKOnFeet: 0
m_WriteDefaultValues: 1
m_Mirror: 0
m_SpeedParameterActive: 0
m_MirrorParameterActive: 0
m_CycleOffsetParameterActive: 0
m_TimeParameterActive: 0
m_Motion: {fileID: 7400000, guid: 338039c598435fe47b36e3faa8a39be5, type: 2}
m_Tag:
m_SpeedParameter:
m_MirrorParameter:
m_CycleOffsetParameter:
m_TimeParameter:
--- !u!1102 &-6611441686942547392
AnimatorState:
serializedVersion: 6
m_ObjectHideFlags: 1
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name: Empty
m_Speed: 1
m_CycleOffset: 0
m_Transitions: []
m_StateMachineBehaviours: []
m_Position: {x: 50, y: 50, z: 0}
m_IKOnFeet: 0
m_WriteDefaultValues: 1
m_Mirror: 0
m_SpeedParameterActive: 0
m_MirrorParameterActive: 0
m_CycleOffsetParameterActive: 0
m_TimeParameterActive: 0
m_Motion: {fileID: 7400000, guid: 4f71d41a86ce8a04a8f7659c3b6ba649, type: 2}
m_Tag:
m_SpeedParameter:
m_MirrorParameter:
m_CycleOffsetParameter:
m_TimeParameter:
--- !u!91 &9100000
AnimatorController:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name: Tree
serializedVersion: 5
m_AnimatorParameters:
- m_Name: Shake
m_Type: 9
m_DefaultFloat: 0
m_DefaultInt: 0
m_DefaultBool: 0
m_Controller: {fileID: 0}
- m_Name: Fall
m_Type: 9
m_DefaultFloat: 0
m_DefaultInt: 0
m_DefaultBool: 0
m_Controller: {fileID: 0}
m_AnimatorLayers:
- serializedVersion: 5
m_Name: Base Layer
m_StateMachine: {fileID: -7882301587831338161}
m_Mask: {fileID: 0}
m_Motions: []
m_Behaviours: []
m_BlendingMode: 0
m_SyncedLayerIndex: -1
m_DefaultWeight: 0
m_IKPass: 0
m_SyncedLayerAffectsTiming: 0
m_Controller: {fileID: 9100000}
--- !u!1101 &3038297982892717297
AnimatorStateTransition:
m_ObjectHideFlags: 1
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name:
m_Conditions:
- m_ConditionMode: 1
m_ConditionEvent: Shake
m_EventTreshold: 0
m_DstStateMachine: {fileID: 0}
m_DstState: {fileID: -7198673788992821918}
m_Solo: 0
m_Mute: 0
m_IsExit: 0
serializedVersion: 3
m_TransitionDuration: 0
m_TransitionOffset: 0
m_ExitTime: 0.75
m_HasExitTime: 0
m_HasFixedDuration: 0
m_InterruptionSource: 0
m_OrderedInterruption: 1
m_CanTransitionToSelf: 1
--- !u!1101 &7043963421109177551
AnimatorStateTransition:
m_ObjectHideFlags: 1
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name:
m_Conditions:
- m_ConditionMode: 1
m_ConditionEvent: Fall
m_EventTreshold: 0
m_DstStateMachine: {fileID: 0}
m_DstState: {fileID: 8020492566475511360}
m_Solo: 0
m_Mute: 0
m_IsExit: 0
serializedVersion: 3
m_TransitionDuration: 0
m_TransitionOffset: 0
m_ExitTime: 0
m_HasExitTime: 0
m_HasFixedDuration: 0
m_InterruptionSource: 0
m_OrderedInterruption: 1
m_CanTransitionToSelf: 1
--- !u!1102 &8020492566475511360
AnimatorState:
serializedVersion: 6
m_ObjectHideFlags: 1
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name: Fall
m_Speed: 1
m_CycleOffset: 0
m_Transitions: []
m_StateMachineBehaviours: []
m_Position: {x: 50, y: 50, z: 0}
m_IKOnFeet: 0
m_WriteDefaultValues: 1
m_Mirror: 0
m_SpeedParameterActive: 0
m_MirrorParameterActive: 0
m_CycleOffsetParameterActive: 0
m_TimeParameterActive: 0
m_Motion: {fileID: 7400000, guid: 951184307496ffd478344c57c3da83a4, type: 2}
m_Tag:
m_SpeedParameter:
m_MirrorParameter:
m_CycleOffsetParameter:
m_TimeParameter:

View File

@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 7d14e17aa64f8fe459a7ff19a5360764
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 9100000
userData:
assetBundleName:
assetBundleVariant:

View File

@ -1,8 +1,8 @@
fileFormatVersion: 2
guid: 48e08dc33330d11e9d4a1b246c52e4f6
timeCreated: 1488828285
licenseType: Store
guid: db5923efc8eaf284d90325c629a8519e
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,506 @@
//------------------------------------------------------------------------------
// <auto-generated>
// This code was auto-generated by com.unity.inputsystem:InputActionCodeGenerator
// version 1.3.0
// from Assets/InputAssets/PlayerC.inputactions
//
// Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated.
// </auto-generated>
//------------------------------------------------------------------------------
using System;
using System.Collections;
using System.Collections.Generic;
using UnityEngine.InputSystem;
using UnityEngine.InputSystem.Utilities;
public partial class @PlayerC : IInputActionCollection2, IDisposable
{
public InputActionAsset asset { get; }
public @PlayerC()
{
asset = InputActionAsset.FromJson(@"{
""name"": ""PlayerC"",
""maps"": [
{
""name"": ""Normal"",
""id"": ""a9509238-4ac2-4968-9104-7e40d5ee5be8"",
""actions"": [
{
""name"": ""Move"",
""type"": ""Value"",
""id"": ""4850f4e1-f2c9-4d5c-bd75-a8673acfb61a"",
""expectedControlType"": ""Axis"",
""processors"": """",
""interactions"": """",
""initialStateCheck"": true
},
{
""name"": ""Atk"",
""type"": ""Button"",
""id"": ""514296f3-ecfc-4870-85d4-dd364fe8773e"",
""expectedControlType"": ""Button"",
""processors"": """",
""interactions"": """",
""initialStateCheck"": false
},
{
""name"": ""Jump"",
""type"": ""Button"",
""id"": ""abed25a0-995f-4034-84f5-d751e6bc0a7f"",
""expectedControlType"": ""Button"",
""processors"": """",
""interactions"": """",
""initialStateCheck"": false
},
{
""name"": ""Interact"",
""type"": ""Button"",
""id"": ""b014aa44-5a26-4e36-b7b0-2bf89fc8617c"",
""expectedControlType"": ""Button"",
""processors"": """",
""interactions"": """",
""initialStateCheck"": false
},
{
""name"": ""LeftChange"",
""type"": ""Button"",
""id"": ""5e4b2241-fdf3-4717-9892-456eb07bff7d"",
""expectedControlType"": ""Button"",
""processors"": """",
""interactions"": """",
""initialStateCheck"": false
},
{
""name"": ""RightChange"",
""type"": ""Button"",
""id"": ""25825820-ed63-4821-a570-98c0346d0114"",
""expectedControlType"": ""Button"",
""processors"": """",
""interactions"": """",
""initialStateCheck"": false
}
],
""bindings"": [
{
""name"": ""Keyboard"",
""id"": ""dfa90ca2-5172-40a9-a51c-0302d90846b4"",
""path"": ""1DAxis"",
""interactions"": """",
""processors"": """",
""groups"": """",
""action"": ""Move"",
""isComposite"": true,
""isPartOfComposite"": false
},
{
""name"": ""negative"",
""id"": ""034d425f-6336-4c6d-a571-d5bc9a090686"",
""path"": ""<Keyboard>/a"",
""interactions"": """",
""processors"": """",
""groups"": ""Normal"",
""action"": ""Move"",
""isComposite"": false,
""isPartOfComposite"": true
},
{
""name"": ""positive"",
""id"": ""d58eeeaf-86a4-4adc-acb8-c647c77cd7b4"",
""path"": ""<Keyboard>/d"",
""interactions"": """",
""processors"": """",
""groups"": ""Normal"",
""action"": ""Move"",
""isComposite"": false,
""isPartOfComposite"": true
},
{
""name"": ""GamePad"",
""id"": ""a4b44fd8-a2cb-4a05-ab0d-ac14de8d17b6"",
""path"": ""1DAxis"",
""interactions"": """",
""processors"": """",
""groups"": """",
""action"": ""Move"",
""isComposite"": true,
""isPartOfComposite"": false
},
{
""name"": ""negative"",
""id"": ""ca1377ed-502a-4c18-b5da-542b0ab2f78a"",
""path"": ""<Gamepad>/leftStick/left"",
""interactions"": """",
""processors"": """",
""groups"": ""Normal"",
""action"": ""Move"",
""isComposite"": false,
""isPartOfComposite"": true
},
{
""name"": ""positive"",
""id"": ""be7d0a09-9192-417e-b737-ea3e160f4156"",
""path"": ""<Gamepad>/leftStick/right"",
""interactions"": """",
""processors"": """",
""groups"": ""Normal"",
""action"": ""Move"",
""isComposite"": false,
""isPartOfComposite"": true
},
{
""name"": """",
""id"": ""74439205-ca18-4731-809e-9db029435012"",
""path"": ""<Keyboard>/j"",
""interactions"": """",
""processors"": """",
""groups"": """",
""action"": ""Atk"",
""isComposite"": false,
""isPartOfComposite"": false
},
{
""name"": """",
""id"": ""41256d78-e271-4ffe-a025-708f7f7dd055"",
""path"": ""<Gamepad>/buttonWest"",
""interactions"": """",
""processors"": """",
""groups"": """",
""action"": ""Atk"",
""isComposite"": false,
""isPartOfComposite"": false
},
{
""name"": """",
""id"": ""d26afab9-340e-4c38-905f-576f82ce664c"",
""path"": ""<Gamepad>/buttonSouth"",
""interactions"": """",
""processors"": """",
""groups"": """",
""action"": ""Jump"",
""isComposite"": false,
""isPartOfComposite"": false
},
{
""name"": """",
""id"": ""310e0ce7-9635-4c78-bf18-8b46b039dbb4"",
""path"": ""<Keyboard>/k"",
""interactions"": """",
""processors"": """",
""groups"": """",
""action"": ""Jump"",
""isComposite"": false,
""isPartOfComposite"": false
},
{
""name"": """",
""id"": ""56e4c8f3-5f31-4e4c-b216-914499d0d7a8"",
""path"": ""<Keyboard>/f"",
""interactions"": """",
""processors"": """",
""groups"": """",
""action"": ""Interact"",
""isComposite"": false,
""isPartOfComposite"": false
},
{
""name"": """",
""id"": ""d38f2194-30e2-45a5-a803-89534727cf65"",
""path"": ""<Gamepad>/buttonWest"",
""interactions"": """",
""processors"": """",
""groups"": """",
""action"": ""Interact"",
""isComposite"": false,
""isPartOfComposite"": false
},
{
""name"": """",
""id"": ""848dbb1f-2a82-4dc8-9673-c7f69bc2eaa5"",
""path"": ""<Keyboard>/q"",
""interactions"": """",
""processors"": """",
""groups"": """",
""action"": ""LeftChange"",
""isComposite"": false,
""isPartOfComposite"": false
},
{
""name"": """",
""id"": ""d1bc2781-7f70-4170-93c3-c849ff56c3cf"",
""path"": ""<Gamepad>/dpad/left"",
""interactions"": """",
""processors"": """",
""groups"": """",
""action"": ""LeftChange"",
""isComposite"": false,
""isPartOfComposite"": false
},
{
""name"": """",
""id"": ""bdd4c52b-c221-49d3-b467-201ebc18cb71"",
""path"": ""<Keyboard>/e"",
""interactions"": """",
""processors"": """",
""groups"": """",
""action"": ""RightChange"",
""isComposite"": false,
""isPartOfComposite"": false
},
{
""name"": """",
""id"": ""257c9bb8-7e77-4e5c-9caf-97284fb0adbd"",
""path"": ""<Gamepad>/dpad/right"",
""interactions"": """",
""processors"": """",
""groups"": """",
""action"": ""RightChange"",
""isComposite"": false,
""isPartOfComposite"": false
}
]
},
{
""name"": ""Null"",
""id"": ""d35487bf-8b39-4ef8-932a-e057537f5cff"",
""actions"": [
{
""name"": ""New action"",
""type"": ""Button"",
""id"": ""8227df78-160c-4425-939a-fb42da1254ef"",
""expectedControlType"": ""Button"",
""processors"": """",
""interactions"": """",
""initialStateCheck"": false
}
],
""bindings"": [
{
""name"": """",
""id"": ""522de362-9c2e-4df0-8a98-33364cf3737b"",
""path"": """",
""interactions"": """",
""processors"": """",
""groups"": ""Normal"",
""action"": ""New action"",
""isComposite"": false,
""isPartOfComposite"": false
}
]
}
],
""controlSchemes"": [
{
""name"": ""Normal"",
""bindingGroup"": ""Normal"",
""devices"": [
{
""devicePath"": ""<Gamepad>"",
""isOptional"": true,
""isOR"": false
},
{
""devicePath"": ""<Keyboard>"",
""isOptional"": true,
""isOR"": false
}
]
}
]
}");
// Normal
m_Normal = asset.FindActionMap("Normal", throwIfNotFound: true);
m_Normal_Move = m_Normal.FindAction("Move", throwIfNotFound: true);
m_Normal_Atk = m_Normal.FindAction("Atk", throwIfNotFound: true);
m_Normal_Jump = m_Normal.FindAction("Jump", throwIfNotFound: true);
m_Normal_Interact = m_Normal.FindAction("Interact", throwIfNotFound: true);
m_Normal_LeftChange = m_Normal.FindAction("LeftChange", throwIfNotFound: true);
m_Normal_RightChange = m_Normal.FindAction("RightChange", throwIfNotFound: true);
// Null
m_Null = asset.FindActionMap("Null", throwIfNotFound: true);
m_Null_Newaction = m_Null.FindAction("New action", throwIfNotFound: true);
}
public void Dispose()
{
UnityEngine.Object.Destroy(asset);
}
public InputBinding? bindingMask
{
get => asset.bindingMask;
set => asset.bindingMask = value;
}
public ReadOnlyArray<InputDevice>? devices
{
get => asset.devices;
set => asset.devices = value;
}
public ReadOnlyArray<InputControlScheme> controlSchemes => asset.controlSchemes;
public bool Contains(InputAction action)
{
return asset.Contains(action);
}
public IEnumerator<InputAction> GetEnumerator()
{
return asset.GetEnumerator();
}
IEnumerator IEnumerable.GetEnumerator()
{
return GetEnumerator();
}
public void Enable()
{
asset.Enable();
}
public void Disable()
{
asset.Disable();
}
public IEnumerable<InputBinding> bindings => asset.bindings;
public InputAction FindAction(string actionNameOrId, bool throwIfNotFound = false)
{
return asset.FindAction(actionNameOrId, throwIfNotFound);
}
public int FindBinding(InputBinding bindingMask, out InputAction action)
{
return asset.FindBinding(bindingMask, out action);
}
// Normal
private readonly InputActionMap m_Normal;
private INormalActions m_NormalActionsCallbackInterface;
private readonly InputAction m_Normal_Move;
private readonly InputAction m_Normal_Atk;
private readonly InputAction m_Normal_Jump;
private readonly InputAction m_Normal_Interact;
private readonly InputAction m_Normal_LeftChange;
private readonly InputAction m_Normal_RightChange;
public struct NormalActions
{
private @PlayerC m_Wrapper;
public NormalActions(@PlayerC wrapper) { m_Wrapper = wrapper; }
public InputAction @Move => m_Wrapper.m_Normal_Move;
public InputAction @Atk => m_Wrapper.m_Normal_Atk;
public InputAction @Jump => m_Wrapper.m_Normal_Jump;
public InputAction @Interact => m_Wrapper.m_Normal_Interact;
public InputAction @LeftChange => m_Wrapper.m_Normal_LeftChange;
public InputAction @RightChange => m_Wrapper.m_Normal_RightChange;
public InputActionMap Get() { return m_Wrapper.m_Normal; }
public void Enable() { Get().Enable(); }
public void Disable() { Get().Disable(); }
public bool enabled => Get().enabled;
public static implicit operator InputActionMap(NormalActions set) { return set.Get(); }
public void SetCallbacks(INormalActions instance)
{
if (m_Wrapper.m_NormalActionsCallbackInterface != null)
{
@Move.started -= m_Wrapper.m_NormalActionsCallbackInterface.OnMove;
@Move.performed -= m_Wrapper.m_NormalActionsCallbackInterface.OnMove;
@Move.canceled -= m_Wrapper.m_NormalActionsCallbackInterface.OnMove;
@Atk.started -= m_Wrapper.m_NormalActionsCallbackInterface.OnAtk;
@Atk.performed -= m_Wrapper.m_NormalActionsCallbackInterface.OnAtk;
@Atk.canceled -= m_Wrapper.m_NormalActionsCallbackInterface.OnAtk;
@Jump.started -= m_Wrapper.m_NormalActionsCallbackInterface.OnJump;
@Jump.performed -= m_Wrapper.m_NormalActionsCallbackInterface.OnJump;
@Jump.canceled -= m_Wrapper.m_NormalActionsCallbackInterface.OnJump;
@Interact.started -= m_Wrapper.m_NormalActionsCallbackInterface.OnInteract;
@Interact.performed -= m_Wrapper.m_NormalActionsCallbackInterface.OnInteract;
@Interact.canceled -= m_Wrapper.m_NormalActionsCallbackInterface.OnInteract;
@LeftChange.started -= m_Wrapper.m_NormalActionsCallbackInterface.OnLeftChange;
@LeftChange.performed -= m_Wrapper.m_NormalActionsCallbackInterface.OnLeftChange;
@LeftChange.canceled -= m_Wrapper.m_NormalActionsCallbackInterface.OnLeftChange;
@RightChange.started -= m_Wrapper.m_NormalActionsCallbackInterface.OnRightChange;
@RightChange.performed -= m_Wrapper.m_NormalActionsCallbackInterface.OnRightChange;
@RightChange.canceled -= m_Wrapper.m_NormalActionsCallbackInterface.OnRightChange;
}
m_Wrapper.m_NormalActionsCallbackInterface = instance;
if (instance != null)
{
@Move.started += instance.OnMove;
@Move.performed += instance.OnMove;
@Move.canceled += instance.OnMove;
@Atk.started += instance.OnAtk;
@Atk.performed += instance.OnAtk;
@Atk.canceled += instance.OnAtk;
@Jump.started += instance.OnJump;
@Jump.performed += instance.OnJump;
@Jump.canceled += instance.OnJump;
@Interact.started += instance.OnInteract;
@Interact.performed += instance.OnInteract;
@Interact.canceled += instance.OnInteract;
@LeftChange.started += instance.OnLeftChange;
@LeftChange.performed += instance.OnLeftChange;
@LeftChange.canceled += instance.OnLeftChange;
@RightChange.started += instance.OnRightChange;
@RightChange.performed += instance.OnRightChange;
@RightChange.canceled += instance.OnRightChange;
}
}
}
public NormalActions @Normal => new NormalActions(this);
// Null
private readonly InputActionMap m_Null;
private INullActions m_NullActionsCallbackInterface;
private readonly InputAction m_Null_Newaction;
public struct NullActions
{
private @PlayerC m_Wrapper;
public NullActions(@PlayerC wrapper) { m_Wrapper = wrapper; }
public InputAction @Newaction => m_Wrapper.m_Null_Newaction;
public InputActionMap Get() { return m_Wrapper.m_Null; }
public void Enable() { Get().Enable(); }
public void Disable() { Get().Disable(); }
public bool enabled => Get().enabled;
public static implicit operator InputActionMap(NullActions set) { return set.Get(); }
public void SetCallbacks(INullActions instance)
{
if (m_Wrapper.m_NullActionsCallbackInterface != null)
{
@Newaction.started -= m_Wrapper.m_NullActionsCallbackInterface.OnNewaction;
@Newaction.performed -= m_Wrapper.m_NullActionsCallbackInterface.OnNewaction;
@Newaction.canceled -= m_Wrapper.m_NullActionsCallbackInterface.OnNewaction;
}
m_Wrapper.m_NullActionsCallbackInterface = instance;
if (instance != null)
{
@Newaction.started += instance.OnNewaction;
@Newaction.performed += instance.OnNewaction;
@Newaction.canceled += instance.OnNewaction;
}
}
}
public NullActions @Null => new NullActions(this);
private int m_NormalSchemeIndex = -1;
public InputControlScheme NormalScheme
{
get
{
if (m_NormalSchemeIndex == -1) m_NormalSchemeIndex = asset.FindControlSchemeIndex("Normal");
return asset.controlSchemes[m_NormalSchemeIndex];
}
}
public interface INormalActions
{
void OnMove(InputAction.CallbackContext context);
void OnAtk(InputAction.CallbackContext context);
void OnJump(InputAction.CallbackContext context);
void OnInteract(InputAction.CallbackContext context);
void OnLeftChange(InputAction.CallbackContext context);
void OnRightChange(InputAction.CallbackContext context);
}
public interface INullActions
{
void OnNewaction(InputAction.CallbackContext context);
}
}

View File

@ -0,0 +1,11 @@
fileFormatVersion: 2
guid: 774714dcc947aea43a4dd46adaad3d28
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,289 @@
{
"name": "PlayerC",
"maps": [
{
"name": "Normal",
"id": "a9509238-4ac2-4968-9104-7e40d5ee5be8",
"actions": [
{
"name": "Move",
"type": "Value",
"id": "4850f4e1-f2c9-4d5c-bd75-a8673acfb61a",
"expectedControlType": "Axis",
"processors": "",
"interactions": "",
"initialStateCheck": true
},
{
"name": "Atk",
"type": "Button",
"id": "514296f3-ecfc-4870-85d4-dd364fe8773e",
"expectedControlType": "Button",
"processors": "",
"interactions": "",
"initialStateCheck": false
},
{
"name": "Jump",
"type": "Button",
"id": "abed25a0-995f-4034-84f5-d751e6bc0a7f",
"expectedControlType": "Button",
"processors": "",
"interactions": "",
"initialStateCheck": false
},
{
"name": "Interact",
"type": "Button",
"id": "b014aa44-5a26-4e36-b7b0-2bf89fc8617c",
"expectedControlType": "Button",
"processors": "",
"interactions": "",
"initialStateCheck": false
},
{
"name": "LeftChange",
"type": "Button",
"id": "5e4b2241-fdf3-4717-9892-456eb07bff7d",
"expectedControlType": "Button",
"processors": "",
"interactions": "",
"initialStateCheck": false
},
{
"name": "RightChange",
"type": "Button",
"id": "25825820-ed63-4821-a570-98c0346d0114",
"expectedControlType": "Button",
"processors": "",
"interactions": "",
"initialStateCheck": false
}
],
"bindings": [
{
"name": "Keyboard",
"id": "dfa90ca2-5172-40a9-a51c-0302d90846b4",
"path": "1DAxis",
"interactions": "",
"processors": "",
"groups": "",
"action": "Move",
"isComposite": true,
"isPartOfComposite": false
},
{
"name": "negative",
"id": "034d425f-6336-4c6d-a571-d5bc9a090686",
"path": "<Keyboard>/a",
"interactions": "",
"processors": "",
"groups": "Normal",
"action": "Move",
"isComposite": false,
"isPartOfComposite": true
},
{
"name": "positive",
"id": "d58eeeaf-86a4-4adc-acb8-c647c77cd7b4",
"path": "<Keyboard>/d",
"interactions": "",
"processors": "",
"groups": "Normal",
"action": "Move",
"isComposite": false,
"isPartOfComposite": true
},
{
"name": "GamePad",
"id": "a4b44fd8-a2cb-4a05-ab0d-ac14de8d17b6",
"path": "1DAxis",
"interactions": "",
"processors": "",
"groups": "",
"action": "Move",
"isComposite": true,
"isPartOfComposite": false
},
{
"name": "negative",
"id": "ca1377ed-502a-4c18-b5da-542b0ab2f78a",
"path": "<Gamepad>/leftStick/left",
"interactions": "",
"processors": "",
"groups": "Normal",
"action": "Move",
"isComposite": false,
"isPartOfComposite": true
},
{
"name": "positive",
"id": "be7d0a09-9192-417e-b737-ea3e160f4156",
"path": "<Gamepad>/leftStick/right",
"interactions": "",
"processors": "",
"groups": "Normal",
"action": "Move",
"isComposite": false,
"isPartOfComposite": true
},
{
"name": "",
"id": "74439205-ca18-4731-809e-9db029435012",
"path": "<Keyboard>/j",
"interactions": "",
"processors": "",
"groups": "",
"action": "Atk",
"isComposite": false,
"isPartOfComposite": false
},
{
"name": "",
"id": "41256d78-e271-4ffe-a025-708f7f7dd055",
"path": "<Gamepad>/buttonWest",
"interactions": "",
"processors": "",
"groups": "",
"action": "Atk",
"isComposite": false,
"isPartOfComposite": false
},
{
"name": "",
"id": "d26afab9-340e-4c38-905f-576f82ce664c",
"path": "<Gamepad>/buttonSouth",
"interactions": "",
"processors": "",
"groups": "",
"action": "Jump",
"isComposite": false,
"isPartOfComposite": false
},
{
"name": "",
"id": "310e0ce7-9635-4c78-bf18-8b46b039dbb4",
"path": "<Keyboard>/k",
"interactions": "",
"processors": "",
"groups": "",
"action": "Jump",
"isComposite": false,
"isPartOfComposite": false
},
{
"name": "",
"id": "56e4c8f3-5f31-4e4c-b216-914499d0d7a8",
"path": "<Keyboard>/f",
"interactions": "",
"processors": "",
"groups": "",
"action": "Interact",
"isComposite": false,
"isPartOfComposite": false
},
{
"name": "",
"id": "d38f2194-30e2-45a5-a803-89534727cf65",
"path": "<Gamepad>/buttonWest",
"interactions": "",
"processors": "",
"groups": "",
"action": "Interact",
"isComposite": false,
"isPartOfComposite": false
},
{
"name": "",
"id": "848dbb1f-2a82-4dc8-9673-c7f69bc2eaa5",
"path": "<Keyboard>/q",
"interactions": "",
"processors": "",
"groups": "",
"action": "LeftChange",
"isComposite": false,
"isPartOfComposite": false
},
{
"name": "",
"id": "d1bc2781-7f70-4170-93c3-c849ff56c3cf",
"path": "<Gamepad>/dpad/left",
"interactions": "",
"processors": "",
"groups": "",
"action": "LeftChange",
"isComposite": false,
"isPartOfComposite": false
},
{
"name": "",
"id": "bdd4c52b-c221-49d3-b467-201ebc18cb71",
"path": "<Keyboard>/e",
"interactions": "",
"processors": "",
"groups": "",
"action": "RightChange",
"isComposite": false,
"isPartOfComposite": false
},
{
"name": "",
"id": "257c9bb8-7e77-4e5c-9caf-97284fb0adbd",
"path": "<Gamepad>/dpad/right",
"interactions": "",
"processors": "",
"groups": "",
"action": "RightChange",
"isComposite": false,
"isPartOfComposite": false
}
]
},
{
"name": "Null",
"id": "d35487bf-8b39-4ef8-932a-e057537f5cff",
"actions": [
{
"name": "New action",
"type": "Button",
"id": "8227df78-160c-4425-939a-fb42da1254ef",
"expectedControlType": "Button",
"processors": "",
"interactions": "",
"initialStateCheck": false
}
],
"bindings": [
{
"name": "",
"id": "522de362-9c2e-4df0-8a98-33364cf3737b",
"path": "",
"interactions": "",
"processors": "",
"groups": "Normal",
"action": "New action",
"isComposite": false,
"isPartOfComposite": false
}
]
}
],
"controlSchemes": [
{
"name": "Normal",
"bindingGroup": "Normal",
"devices": [
{
"devicePath": "<Gamepad>",
"isOptional": true,
"isOR": false
},
{
"devicePath": "<Keyboard>",
"isOptional": true,
"isOR": false
}
]
}
]
}

View File

@ -0,0 +1,14 @@
fileFormatVersion: 2
guid: 52fa29fa6b2d9da41929715d6ccd69c1
ScriptedImporter:
internalIDToNameTable: []
externalObjects: {}
serializedVersion: 2
userData:
assetBundleName:
assetBundleVariant:
script: {fileID: 11500000, guid: 8404be70184654265930450def6a9037, type: 3}
generateWrapperCode: 1
wrapperCodePath:
wrapperClassName:
wrapperCodeNamespace:

View File

@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: b1bc1f31bec99cf459c30fe48876c6e1
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,11 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!62 &6200000
PhysicsMaterial2D:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name: No Friction
friction: 0
bounciness: 0

View File

@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 2a806147463d9e148aef5c04f75c281d
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 6200000
userData:
assetBundleName:
assetBundleVariant:

View File

@ -1,8 +0,0 @@
fileFormatVersion: 2
guid: 81dbcde0f90df4e9ba9ca2794490e57a
timeCreated: 1491251885
licenseType: Store
DefaultImporter:
userData:
assetBundleName:
assetBundleVariant:

View File

@ -6,7 +6,7 @@ TextureImporter:
213: 21300000
second: Mushroom
externalObjects: {}
serializedVersion: 10
serializedVersion: 11
mipmaps:
mipMapMode: 0
enableMipMap: 0
@ -26,6 +26,7 @@ TextureImporter:
isReadable: 0
streamingMipmaps: 0
streamingMipmapsPriority: 0
vTOnly: 0
grayScaleToAlpha: 0
generateCubemap: 6
cubemapConvolution: 0
@ -34,9 +35,9 @@ TextureImporter:
maxTextureSize: 1024
textureSettings:
serializedVersion: 2
filterMode: -1
filterMode: 1
aniso: 1
mipBias: -100
mipBias: 0
wrapU: 1
wrapV: 1
wrapW: 1
@ -46,9 +47,9 @@ TextureImporter:
spriteMode: 1
spriteExtrude: 1
spriteMeshType: 1
alignment: 0
spritePivot: {x: 0.5, y: 0.5}
spritePixelsToUnits: 100
alignment: 7
spritePivot: {x: 0.5, y: 0}
spritePixelsToUnits: 300
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
spriteGenerateFallbackPhysicsShape: 1
alphaUsage: 1
@ -57,9 +58,13 @@ TextureImporter:
textureType: 8
textureShape: 1
singleChannelComponent: 0
flipbookRows: 1
flipbookColumns: 1
maxTextureSizeSet: 0
compressionQualitySet: 0
textureFormatSet: 0
ignorePngGamma: 0
applyGammaDecoding: 1
platformSettings:
- serializedVersion: 3
buildTarget: DefaultTexturePlatform
@ -73,6 +78,18 @@ TextureImporter:
overridden: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 0
- serializedVersion: 3
buildTarget: Standalone
maxTextureSize: 1024
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 0
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 0
spriteSheet:
serializedVersion: 2
sprites: []

View File

@ -9,7 +9,7 @@ TextureImporter:
213: 21300002
second: Ciara
externalObjects: {}
serializedVersion: 10
serializedVersion: 11
mipmaps:
mipMapMode: 0
enableMipMap: 0
@ -29,6 +29,7 @@ TextureImporter:
isReadable: 0
streamingMipmaps: 0
streamingMipmapsPriority: 0
vTOnly: 0
grayScaleToAlpha: 0
generateCubemap: 6
cubemapConvolution: 0
@ -37,9 +38,9 @@ TextureImporter:
maxTextureSize: 1024
textureSettings:
serializedVersion: 2
filterMode: -1
filterMode: 1
aniso: 1
mipBias: -100
mipBias: 0
wrapU: 1
wrapV: 1
wrapW: 1
@ -51,7 +52,7 @@ TextureImporter:
spriteMeshType: 1
alignment: 0
spritePivot: {x: 0.5, y: 0.5}
spritePixelsToUnits: 100
spritePixelsToUnits: 580
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
spriteGenerateFallbackPhysicsShape: 1
alphaUsage: 1
@ -60,9 +61,13 @@ TextureImporter:
textureType: 8
textureShape: 1
singleChannelComponent: 0
flipbookRows: 1
flipbookColumns: 1
maxTextureSizeSet: 0
compressionQualitySet: 0
textureFormatSet: 0
ignorePngGamma: 0
applyGammaDecoding: 1
platformSettings:
- serializedVersion: 3
buildTarget: DefaultTexturePlatform
@ -76,6 +81,18 @@ TextureImporter:
overridden: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 0
- serializedVersion: 3
buildTarget: Standalone
maxTextureSize: 1024
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 0
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 0
spriteSheet:
serializedVersion: 2
sprites: []

View File

@ -1,8 +0,0 @@
fileFormatVersion: 2
guid: ed09910c0094cb27be8f3ca264680da3
timeCreated: 1488828285
licenseType: Store
DefaultImporter:
userData:
assetBundleName:
assetBundleVariant:

View File

@ -1,8 +0,0 @@
fileFormatVersion: 2
guid: cc355dd4cf1e6173beaeb22c2858cbe1
timeCreated: 1488828285
licenseType: Store
DefaultImporter:
userData:
assetBundleName:
assetBundleVariant:

8
Assets/Prefabs.meta Normal file
View File

@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 0fea20d3edb8fd6489ca302b95893639
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,97 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!1 &1936023874439208078
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 1936023874439208072}
- component: {fileID: 1936023874439208079}
- component: {fileID: 4902991926991665690}
m_Layer: 0
m_Name: "\u706B\u628A"
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!4 &1936023874439208072
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1936023874439208078}
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 0.3, y: 0.3, z: 0.3}
m_Children: []
m_Father: {fileID: 0}
m_RootOrder: 0
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!212 &1936023874439208079
SpriteRenderer:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1936023874439208078}
m_Enabled: 1
m_CastShadows: 0
m_ReceiveShadows: 0
m_DynamicOccludee: 1
m_MotionVectors: 1
m_LightProbeUsage: 1
m_ReflectionProbeUsage: 1
m_RayTracingMode: 0
m_RayTraceProcedural: 0
m_RenderingLayerMask: 1
m_RendererPriority: 0
m_Materials:
- {fileID: 2100000, guid: a97c105638bdf8b4a8650670310a4cd3, type: 2}
m_StaticBatchInfo:
firstSubMesh: 0
subMeshCount: 0
m_StaticBatchRoot: {fileID: 0}
m_ProbeAnchor: {fileID: 0}
m_LightProbeVolumeOverride: {fileID: 0}
m_ScaleInLightmap: 1
m_ReceiveGI: 1
m_PreserveUVs: 0
m_IgnoreNormalsForChartDetection: 0
m_ImportantGI: 0
m_StitchLightmapSeams: 1
m_SelectedEditorRenderState: 0
m_MinimumChartSize: 4
m_AutoUVMaxDistance: 0.5
m_AutoUVMaxAngle: 89
m_LightmapParameters: {fileID: 0}
m_SortingLayerID: 0
m_SortingLayer: 0
m_SortingOrder: 0
m_Sprite: {fileID: 21300000, guid: 5c0aba5708616c04182e2737f0b79fec, type: 3}
m_Color: {r: 1, g: 1, b: 1, a: 1}
m_FlipX: 0
m_FlipY: 0
m_DrawMode: 0
m_Size: {x: 3.93, y: 6.55}
m_AdaptiveModeThreshold: 0.5
m_SpriteTileMode: 0
m_WasSpriteAssigned: 1
m_MaskInteraction: 0
m_SpriteSortPoint: 0
--- !u!114 &4902991926991665690
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1936023874439208078}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 38942215688709940aa75b20394fe4f5, type: 3}
m_Name:
m_EditorClassIdentifier:

View File

@ -0,0 +1,7 @@
fileFormatVersion: 2
guid: a74564a767dc70240816885b2afad328
PrefabImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,97 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!1 &4181178188287077447
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 4181178188287077441}
- component: {fileID: 4181178188287077446}
- component: {fileID: 2212176824050044244}
m_Layer: 0
m_Name: "\u7740\u706B"
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!4 &4181178188287077441
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 4181178188287077447}
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: -0.05, y: 6.19, z: 0}
m_LocalScale: {x: 0.3, y: 0.3, z: 0.3}
m_Children: []
m_Father: {fileID: 0}
m_RootOrder: 0
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!212 &4181178188287077446
SpriteRenderer:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 4181178188287077447}
m_Enabled: 1
m_CastShadows: 0
m_ReceiveShadows: 0
m_DynamicOccludee: 1
m_MotionVectors: 1
m_LightProbeUsage: 1
m_ReflectionProbeUsage: 1
m_RayTracingMode: 0
m_RayTraceProcedural: 0
m_RenderingLayerMask: 1
m_RendererPriority: 0
m_Materials:
- {fileID: 2100000, guid: a97c105638bdf8b4a8650670310a4cd3, type: 2}
m_StaticBatchInfo:
firstSubMesh: 0
subMeshCount: 0
m_StaticBatchRoot: {fileID: 0}
m_ProbeAnchor: {fileID: 0}
m_LightProbeVolumeOverride: {fileID: 0}
m_ScaleInLightmap: 1
m_ReceiveGI: 1
m_PreserveUVs: 0
m_IgnoreNormalsForChartDetection: 0
m_ImportantGI: 0
m_StitchLightmapSeams: 1
m_SelectedEditorRenderState: 0
m_MinimumChartSize: 4
m_AutoUVMaxDistance: 0.5
m_AutoUVMaxAngle: 89
m_LightmapParameters: {fileID: 0}
m_SortingLayerID: 0
m_SortingLayer: 0
m_SortingOrder: 0
m_Sprite: {fileID: 21300000, guid: 5c0aba5708616c04182e2737f0b79fec, type: 3}
m_Color: {r: 1, g: 0, b: 0, a: 1}
m_FlipX: 0
m_FlipY: 0
m_DrawMode: 0
m_Size: {x: 3.93, y: 6.55}
m_AdaptiveModeThreshold: 0.5
m_SpriteTileMode: 0
m_WasSpriteAssigned: 1
m_MaskInteraction: 0
m_SpriteSortPoint: 0
--- !u!114 &2212176824050044244
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 4181178188287077447}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: e98d963784aa3d8438ed294296859be5, type: 3}
m_Name:
m_EditorClassIdentifier:

View File

@ -0,0 +1,7 @@
fileFormatVersion: 2
guid: ca7046f990a45f44688a8e4097d6402e
PrefabImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,97 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!1 &6620016358095660858
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 6620016358095660856}
- component: {fileID: 6620016358095660859}
- component: {fileID: 8773829515005846407}
m_Layer: 0
m_Name: "\u77F3\u5200"
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!4 &6620016358095660856
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 6620016358095660858}
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 0.3, y: 0.3, z: 0.3}
m_Children: []
m_Father: {fileID: 0}
m_RootOrder: 0
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!212 &6620016358095660859
SpriteRenderer:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 6620016358095660858}
m_Enabled: 1
m_CastShadows: 0
m_ReceiveShadows: 0
m_DynamicOccludee: 1
m_MotionVectors: 1
m_LightProbeUsage: 1
m_ReflectionProbeUsage: 1
m_RayTracingMode: 0
m_RayTraceProcedural: 0
m_RenderingLayerMask: 1
m_RendererPriority: 0
m_Materials:
- {fileID: 2100000, guid: a97c105638bdf8b4a8650670310a4cd3, type: 2}
m_StaticBatchInfo:
firstSubMesh: 0
subMeshCount: 0
m_StaticBatchRoot: {fileID: 0}
m_ProbeAnchor: {fileID: 0}
m_LightProbeVolumeOverride: {fileID: 0}
m_ScaleInLightmap: 1
m_ReceiveGI: 1
m_PreserveUVs: 0
m_IgnoreNormalsForChartDetection: 0
m_ImportantGI: 0
m_StitchLightmapSeams: 1
m_SelectedEditorRenderState: 0
m_MinimumChartSize: 4
m_AutoUVMaxDistance: 0.5
m_AutoUVMaxAngle: 89
m_LightmapParameters: {fileID: 0}
m_SortingLayerID: 0
m_SortingLayer: 0
m_SortingOrder: 0
m_Sprite: {fileID: 21300000, guid: dc56fb8ee3fd2f140af2c2f5b46474ca, type: 3}
m_Color: {r: 1, g: 1, b: 1, a: 1}
m_FlipX: 0
m_FlipY: 0
m_DrawMode: 0
m_Size: {x: 2.41, y: 5.57}
m_AdaptiveModeThreshold: 0.5
m_SpriteTileMode: 0
m_WasSpriteAssigned: 1
m_MaskInteraction: 0
m_SpriteSortPoint: 0
--- !u!114 &8773829515005846407
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 6620016358095660858}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 38942215688709940aa75b20394fe4f5, type: 3}
m_Name:
m_EditorClassIdentifier:

View File

@ -0,0 +1,7 @@
fileFormatVersion: 2
guid: edecf791093330a4b8299512214e3c7b
PrefabImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,128 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!1 &7570369621642905633
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 6876791028779571526}
- component: {fileID: 1385768884675084595}
m_Layer: 0
m_Name: "\u77F3\u65A7"
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!4 &6876791028779571526
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 7570369621642905633}
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 0.3, y: 0.3, z: 0.3}
m_Children: []
m_Father: {fileID: 7863567265678196433}
m_RootOrder: 0
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!212 &1385768884675084595
SpriteRenderer:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 7570369621642905633}
m_Enabled: 1
m_CastShadows: 0
m_ReceiveShadows: 0
m_DynamicOccludee: 1
m_MotionVectors: 1
m_LightProbeUsage: 1
m_ReflectionProbeUsage: 1
m_RayTracingMode: 0
m_RayTraceProcedural: 0
m_RenderingLayerMask: 1
m_RendererPriority: 0
m_Materials:
- {fileID: 2100000, guid: a97c105638bdf8b4a8650670310a4cd3, type: 2}
m_StaticBatchInfo:
firstSubMesh: 0
subMeshCount: 0
m_StaticBatchRoot: {fileID: 0}
m_ProbeAnchor: {fileID: 0}
m_LightProbeVolumeOverride: {fileID: 0}
m_ScaleInLightmap: 1
m_ReceiveGI: 1
m_PreserveUVs: 0
m_IgnoreNormalsForChartDetection: 0
m_ImportantGI: 0
m_StitchLightmapSeams: 1
m_SelectedEditorRenderState: 0
m_MinimumChartSize: 4
m_AutoUVMaxDistance: 0.5
m_AutoUVMaxAngle: 89
m_LightmapParameters: {fileID: 0}
m_SortingLayerID: 0
m_SortingLayer: 0
m_SortingOrder: 0
m_Sprite: {fileID: 21300000, guid: c0a0626de86a9ef4dbc8aa6f4ec78707, type: 3}
m_Color: {r: 1, g: 1, b: 1, a: 1}
m_FlipX: 0
m_FlipY: 0
m_DrawMode: 0
m_Size: {x: 7.89, y: 3.14}
m_AdaptiveModeThreshold: 0.5
m_SpriteTileMode: 0
m_WasSpriteAssigned: 1
m_MaskInteraction: 0
m_SpriteSortPoint: 0
--- !u!1 &7863567265678196435
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 7863567265678196433}
- component: {fileID: 7863567265678196434}
m_Layer: 0
m_Name: "\u7A7A\u624B"
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!4 &7863567265678196433
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 7863567265678196435}
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1}
m_Children:
- {fileID: 6876791028779571526}
m_Father: {fileID: 0}
m_RootOrder: 0
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!114 &7863567265678196434
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 7863567265678196435}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 78cd2dd02bceb464c92d5d793e296305, type: 3}
m_Name:
m_EditorClassIdentifier:

View File

@ -0,0 +1,7 @@
fileFormatVersion: 2
guid: c4cc5bce000aaa448b52dec73dc44706
PrefabImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

File diff suppressed because it is too large Load Diff

View File

@ -1,5 +1,5 @@
fileFormatVersion: 2
guid: 2cda990e2423bbf4892e6590ba056729
guid: ee694e09c439ff94d836d965bd1d96de
DefaultImporter:
externalObjects: {}
userData:

View File

@ -72,21 +72,21 @@ LightmapSettings:
m_FinalGatherRayCount: 256
m_ReflectionCompression: 2
m_MixedBakeMode: 2
m_BakeBackend: 0
m_BakeBackend: 1
m_PVRSampling: 1
m_PVRDirectSampleCount: 32
m_PVRSampleCount: 500
m_PVRSampleCount: 512
m_PVRBounces: 2
m_PVREnvironmentSampleCount: 500
m_PVREnvironmentSampleCount: 256
m_PVREnvironmentReferencePointCount: 2048
m_PVRFilteringMode: 2
m_PVRDenoiserTypeDirect: 0
m_PVRDenoiserTypeIndirect: 0
m_PVRDenoiserTypeAO: 0
m_PVRFilteringMode: 1
m_PVRDenoiserTypeDirect: 1
m_PVRDenoiserTypeIndirect: 1
m_PVRDenoiserTypeAO: 1
m_PVRFilterTypeDirect: 0
m_PVRFilterTypeIndirect: 0
m_PVRFilterTypeAO: 0
m_PVREnvironmentMIS: 0
m_PVREnvironmentMIS: 1
m_PVRCulling: 1
m_PVRFilteringGaussRadiusDirect: 1
m_PVRFilteringGaussRadiusIndirect: 5
@ -123,7 +123,7 @@ NavMeshSettings:
debug:
m_Flags: 0
m_NavMeshData: {fileID: 0}
--- !u!1 &519420028
--- !u!1 &1721685559
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
@ -131,9 +131,9 @@ GameObject:
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 519420032}
- component: {fileID: 519420031}
- component: {fileID: 519420029}
- component: {fileID: 1721685562}
- component: {fileID: 1721685561}
- component: {fileID: 1721685560}
m_Layer: 0
m_Name: Main Camera
m_TagString: MainCamera
@ -141,24 +141,24 @@ GameObject:
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!81 &519420029
--- !u!81 &1721685560
AudioListener:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 519420028}
m_GameObject: {fileID: 1721685559}
m_Enabled: 1
--- !u!20 &519420031
--- !u!20 &1721685561
Camera:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 519420028}
m_GameObject: {fileID: 1721685559}
m_Enabled: 1
serializedVersion: 2
m_ClearFlags: 2
m_ClearFlags: 1
m_BackGroundColor: {r: 0.19215687, g: 0.3019608, b: 0.4745098, a: 0}
m_projectionMatrixMode: 1
m_GateFitMode: 2
@ -184,21 +184,21 @@ Camera:
m_RenderingPath: -1
m_TargetTexture: {fileID: 0}
m_TargetDisplay: 0
m_TargetEye: 0
m_TargetEye: 3
m_HDR: 1
m_AllowMSAA: 0
m_AllowMSAA: 1
m_AllowDynamicResolution: 0
m_ForceIntoRT: 0
m_OcclusionCulling: 0
m_OcclusionCulling: 1
m_StereoConvergence: 10
m_StereoSeparation: 0.022
--- !u!4 &519420032
--- !u!4 &1721685562
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 519420028}
m_GameObject: {fileID: 1721685559}
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 0, y: 0, z: -10}
m_LocalScale: {x: 1, y: 1, z: 1}
@ -206,3 +206,46 @@ Transform:
m_Father: {fileID: 0}
m_RootOrder: 0
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!1 &1768031467
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 1768031469}
- component: {fileID: 1768031468}
m_Layer: 0
m_Name: GameObject
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!114 &1768031468
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1768031467}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 02b642358c4be914281c3462ff8eab86, type: 3}
m_Name:
m_EditorClassIdentifier:
--- !u!4 &1768031469
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1768031467}
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1}
m_Children: []
m_Father: {fileID: 0}
m_RootOrder: 1
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}

View File

@ -0,0 +1,7 @@
fileFormatVersion: 2
guid: 778e3ae1d9c4fa347836d6c9573116a4
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,7 @@
fileFormatVersion: 2
guid: 9d2abd5208f4caf4fb48d255afe4a1c8
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,44 @@
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class Fire : Interacter
{
public FireStick fireStick;
override protected void Start()
{
base.Start();
}
// Update is called once per frame
void Update()
{
}
public override void OnCall()
{
base.OnCall();
switch (interactState)
{
case 0:
ChangesDuringIntertacting(1f);
if (player.weapon.name == "火把")
{
Debug.Log("牛逼,烧起来了");
ItemController.Instance.AddItem(fireStick);
ChangeToLastWeapon();
}
else
{ interactState = 0;
Debug.Log("没活了,烧不起来");
}
break;
default:
break;
}
}
}

View File

@ -0,0 +1,11 @@
fileFormatVersion: 2
guid: c3117bb72947fa847aa126fa768a3881
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,18 @@
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class FireStick : Item
{
// Start is called before the first frame update
override protected void Start()
{
base.Start();
}
// Update is called once per frame
void Update()
{
}
}

View File

@ -0,0 +1,11 @@
fileFormatVersion: 2
guid: e98d963784aa3d8438ed294296859be5
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,37 @@
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class Interacter : Interactable
{
protected int interactState = 0;
protected bool interating = false;
override protected void Start()
{
base.Start();
}
protected void ResetInteracting()
{
interating = false;
player.ToMap("Normal");
}
protected virtual void ChangesDuringIntertacting(float time)
{
if (interating == false)
{
player.ToMap("Null");
interactState++;
interating = true;
Invoke(nameof(ResetInteracting), time);
}
}
public void ChangeToLastWeapon()
{
ItemController.Instance.ToLastestItem();
}
}

View File

@ -0,0 +1,11 @@
fileFormatVersion: 2
guid: 68d7f17a6df124546813c2c8f4174c53
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,34 @@
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class Item : MonoBehaviour
{
protected Vector3 oriPos;
virtual protected void Start() {
transform.SetParent(null);
oriPos=transform.position;
//Debug.Log(name+oriTrans.position);
}
virtual public void ReturnToOri() {
transform.SetParent(null);
transform.position = oriPos;
}
virtual public void InPosition(Transform targetTrans,Vector3 position) {
transform.SetParent(targetTrans);
//Debug.Log(name + targetTrans.name);
transform.localPosition = position;
transform.localRotation = Quaternion.identity;
}
protected virtual void Attack() {
}
public Vector3 GetOriposition() {
return oriPos;
}
}

View File

@ -0,0 +1,11 @@
fileFormatVersion: 2
guid: 78cd2dd02bceb464c92d5d793e296305
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,76 @@
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class ItemController : UnitySingleton<ItemController>
{
int displayIndex=0;
Item displayItem;
public List<Item> itemList = new List<Item>();
Player player;
void Start()
{
player = FindObjectOfType<Player>();
Display();
}
// Update is called once per frame
void Update()
{
}
//添加物品
public void AddItem(Item item) {
itemList.Add(item);
}
/// <summary>
/// 用于Player获取物品
/// </summary>
public Item GetItem() {
return itemList[displayIndex];
}
/// <summary>
/// 用于强制改变Player的物品
/// </summary>
public void SetItem()
{
player.weapon = itemList[displayIndex];
}
/// <summary>
/// 展示正在使用的物品
/// </summary>
public void Display() {
SetItem();
displayItem = Instantiate(itemList[displayIndex],Vector3.zero,Quaternion.identity,transform);
displayItem.transform.localPosition = Vector3.zero;
}
public void LeftChangeItem() {
Destroy(displayItem.gameObject);
displayIndex = (displayIndex - 1 + itemList.Count)%itemList.Count;
Display();
}
public void RightChangeItem()
{
Destroy(displayItem.gameObject);
displayIndex = (displayIndex + 1)%itemList.Count;
Display();
}
public void ToLastestItem() {
player.WeaponReturn();
Destroy(displayItem.gameObject);
displayIndex = itemList.Count-1;
Display();
player.WeaponInPosition();
}
}

View File

@ -0,0 +1,11 @@
fileFormatVersion: 2
guid: 29f9bcadc4b03344885086261210b120
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,217 @@
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.InputSystem;
using Sirenix.OdinInspector;
using DG.Tweening;
public class Player : PlayerControl
{
/// <summary>
/// 玩家刚体组件喵
/// </summary>
Rigidbody2D m_rigidbody;
/// <summary>
/// 脚底位置子物体
/// </summary>
[Header("脚底位置")] [FoldoutGroup("子物体")]
public Transform groundCheck;
/// <summary>
/// 手持武器
/// </summary>
[Header("手持武器")] [FoldoutGroup("子物体")]
public Item weapon;
/// <summary>
/// 武器生成位置(需要绑在骨骼上)
/// </summary>
[Header("武器生成位置(需要绑在骨骼上)")][FoldoutGroup("子物体")]
public Vector3 weaponPos;
/// <summary>
/// 角色朝向向右为1
/// </summary>
[ReadOnly] [Header("朝向监测")]
public int isRight = 1;
/// <summary>
/// 角色是否落地
/// </summary>
[ReadOnly]
[Header("落地监测")]
public bool isGround = false;
[Header("行走速度")][FoldoutGroup("角色操作数据")]
public float speed;
[Header("跳跃力量")][FoldoutGroup("角色操作数据")]
public float jumpForce;
/// <summary>
/// 角色翻面时长
/// </summary>
[Header("角色翻面所需时长")]
public float flipDuration = 0.1f;
/// <summary>
/// 玩家初始化喵
/// </summary>
override protected void Start()
{
base.Start();
m_rigidbody = gameObject.GetComponent<Rigidbody2D>();
WeaponInit();
}
//UPDATE
void Update()
{
OnInputDetect();
Flip();
}
void FixedUpdate() {
Moving();
}
/// <summary>
/// 翻面函数
/// </summary>
void Flip()
{
int lastFrameDir = isRight;
if (inputDir * lastFrameDir < 0)
{ isRight *= -1;
//transform.localScale = new Vector3(-transform.localScale.x, transform.localScale.y, transform.localScale.z);
//transform.DOScale(new Vector3(-transform.localScale.x, transform.localScale.y, transform.localScale.z),0.1f);
//分情况定值翻转 可以规避在旋转动画未结束时再次翻转的造成的起始角度不同从而影响目标角度误差的问题
switch (isRight) {
case 1:
transform.DORotate(new Vector3(0, 0, 0), flipDuration);
break;
case -1:
transform.DORotate(new Vector3(0,180,0), flipDuration);
break;
}
}
}
/// <summary>
/// 检测是否停止摇杆输入
/// </summary>
void OnInputDetect() {
if (inputDir == 0)
Freeze();
}
/// <summary>
/// 强制静止
/// </summary>
void Freeze() {
m_rigidbody.velocity = new Vector2(0,m_rigidbody.velocity.y);
}
void Moving() {
m_rigidbody.velocity = new Vector2(inputDir * speed, m_rigidbody.velocity.y);
}
/// <param name="ctx"></param>
override protected void OnMove(InputAction.CallbackContext ctx)
{
base.OnMove(ctx);
}
override protected void OnAtk() {
base.OnAtk();
}
override protected void OnJump() {
base.OnJump();
if (isGround == true) {
isGround = false;
m_rigidbody.velocity = new Vector2(m_rigidbody.velocity.x, jumpForce);
}
}
override protected void OnInteract() {
base.OnInteract();
}
protected override void OnLeftChange()
{
WeaponReturn();
ItemController.Instance.LeftChangeItem();
WeaponInPosition();
}
protected override void OnRightChange()
{
WeaponReturn();
ItemController.Instance.RightChangeItem();
WeaponInPosition();
}
public void WeaponInPosition() {
GameObject chosenOne;
chosenOne = GameObject.Find(weapon.name);
if (chosenOne.TryGetComponent<Item>(out Item chosenWeapen))
chosenWeapen.InPosition(transform,weaponPos);
}
public void WeaponReturn()
{
GameObject chosenOne;
chosenOne = GameObject.Find(weapon.name);
if (chosenOne.TryGetComponent<Item>(out Item chosenWeapon))
{
//Debug.Log(chosenOne.name + chosenWeapon.GetOriposition());
chosenWeapon.ReturnToOri(); }
}
void WeaponInit() {
WeaponInPosition();
}
private void OnCollisionEnter2D(Collision2D collision)//当有物体碰上
{
//创到地面时触发一次
if (collision.transform.CompareTag("Ground"))
{
//向脚底发射一条短射线
Ray2D ray = new Ray2D(
groundCheck.position,
Vector2.down
);
Debug.DrawRay(ray.origin, ray.direction, Color.red, 10f);
//获取射线的碰撞结果
RaycastHit2D hit2D;
hit2D = Physics2D.Raycast(ray.origin, ray.direction, 0.001f);
//如果射线有结果并且射线创到的是地面,才表示着地了
if (hit2D && hit2D.collider.transform.CompareTag("Ground"))
{
isGround = true;
}
else Debug.Log("Not Ground");
}
}
}

View File

@ -0,0 +1,11 @@
fileFormatVersion: 2
guid: 94a70686225bbcc40a44a76ac05951e0
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

72
Assets/Scripts/乐/Shu.cs Normal file
View File

@ -0,0 +1,72 @@
using DG.Tweening;
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class Shu : Interacter
{
Animator anim;
public float rotateDuration=0.5f;
SpriteRenderer m_spr;
public Sprite sprite_Mu;
public Item Stick1;
public Item Stick2;
override protected void Start()
{
base.Start();
m_spr = GetComponent<SpriteRenderer>();
anim = GetComponent<Animator>();
}
// Update is called once per frame
void Update()
{
}
public override void OnCall()
{
switch (interactState) {
//交互的第一阶段,掉落树枝
case 0:
ChangesDuringIntertacting(1f);
//树抖两下
anim.SetTrigger("Shake");
ItemController.Instance.AddItem(Stick1);
ItemController.Instance.AddItem(Stick2);
//ItemController.Instance.ToLastestItem();
break;
//交互的第二阶段,推倒树木
case 1:
ChangesDuringIntertacting(rotateDuration);
anim.SetTrigger("Fall");
//transform.DORotate(new Vector3(0, 0, -90), rotateDuration);
break;
default:
break;
}
}
override protected void ChangesDuringIntertacting(float time)
{
base.ChangesDuringIntertacting(time);
}
public override void CancleEvent()
{
player.ToMap("Normal");
}
}

View File

@ -0,0 +1,11 @@
fileFormatVersion: 2
guid: 037f21dc1592db342a165700917f287f
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,25 @@
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class Stick :Item
{
// Start is called before the first frame update
protected override void Start()
{
base.Start();
}
// Update is called once per frame
void Update()
{
}
protected override void Attack()
{
base.Attack();
}
}

View File

@ -0,0 +1,11 @@
fileFormatVersion: 2
guid: 38942215688709940aa75b20394fe4f5
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,31 @@
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
/// <summary>
/// 进入式触发器的基类,继承自事件,每一个进入式触发器都必须继承这个类
/// </summary>
public class EntryTrigger : Event
{
private Collider2D m_collider;
void Start()
{
//如果没有挂载碰撞盒,则报错
if(!TryGetComponent<Collider2D>(out m_collider))
{
Debug.LogError(this.GetType() + gameObject.name + "没有挂载碰撞盒,请检查!");
}
//如果不是触发器,则报错
if(!m_collider.isTrigger)
{
Debug.LogError(this.GetType() + gameObject.name + "碰撞盒没有设置为触发器,请检查!");
}
}
virtual public void OnTriggerEnter2D(Collider2D other)
{
//如果玩家进入碰撞盒则触发事件
if(other.TryGetComponent<Player>(out Player player)) OnCall();
}
}

View File

@ -0,0 +1,11 @@
fileFormatVersion: 2
guid: a08702285d1216941b48b6d42e06bf82
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,24 @@
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
/// <summary>
/// 事件基类,事件需要继承这个类
/// </summary>
public class Event : MonoBehaviour
{
/// <summary>
/// 事件触发
/// </summary>
public virtual void OnCall(){}
/// <summary>
/// 要手动终止事件的时候调用
/// </summary>
public virtual void CancleEvent(){ OnCancle(); }
/// <summary>
/// 事件结束时触发
/// </summary>
protected virtual void OnCancle(){}
}

View File

@ -0,0 +1,11 @@
fileFormatVersion: 2
guid: 17fed7225ff8045449129f8106e9d559
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,54 @@
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using Sirenix.OdinInspector;
/// <summary>
/// 皇帝类,控制皇帝的行为,继承自可交互物体
/// </summary>
public class HuangDi : EntryTrigger
{
[SerializeField][EnumPaging]
private KnotMediator.KnotType neededType = KnotMediator.KnotType.;
public enum HuangDiState
{
None,
Ask,
Answer,
End
}
public HuangDiState state = HuangDiState.None;
public override void OnCall()
{
if(state == HuangDiState.Ask)
{
if(KnotMediator.Instance.CheckKnotType(neededType))
{
Debug.Log("皇帝接受了绳结");
state = HuangDiState.Answer;
//触发结束演出
FindObjectOfType<HuangdiConfused>().OnCall();
}
else
{
Debug.Log("皇帝拒绝了绳结");
FindObjectOfType<HuangdiAsk>().OnCall();
}
}
if(state == HuangDiState.None)
{
FindObjectOfType<HuangdiAsk>().OnCall();
}
}
public void setNeededType(KnotMediator.KnotType type)
{
neededType = type;
}
}

View File

@ -0,0 +1,11 @@
fileFormatVersion: 2
guid: e1b2323b7275ad44c94037be9f2ccec3
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,52 @@
using System;
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
/// <summary>
/// 可交互物件基类
/// </summary>
public class Interactable : Event
{
protected Player player;
protected virtual void Start()
{
//检查触发器
if (GetComponent<Collider2D>() == null)
{
Debug.LogError(this.GetType() + ": 没有碰撞盒");
}
else if(GetComponent<Collider2D>().isTrigger == false)
{
Debug.LogError(this.GetType() + ": 碰撞盒没有设置为触发器");
}
}
void OnTriggerEnter2D(Collider2D other)
{
if (other.TryGetComponent<PlayerInteract>(out PlayerInteract playerInteract))
{
playerInteract.SetCatched(this);
}
if (other.TryGetComponent<Player>(out Player player))
{
this.player = player;
}
}
void OnTriggerExit2D(Collider2D other)
{
if (other.TryGetComponent<PlayerInteract>(out PlayerInteract playerInteract))
{
playerInteract.CancleCatched(this);
}
}
internal void OnTriggerEnter2D()
{
throw new NotImplementedException();
}
}

View File

@ -0,0 +1,11 @@
fileFormatVersion: 2
guid: 1efac6c6faf3ed94db548016ffee8ce5
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,39 @@
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using Sirenix.OdinInspector;
/// <summary>
/// 绳结中介者,负责交流皇帝、玩家、绳结的信息
/// </summary>
public class KnotMediator : UnitySingleton<KnotMediator>
{
public enum KnotType
{
None,
,
,
}
/// <summary>
/// 当前记录的绳结类型
/// </summary>
[Header("当前记录的绳结类型")][SerializeField][ReadOnly][EnumPaging]
private KnotType currentKnotType;
public void RecordKnotType(KnotType knotType)
{
currentKnotType = knotType;
}
/// <summary>
/// 有黄帝调用,检查当前记录的和需要的绳结类型是否一致
/// </summary>
/// <param name="knotType">黄帝需要的绳结类型</param>
/// <returns></returns>
public bool CheckKnotType(KnotType knotType)
{
return knotType == currentKnotType;
}
}

View File

@ -0,0 +1,11 @@
fileFormatVersion: 2
guid: ad9fbcfc0d0c69744804efe3d7ad3fce
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,28 @@
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using Sirenix.OdinInspector;
/// <summary>
/// 绳结类,继承自可交互物体
/// </summary>
public class Kont : Interactable
{
/// <summary>
/// 自身绳结类型
/// </summary>
[EnumPaging][Header("自身绳结类型")]
public KnotMediator.KnotType type;
public override void OnCall()
{
// 如果绳结类型为空,则报错
if (type == KnotMediator.KnotType.None)
{
Debug.LogError("绳结类型为空,请设置绳结类型");
return;
}
//切换记录的绳结类型
KnotMediator.Instance.RecordKnotType(type);
}
}

View File

@ -0,0 +1,11 @@
fileFormatVersion: 2
guid: aaac64616770dce42a623c267c4d9d31
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,59 @@
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using Sirenix.OdinInspector;
using Cinemachine;
/*
2021.7.24
使Cam
*/
//视差类,霄酱写的🤔
[ExecuteAlways]
public class Parallax : MonoBehaviour
{
private Transform Cam;//视差摄像机
[Header("代表水平方向上、随着相机运动的倍率。")]
public float moveRate;//视差率
[Header("有时候视差起点会被不可抗力污染,当场景的东西位置乱了,就手动处理一下这个值吧")]
public float startPoint;//起点,自动获取
// Start is called before the first frame update
void Start()
{
Cam = GameObject.FindGameObjectWithTag("MainCamera").transform;
//startPoint = transform.position.x;//获取当前起点位置
//startPoint = transform.localPosition.x;//获取当前起点位置
}
void TheUpdate()
{
if(Cam == null)
{
Cam = GameObject.FindGameObjectWithTag("MainCamera").transform;
//Debug.LogError("视差摄像机未赋值,把主摄像机赋值给Cam就行");
//return;
}
//每帧更新位置
//transform.position = new Vector2(startPoint + Cam.position.x * moveRate, transform.position.y);
transform.localPosition = new Vector2(startPoint + Cam.position.x * moveRate, transform.position.y);
}
//为了解决Updata矛盾使用了以下代码
private void OnEnable()
{
CinemachineCore.CameraUpdatedEvent.AddListener(CameraUpdate);
}
private void OnDisable()
{
CinemachineCore.CameraUpdatedEvent.RemoveListener(CameraUpdate);
}
private void CameraUpdate(CinemachineBrain arg0)
{
TheUpdate();
}
}

View File

@ -0,0 +1,11 @@
fileFormatVersion: 2
guid: df6e24c16bdbd3c499f0d98e388083b2
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,125 @@
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.InputSystem;
using Sirenix.OdinInspector;
/// <summary>
/// 玩家的控制器部分,玩家主类必须继承这个类才能对控制做出反应
/// </summary>
public class PlayerControl : MonoBehaviour
{
private PlayerC playerC;
/// <summary>
/// 此帧输入方向,-1为左1为右0此帧不输入
/// </summary>
[SerializeField][ReadOnly][Header("此帧输入方向,-1为左1为右0表示此帧不输入")]
protected int inputDir;
protected PlayerInteract playerInteract;
protected virtual void Start()
{
playerC = new PlayerC();
//playerC.Enable();
playerC.Normal.Enable();
//为事件订阅方法
//为移动操作订阅方法
playerC.Normal.Move.performed += ctx => OnMove(ctx);
playerC.Normal.Move.canceled += ctx => { inputDir = 0; };
//为攻击操作订阅方法
playerC.Normal.Atk.performed += ctx => OnAtk();
//为跳跃操作订阅方法
playerC.Normal.Jump.performed += ctx => OnJump();
//为交互操作订阅方法
playerC.Normal.Interact.performed += ctx => OnInteract();
//为左切换操作订阅方法
playerC.Normal.LeftChange.performed += ctx => OnLeftChange();
//为右切换操作订阅方法
playerC.Normal.RightChange.performed += ctx => OnRightChange();
//给玩家物体添加子物体:互动侦察器
GameObject checker = new GameObject("互动侦察器");//新建游戏物体:互动侦察器
checker.transform.SetParent(transform);//将其设置为玩家的子物体
playerInteract = checker.AddComponent<PlayerInteract>();//增加玩家互动侦察器组件
checker.AddComponent<BoxCollider2D>().isTrigger = true;//增加碰撞盒,并将其设置为触发器
checker.GetComponent<BoxCollider2D>().size = new Vector2(1f, 1f);//设置碰撞盒大小
checker.transform.localPosition = Vector3.zero;//设置碰撞盒位置
}
/// <summary>
/// 当有移动输入的时候触发,因为涉及读值重些的时候记得必须Base
/// </summary>
protected virtual void OnMove(InputAction.CallbackContext ctx){
//根据读值设置记录的输入方向
if(ctx.ReadValue<float>() > 0){
inputDir = 1;
}else if(ctx.ReadValue<float>() < 0){
inputDir = -1;
}
if(ctx.ReadValue<float>().Equals(0f)){
inputDir = 0;
}
}
/// <summary>
/// 按下攻击时触发
/// </summary>
protected virtual void OnAtk(){}
/// <summary>
/// 按下跳跃时触发
/// </summary>
protected virtual void OnJump(){}
/// <summary>
/// 按下交互时触发
/// </summary>
protected virtual void OnInteract(){
//如果有交互事件,则调用事件
playerInteract.OnCall();
}
/// <summary>
/// 按下十字键左或者Q触发
/// </summary>
protected virtual void OnLeftChange(){}
/// <summary>
/// 按下十字键右或者E触发
/// </summary>
protected virtual void OnRightChange(){}
/// <summary>
/// 改变玩家的操作地图至参数值
/// </summary>
/// <param name="mapName">要改到的操作地图的名称</param>
public void ToMap(string mapName)
{
//先关闭所有的
CloseAllMaps();
//再打开指定的
switch(mapName)
{
case "Normal":
playerC.Normal.Enable();
break;
case "Null" :
playerC.Null.Enable();
break;
default:
Debug.LogError("没有叫" + mapName + "的操作地图");
break;
}
}
protected void CloseAllMaps()
{
//关闭所有的操作地图
playerC.Normal.Disable();
playerC.Null.Disable();
}
}

View File

@ -0,0 +1,11 @@
fileFormatVersion: 2
guid: 02b642358c4be914281c3462ff8eab86
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,31 @@
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using Sirenix.OdinInspector;
/// <summary>
/// 玩家交互组件,挂在玩家下面的子物体中
/// </summary>
public class PlayerInteract : MonoBehaviour
{
[SerializeField][ReadOnly]
private Event catched;
public void SetCatched(Event e)
{
catched = e;
}
public void CancleCatched(Event e)
{
if (e == catched)
{
catched = null;
}
}
public void OnCall()
{
if (catched != null)
{
catched.OnCall();
}
}
}

View File

@ -0,0 +1,11 @@
fileFormatVersion: 2
guid: 53a9e33ba521aa9469cf8214c44310e5
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,23 @@
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
/// <summary>
/// 状态模式中,单个状态的父类,所有的状态都需要继承自这个类。注意,这里是三级继承关系,这个是最底层的类,再往上是某个具
/// 体状态体系的父类,继承于这个类,最上层才是要实现功能的具体状态类,继承自中间层,只需要完善虚函数即可
/// </summary>
public class StateBase : MonoBehaviour
{
/// <summary>
/// 进入状态时调用
/// </summary>
public virtual void Enter(){}
/// <summary>
/// 状态结束时调用
/// </summary>
public virtual void End(){}
/// <summary>
/// 状态中每一帧调用
/// </summary>
public virtual void StateUpdate(){}
}

View File

@ -0,0 +1,11 @@
fileFormatVersion: 2
guid: 2aae34169cb209342bdfae44b74a6761
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,41 @@
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
/// <summary>
/// 状态模式的状态管理员基类,每一组状态的管理员都必须继承这个类
/// </summary>
public class StateMachineBase : MonoBehaviour
{
protected StateBase currentState;
protected bool isBegin = false;
/// <summary>
/// 改变状态的时候调用
/// </summary>
/// <param name="newState"></param>
public void ChangeState(StateBase newState)
{
isBegin = false;
if (currentState != null)
{
currentState.End();
}
currentState = newState;
}
/// <summary>
/// 状态的每一帧调用需要手动安排到主程序的Update中切记
/// </summary>
public void StateUpdate()
{
if (currentState != null)
{
if (!isBegin)
{
currentState.Enter();
isBegin = true;
}
currentState.StateUpdate();
}
}
}

View File

@ -0,0 +1,11 @@
fileFormatVersion: 2
guid: 570a7bc236b60d84195606d29616a6e6
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,40 @@
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
/// <summary>
/// 单例模式类模板
/// </summary>
public class UnitySingleton<T> : MonoBehaviour
where T : Component
{
private static T m_instance;
public static T Instance
{
get
{
if (m_instance == null)
{
m_instance = FindObjectOfType<T>();
if (m_instance == null)
{
Debug.LogError("缺少 " + typeof(T) + " 这个单例,没法在场景中找到");
}
}
return m_instance;
}
}
protected virtual void Awake()
{
if (m_instance == null)
{
m_instance = this as T;
}
else
{
Destroy(gameObject);
}
}
}

View File

@ -0,0 +1,11 @@
fileFormatVersion: 2
guid: 8d3368bff7857324580bba4842015865
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 2363862f5e448ad47848b458dad32794
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,189 @@
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using DG.Tweening;
using Sirenix.OdinInspector;
/// <summary>
/// 一次对话,只需在面板设置对话顺序和内容列表,再拖入对话者即可,其他一些暴露参数可不调
/// </summary>
public class AConversation : MonoBehaviour
{
[ListDrawerSettings]
public List<Sprite> contentList;
[ListDrawerSettings]
public List<ASpeak.Speaker> speakerList;
public string conversationName;
public float timePerSpeak;
public Sprite P1Background;
public Sprite P2Background;
[Header("P1一定是左边的切记")]
public Transform P1Pos;
public Transform P2Pos;
[Header("对话框到说话者中心的偏移量")]
public Vector2 offset = new Vector2(1.5f, 1.5f);
private List<ASpeak> speakList;
protected ASpeak.Speaker P1;
protected ASpeak.Speaker P2;
protected SpriteRenderer P1Renderer;
protected SpriteRenderer P2Renderer;
protected Player player;
protected SpriteRenderer P1ContentRenderer;
protected SpriteRenderer P2ContentRenderer;
void Start()
{
speakList = new List<ASpeak>();
//新增对话框游戏物体,挂在这个游戏物体上
AddDialog();
//找到玩家
player = FindObjectOfType<Player>();
SetConversation();
}
/// <summary>
/// 对外界唯一接口
/// </summary>
public void OnCall()
{
if(speakList.Count == speakerList.Count)
{
//移动对话框到相应位置
MoveDialog();
//开始对话
StartCoroutine(Speak());
}
else
{
Debug.LogError("对话顺序和内容列表长度不一致");
}
}
protected IEnumerator Speak(){
yield return new WaitForEndOfFrame();
//遍历对话列表
foreach(ASpeak speak in speakList){
//根据说话者将对话的透明度插值至1
if(speak.speaker == P1){
P1Renderer.DOColor(new Color(1,1,1,1),1f);
P1ContentRenderer.sprite = speak.content;
P1ContentRenderer.DOColor(new Color(1,1,1,1),1f);
}
else{
P2Renderer.DOColor(new Color(1,1,1,1),1f);
P2ContentRenderer.sprite = speak.content;
P2ContentRenderer.DOColor(new Color(1,1,1,1),1f);
}
//等待
yield return new WaitForSeconds(timePerSpeak);
//根据说话者将对话的透明度插值至0
if(speak.speaker == P1){
P1Renderer.DOColor(new Color(1,1,1,0),1f);
P1ContentRenderer.DOColor(new Color(1,1,1,0),1f);
}
else{
P2Renderer.DOColor(new Color(1,1,1,0),1f);
P2ContentRenderer.DOColor(new Color(1,1,1,0),1f);
}
yield return new WaitForSeconds(1f);
}
//都说完以后,触发结束事件
OnEnd();
}
/// <summary>
/// 在设置对话顺序时使用
/// </summary>
/// <param name="speaker"></param>
protected void AddASpeak(ASpeak.Speaker speaker,Sprite content)
{
ASpeak speak = new ASpeak();
speak.speaker = speaker;
speak.content = content;
speakList.Add(speak);
}
/// <summary>
/// 只需要手动设置说话的顺序,不需要手动设置对话内容
/// </summary>
public virtual void SetConversation()
{
for(int i = 0; i < speakerList.Count; i++)
{
AddASpeak(speakerList[i], contentList[i]);
}
}
/// <summary>
/// 对话结束时触发 会恢复玩家的操作权限
/// </summary>
public virtual void OnEnd()
{
//不在演出中时,恢复玩家的操作权限
if(!ConversationController.Instance.CheckStage())
player.ToMap("Normal");
}
/// <summary>
/// 初始化对话框
/// </summary>
protected void AddDialog()
{
//新增对话框游戏物体,挂在这个游戏物体上
GameObject P1dialog = new GameObject("P1Dialog");
P1dialog.transform.SetParent(transform);
P1dialog.transform.position = new Vector3(0, 0, 0);
P1dialog.AddComponent<SpriteRenderer>();
P1Renderer = P1dialog.GetComponent<SpriteRenderer>();
P1Renderer.sprite = P1Background;
P1Renderer.sortingLayerName = "UI";
GameObject P2dialog = new GameObject("P2Dialog");
P2dialog.transform.SetParent(transform);
P2dialog.transform.position = new Vector3(0, 0, 0);
P2dialog.AddComponent<SpriteRenderer>();
P2Renderer = P2dialog.GetComponent<SpriteRenderer>();
P2Renderer.sprite = P2Background;
P2Renderer.sortingLayerName = "UI";
//使其二透明度变为0
P1Renderer.color = new Color(1, 1, 1, 0);
P2Renderer.color = new Color(1, 1, 1, 0);
//新增对话框内容游戏物体,挂在对话框游戏物体上
GameObject P1Content = new GameObject("P1Content");
P1Content.transform.SetParent(P1dialog.transform);
P1Content.transform.localPosition = new Vector3(0, 0, 0);
P1Content.AddComponent<SpriteRenderer>();
P1ContentRenderer = P1Content.GetComponent<SpriteRenderer>();
P1ContentRenderer.sortingLayerName = "UI";
P1ContentRenderer.sortingOrder = 2;
GameObject P2Content = new GameObject("P2Content");
P2Content.transform.SetParent(P2dialog.transform);
P2Content.transform.localPosition = new Vector3(0, 0, 0);
P2Content.AddComponent<SpriteRenderer>();
P2ContentRenderer = P2Content.GetComponent<SpriteRenderer>();
P2ContentRenderer.sortingLayerName = "UI";
P2ContentRenderer.sortingOrder = 2;
//使其二透明度变为0
P1ContentRenderer.color = new Color(1, 1, 1, 0);
P2ContentRenderer.color = new Color(1, 1, 1, 0);
}
protected void MoveDialog()
{
P1Renderer.transform.position = P1Pos.position + new Vector3(offset.x, offset.y, 0);
P2Renderer.transform.position = P2Pos.position + new Vector3(offset.x * - 1, offset.y, 0);
}
}

View File

@ -0,0 +1,11 @@
fileFormatVersion: 2
guid: 6cb90a10e58c42d47b5142ad61ef47d8
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,19 @@
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using Sirenix.OdinInspector;
/// <summary>
/// 代表一句对话包含内容的Sprite和enum的对话者
/// </summary>
/// <typeparam name="T">此次对话的Spaker的枚举类型</typeparam>
public class ASpeak
{
public enum Speaker
{
P1,
P2
}
public Sprite content;
public Speaker speaker;
}

View File

@ -0,0 +1,11 @@
fileFormatVersion: 2
guid: 02035d4c700710b4e9160c4e67fece58
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,47 @@
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class ConversationController : UnitySingleton<ConversationController>
{
private AConversation[] conversationList;
void Start()
{
conversationList = FindObjectsOfType<AConversation>();
}
public void OnCall(string name)
{
//找到叫name的对话并调用其OnCall()
foreach (AConversation conversation in conversationList)
{
if (conversation.conversationName == name)
{
Debug.Log("找到对话:" + name);
conversation.OnCall();
//改变玩家地图至Null
FindObjectOfType<Player>().ToMap("Null");
return;
}
}
//如果没找到,则报错
Debug.LogError("没有找到名为" + name + "的对话");
}
/// <summary>
/// 如果正在演出,是不可以还给玩家操作权限的,出此下策,记录此时是否在演出
/// </summary>
/// <returns></returns>
public bool CheckStage(){
Stage[] stageList = FindObjectsOfType<Stage>();
foreach (Stage stage in stageList)
{
if (stage.isPlaying)
{
return true;
}
}
return false;
}
}

View File

@ -0,0 +1,11 @@
fileFormatVersion: 2
guid: d9222d1d92d354f43bf3ecf3ad5f5e68
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 353a97102fb385248b88317c7fac5f14
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,24 @@
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
/// <summary>
/// 演出,黄帝之问
/// </summary>
public class HuangdiAsk : Stage
{
protected override IEnumerator Main()
{
//触发对话:黄帝提需求
ConversationController.Instance.OnCall("黄帝提需求");
//等待对话结束
yield return new WaitForSeconds(3f);
//黄帝手指左方,但是目前没有动画
//标记黄帝状态为Ask
FindObjectOfType<HuangDi>().state = HuangDi.HuangDiState.Ask;
//结束
yield return base.Main();
}
}

View File

@ -0,0 +1,11 @@
fileFormatVersion: 2
guid: 55246ffc0988b9243b2761737d3be10c
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,19 @@
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class HuangdiConfused : Stage
{
protected override IEnumerator Main()
{
Debug.Log("黄帝疑惑");
//触发对话:黄帝疑惑
ConversationController.Instance.OnCall("黄帝疑惑");
//等待对话结束
yield return new WaitForSeconds(9f);
//标记黄帝状态为End
FindObjectOfType<HuangDi>().state = HuangDi.HuangDiState.End;
//结束
yield return base.Main();
}
}

View File

@ -0,0 +1,11 @@
fileFormatVersion: 2
guid: 730ec98327097464e86940e5df1628d3
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,64 @@
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using Sirenix.OdinInspector;
/// <summary>
/// 演出父类,所有演出均需要继承此类
/// </summary>
public class Stage : MonoBehaviour
{
/// <summary>
/// 是否正在演出
/// </summary>
[ReadOnly]
public bool isPlaying = false;
protected Player player;
/// <summary>
/// 外界调用唯一入口
/// </summary>
[ContextMenu("Play")]
public void OnCall()
{
//初始化
Init();
//开始Main的协程
StartCoroutine(Main());
}
/// <summary>
/// 默认的初始化会找到玩家并清除玩家的操作地图请按需求base
/// </summary>
protected virtual void Init()
{
//找到玩家
player = FindObjectOfType<Player>();
//清除玩家的操作地图
player.ToMap("Null");
isPlaying = true;
}
/// <summary>
/// 主体演出内容,base中包含触发结束事件重写请在主体尾部base
/// </summary>
protected virtual IEnumerator Main()
{
yield return new WaitForEndOfFrame();
OnEnd();
}
/// <summary>
/// 结束事件默认结束后恢复玩家的操作地图请按需求base
/// </summary>
protected virtual void OnEnd()
{
//恢复玩家的操作地图
player.ToMap("Normal");
isPlaying = false;
}
}

View File

@ -0,0 +1,11 @@
fileFormatVersion: 2
guid: 27b092c95d8c3ae48abe6f57bf7e028a
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

8
Assets/Shader.meta Normal file
View File

@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 5f8975581ee3d3b44b5f923fba5b7c04
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 05ac7bbe423ae334a93df7b81daa457d
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,94 @@
Shader "Unlit/LoadScreen"
{
Properties
{
_MainTex ("Texture", 2D) = "white" {}
_BlurRadius ("BlurRadius", Range(0, 50)) = 0 //模糊半径
_TextureSize ("TextureSize", Float) = 640
_SecTex("SecTex",2D) = "white" {}
}
SubShader
{
Tags { "RenderType"="Opaque" }
LOD 100
Pass
{
CGPROGRAM
#pragma vertex vert
#pragma fragment frag
// make fog work
#pragma multi_compile_fog
#include "UnityCG.cginc"
struct appdata
{
float4 vertex : POSITION;
float2 uv : TEXCOORD0;
};
struct v2f
{
float2 uv : TEXCOORD0;
UNITY_FOG_COORDS(1)
float4 vertex : SV_POSITION;
};
sampler2D _MainTex;
sampler2D _SecTex;
float4 _MainTex_ST;
int _BlurRadius;
float _TextureSize;
float GetGaussWeight(float x, float y, float sigma)
{
float sigma2 = pow(sigma, 2.0f);
float left = 1 / (2 * sigma2 * 3.1415926f);
float right = exp(-(x*x+y*y)/(2*sigma2)); //e的指数幂
return left * right;
}
float4 GaussBlur(float2 uv) //高斯公式
{
float sigma = (float)_BlurRadius / 3.0f;//权重
float4 col = float4(0, 0, 0, 0);
for (int x = - _BlurRadius; x <= _BlurRadius; ++x)
{
for (int y = - _BlurRadius; y <= _BlurRadius; ++y)
{
//获取周围像素的颜色
//转为uv上的坐标值
float4 color = tex2D(_SecTex, uv + float2(x / _TextureSize, y / _TextureSize));
//获取此像素的权重
float weight = GetGaussWeight(x, y, sigma);
//计算此点的最终颜色
col += color * weight; //颜色乘以权重
}
}
return col;
}
v2f vert (appdata v)
{
v2f o;
o.vertex = UnityObjectToClipPos(v.vertex);
o.uv = TRANSFORM_TEX(v.uv, _MainTex);
UNITY_TRANSFER_FOG(o,o.vertex);
return o;
}
float4 frag (v2f i) : SV_Target
{
float4 black = float4(0,0,0,0);
float4 col = GaussBlur(i.uv);
col*=1+_BlurRadius;
col=smoothstep(0.1,0.9,col);
col=step(col,0.5);
col*=tex2D(_MainTex,i.uv);
col = lerp(col,black,_BlurRadius*(1.0/50));
return col;
}
ENDCG
}
}
}

View File

@ -0,0 +1,10 @@
fileFormatVersion: 2
guid: d51f93ad8a827f544904c4d2f8a1d1d8
ShaderImporter:
externalObjects: {}
defaultTextures: []
nonModifiableTextures: []
preprocessorOverride: 0
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,34 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!21 &2100000
Material:
serializedVersion: 6
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name: Unlit_LoadScreen
m_Shader: {fileID: 4800000, guid: d51f93ad8a827f544904c4d2f8a1d1d8, type: 3}
m_ShaderKeywords:
m_LightmapFlags: 4
m_EnableInstancingVariants: 0
m_DoubleSidedGI: 0
m_CustomRenderQueue: -1
stringTagMap: {}
disabledShaderPasses: []
m_SavedProperties:
serializedVersion: 3
m_TexEnvs:
- _MainTex:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _SecTex:
m_Texture: {fileID: 8400000, guid: d8cdceb52a559c745b57588acf28ed1f, type: 2}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
m_Floats:
- _BlurRadius: 0
- _TextureSize: 640
m_Colors: []
m_BuildTextureStacks: []

View File

@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 2a4f749e5c54eee4898623e6f54feaaf
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 2100000
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,99 @@
Shader "pp/ScreenEffectShader"
{
Properties
{
_MainTex ("Texture", 2D) = "white" {}
_Color("color",Color) = (1,1,1,1)
}
SubShader
{
// No culling or depth
Cull Off ZWrite Off ZTest Always
Pass
{
CGPROGRAM
#pragma vertex vert
#pragma fragment frag
#include "UnityCG.cginc"
struct appdata
{
float4 vertex : POSITION;
float2 uv : TEXCOORD0;
};
struct v2f
{
float2 uv : TEXCOORD0;
float4 vertex : SV_POSITION;
};
v2f vert (appdata v)
{
v2f o;
o.vertex = UnityObjectToClipPos(v.vertex);
o.uv = v.uv;
return o;
}
sampler2D _MainTex;
sampler2D _GulussTex;
float4 _MainTex_TexelSize;
float4 _GulussTex_TexelSize;
float3 _Color;
float _BlurRadius;
float _Radius;
static float r = 1;
fixed luminance(fixed3 col)
{
return col.x * 0.299 + col.y * 0.587 + col.z * 0.114;
}
fixed4 frag (v2f i) : SV_Target
{
fixed3 col = tex2D(_MainTex,i.uv + _MainTex_TexelSize.xy*r*fixed2(-1,-1)).rgb * -1;
col += tex2D(_MainTex,i.uv + _MainTex_TexelSize.xy*r*fixed2(0,-1)).rgb * -2;
col += tex2D(_MainTex,i.uv + _MainTex_TexelSize.xy*r*fixed2(1,-1)).rgb * -1;
col += tex2D(_MainTex,i.uv + _MainTex_TexelSize.xy*r*fixed2(-1,0)).rgb * 0;
col += tex2D(_MainTex,i.uv + _MainTex_TexelSize.xy*r*fixed2(0,0)).rgb * 0;
col += tex2D(_MainTex,i.uv + _MainTex_TexelSize.xy*r*fixed2(1,0)).rgb * 0;
col += tex2D(_MainTex,i.uv + _MainTex_TexelSize.xy*r*fixed2(-1,1)).rgb * 1;
col += tex2D(_MainTex,i.uv + _MainTex_TexelSize.xy*r*fixed2(0,1)).rgb * 2;
col += tex2D(_MainTex,i.uv + _MainTex_TexelSize.xy*r*fixed2(1,1)).rgb * 1;
fixed gray = abs(luminance(col));
col = tex2D(_MainTex,i.uv + _MainTex_TexelSize.xy*r*fixed2(-1,-1)).rgb * -1;
col += tex2D(_MainTex,i.uv + _MainTex_TexelSize.xy*r*fixed2(0,-1)).rgb * 0;
col += tex2D(_MainTex,i.uv + _MainTex_TexelSize.xy*r*fixed2(1,-1)).rgb * 1;
col += tex2D(_MainTex,i.uv + _MainTex_TexelSize.xy*r*fixed2(-1,0)).rgb * -2;
col += tex2D(_MainTex,i.uv + _MainTex_TexelSize.xy*r*fixed2(0,0)).rgb * 0;
col += tex2D(_MainTex,i.uv + _MainTex_TexelSize.xy*r*fixed2(1,0)).rgb * 2;
col += tex2D(_MainTex,i.uv + _MainTex_TexelSize.xy*r*fixed2(-1,1)).rgb * -1;
col += tex2D(_MainTex,i.uv + _MainTex_TexelSize.xy*r*fixed2(0,1)).rgb * 0;
col += tex2D(_MainTex,i.uv + _MainTex_TexelSize.xy*r*fixed2(1,1)).rgb * 1;
gray += abs(luminance(col));
fixed3 enhance = fixed3(gray, gray, gray)*_Color;
//fixed3 ori = tex2D(_MainTex, i.uv).rgb + enhance * 0.5;
return fixed4(enhance,1);
}
ENDCG
}
}
FallBack Off
}

Some files were not shown because too many files have changed in this diff Show More