some old local changes
This commit is contained in:
15
Assets/scripts/coa4uext/Calcers/Calcer.cs
Executable file
15
Assets/scripts/coa4uext/Calcers/Calcer.cs
Executable file
@@ -0,0 +1,15 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using UnityEngine;
|
||||
|
||||
namespace coa4u
|
||||
{
|
||||
public abstract class Calcer
|
||||
{
|
||||
}
|
||||
|
||||
public abstract class Calcer<T> : Calcer
|
||||
{
|
||||
public abstract T value {get;}
|
||||
}
|
||||
}
|
||||
8
Assets/scripts/coa4uext/Calcers/Calcer.cs.meta
Executable file
8
Assets/scripts/coa4uext/Calcers/Calcer.cs.meta
Executable file
@@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 1c50d149e0d2dab4bb3a6114abdeb7e8
|
||||
MonoImporter:
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
44
Assets/scripts/coa4uext/Calcers/CalcerDirection.cs
Executable file
44
Assets/scripts/coa4uext/Calcers/CalcerDirection.cs
Executable file
@@ -0,0 +1,44 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using UnityEngine;
|
||||
|
||||
namespace coa4u
|
||||
{
|
||||
public class CalcerDirection : CalcerVector
|
||||
{
|
||||
Actor selfActor;
|
||||
Actor targetActor;
|
||||
Transform selfTransform;
|
||||
Transform targetTransform;
|
||||
|
||||
public CalcerDirection(Actor self, Actor target)
|
||||
: base()
|
||||
{
|
||||
selfActor = self;
|
||||
targetActor = target;
|
||||
}
|
||||
|
||||
public CalcerDirection(Transform self, Transform target)
|
||||
: base()
|
||||
{
|
||||
selfTransform = self;
|
||||
targetTransform = target;
|
||||
}
|
||||
|
||||
public override Vector3 value
|
||||
{
|
||||
get
|
||||
{
|
||||
if (targetTransform != null)
|
||||
{
|
||||
return Quaternion.LookRotation(targetTransform.position - selfTransform.position).eulerAngles;
|
||||
}
|
||||
else
|
||||
{
|
||||
return Quaternion.LookRotation(targetActor.transformCached.position - selfActor.transformCached.position).eulerAngles;
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
8
Assets/scripts/coa4uext/Calcers/CalcerDirection.cs.meta
Executable file
8
Assets/scripts/coa4uext/Calcers/CalcerDirection.cs.meta
Executable file
@@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 0a0a80ede5ea3dc42a372d76d2004cd0
|
||||
MonoImporter:
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
68
Assets/scripts/coa4uext/Calcers/CalcerFloat.cs
Executable file
68
Assets/scripts/coa4uext/Calcers/CalcerFloat.cs
Executable file
@@ -0,0 +1,68 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using UnityEngine;
|
||||
|
||||
namespace coa4u
|
||||
{
|
||||
public class CalcerFloat : Calcer<float>
|
||||
{
|
||||
private float internalValue;
|
||||
|
||||
public CalcerFloat()
|
||||
{
|
||||
}
|
||||
|
||||
public CalcerFloat(float value)
|
||||
{
|
||||
internalValue = value;
|
||||
}
|
||||
|
||||
public CalcerFloat(int value)
|
||||
{
|
||||
internalValue = (float)value;
|
||||
}
|
||||
|
||||
public CalcerFloat(double value)
|
||||
{
|
||||
internalValue = (float)value;
|
||||
}
|
||||
|
||||
public override float value
|
||||
{
|
||||
get
|
||||
{
|
||||
return internalValue;
|
||||
}
|
||||
}
|
||||
|
||||
public static implicit operator CalcerFloat(float val)
|
||||
{
|
||||
return new CalcerFloat(val);
|
||||
}
|
||||
|
||||
public static implicit operator float(CalcerFloat calc)
|
||||
{
|
||||
return calc.value;
|
||||
}
|
||||
|
||||
public static CalcerFloat operator +(CalcerFloat first, CalcerFloat second)
|
||||
{
|
||||
return new CalcerFloatCalc(first, second, CalcerFloatCalc.Operation.Add);
|
||||
}
|
||||
|
||||
public static CalcerFloat operator -(CalcerFloat first, CalcerFloat second)
|
||||
{
|
||||
return new CalcerFloatCalc(first, second, CalcerFloatCalc.Operation.Sub);
|
||||
}
|
||||
|
||||
public static CalcerFloat operator *(CalcerFloat first, CalcerFloat second)
|
||||
{
|
||||
return new CalcerFloatCalc(first, second, CalcerFloatCalc.Operation.Mul);
|
||||
}
|
||||
|
||||
public static CalcerFloat operator /(CalcerFloat first, CalcerFloat second)
|
||||
{
|
||||
return new CalcerFloatCalc(first, second, CalcerFloatCalc.Operation.Div);
|
||||
}
|
||||
}
|
||||
}
|
||||
8
Assets/scripts/coa4uext/Calcers/CalcerFloat.cs.meta
Executable file
8
Assets/scripts/coa4uext/Calcers/CalcerFloat.cs.meta
Executable file
@@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 7e93dc2f49487544fa3a9b1468d66779
|
||||
MonoImporter:
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
48
Assets/scripts/coa4uext/Calcers/CalcerFloatCalc.cs
Executable file
48
Assets/scripts/coa4uext/Calcers/CalcerFloatCalc.cs
Executable file
@@ -0,0 +1,48 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using UnityEngine;
|
||||
|
||||
namespace coa4u
|
||||
{
|
||||
public class CalcerFloatCalc : CalcerFloat
|
||||
{
|
||||
public enum Operation
|
||||
{
|
||||
Add,
|
||||
Sub,
|
||||
Mul,
|
||||
Div
|
||||
}
|
||||
|
||||
private Operation operation;
|
||||
private CalcerFloat first;
|
||||
private CalcerFloat second;
|
||||
|
||||
public CalcerFloatCalc(CalcerFloat first, CalcerFloat second, Operation operation = Operation.Add)
|
||||
{
|
||||
this.first = first;
|
||||
this.second = second;
|
||||
this.operation = operation;
|
||||
}
|
||||
|
||||
public float value
|
||||
{
|
||||
get
|
||||
{
|
||||
switch (operation)
|
||||
{
|
||||
case Operation.Add:
|
||||
return first.value + second.value;
|
||||
case Operation.Sub:
|
||||
return first.value - second.value;
|
||||
case Operation.Mul:
|
||||
return first.value * second.value;
|
||||
case Operation.Div:
|
||||
return first.value / second.value;
|
||||
default:
|
||||
throw new Exception("Operation not found.");
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
8
Assets/scripts/coa4uext/Calcers/CalcerFloatCalc.cs.meta
Executable file
8
Assets/scripts/coa4uext/Calcers/CalcerFloatCalc.cs.meta
Executable file
@@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 45cbf8512a210f942a10b844f2000826
|
||||
MonoImporter:
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
36
Assets/scripts/coa4uext/Calcers/CalcerPosition.cs
Executable file
36
Assets/scripts/coa4uext/Calcers/CalcerPosition.cs
Executable file
@@ -0,0 +1,36 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using UnityEngine;
|
||||
|
||||
namespace coa4u
|
||||
{
|
||||
public class CalcerPosition : CalcerVector
|
||||
{
|
||||
Actor targetActor;
|
||||
Transform targetTransform;
|
||||
|
||||
public CalcerPosition(Actor target)
|
||||
: base()
|
||||
{
|
||||
this.targetActor = target;
|
||||
}
|
||||
|
||||
public CalcerPosition(Transform target)
|
||||
: base()
|
||||
{
|
||||
this.targetTransform = target;
|
||||
}
|
||||
|
||||
public override Vector3 value
|
||||
{
|
||||
get
|
||||
{
|
||||
if (targetTransform != null)
|
||||
return (Vector3)targetTransform.position;
|
||||
else
|
||||
return (Vector3)targetActor.transformCached.position;
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
8
Assets/scripts/coa4uext/Calcers/CalcerPosition.cs.meta
Executable file
8
Assets/scripts/coa4uext/Calcers/CalcerPosition.cs.meta
Executable file
@@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 6f377903d22e64e409c946c5ec777bb9
|
||||
MonoImporter:
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
46
Assets/scripts/coa4uext/Calcers/CalcerRandomDirection.cs
Executable file
46
Assets/scripts/coa4uext/Calcers/CalcerRandomDirection.cs
Executable file
@@ -0,0 +1,46 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using UnityEngine;
|
||||
|
||||
namespace coa4u
|
||||
{
|
||||
public class CalcerRandomDirection : CalcerVector
|
||||
{
|
||||
Axises axises;
|
||||
|
||||
public CalcerRandomDirection(Axises axises)
|
||||
{
|
||||
this.axises = axises;
|
||||
}
|
||||
|
||||
public override Vector3 value
|
||||
{
|
||||
get
|
||||
{
|
||||
float x = UnityEngine.Random.Range(-360.0F, 360.0F);
|
||||
float y = UnityEngine.Random.Range(-360.0F, 360.0F);
|
||||
float z = UnityEngine.Random.Range(-360.0F, 360.0F);
|
||||
switch (axises)
|
||||
{
|
||||
case Axises.x:
|
||||
return new Vector3(x, 0, 0);
|
||||
case Axises.y:
|
||||
return new Vector3(0, y, 0);
|
||||
case Axises.z:
|
||||
return new Vector3(0, 0, z);
|
||||
case Axises.xy:
|
||||
return new Vector3(x, y, 0);
|
||||
case Axises.xz:
|
||||
return new Vector3(x, 0, z);
|
||||
case Axises.yz:
|
||||
return new Vector3(0, y, z);
|
||||
case Axises.xyz:
|
||||
return new Vector3(x, y, z);
|
||||
default:
|
||||
return Vector3.zero;
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
8
Assets/scripts/coa4uext/Calcers/CalcerRandomDirection.cs.meta
Executable file
8
Assets/scripts/coa4uext/Calcers/CalcerRandomDirection.cs.meta
Executable file
@@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 5ad17ef81ba6b9944bf5aa283e4be908
|
||||
MonoImporter:
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
70
Assets/scripts/coa4uext/Calcers/CalcerVector.cs
Executable file
70
Assets/scripts/coa4uext/Calcers/CalcerVector.cs
Executable file
@@ -0,0 +1,70 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using UnityEngine;
|
||||
|
||||
namespace coa4u
|
||||
{
|
||||
public class CalcerVector : Calcer<Vector3>
|
||||
{
|
||||
private Vector3 internalValue;
|
||||
private int dimensions;
|
||||
|
||||
public CalcerVector()
|
||||
{
|
||||
}
|
||||
|
||||
public CalcerVector(Vector3 value)
|
||||
{
|
||||
internalValue = value;
|
||||
dimensions = 3;
|
||||
}
|
||||
|
||||
public CalcerVector(Vector2 value)
|
||||
{
|
||||
internalValue = value;
|
||||
dimensions = 2;
|
||||
}
|
||||
|
||||
public override Vector3 value
|
||||
{
|
||||
get
|
||||
{
|
||||
switch (dimensions)
|
||||
{
|
||||
case 3:
|
||||
return (Vector3)internalValue;
|
||||
case 2:
|
||||
return (Vector2)internalValue;
|
||||
default:
|
||||
return internalValue;
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
public static implicit operator CalcerVector(Vector3 val)
|
||||
{
|
||||
return new CalcerVector(val);
|
||||
}
|
||||
|
||||
public static implicit operator CalcerVector(Vector2 val)
|
||||
{
|
||||
return new CalcerVector(val);
|
||||
}
|
||||
|
||||
public static implicit operator Vector3(CalcerVector calc)
|
||||
{
|
||||
return calc.value;
|
||||
}
|
||||
|
||||
public static CalcerVector operator +(CalcerVector first, CalcerVector second)
|
||||
{
|
||||
return new CalcerVectorCalc(first, second, CalcerVectorCalc.Operation.Add);
|
||||
}
|
||||
|
||||
public static CalcerVector operator -(CalcerVector first, CalcerVector second)
|
||||
{
|
||||
return new CalcerVectorCalc(first, second, CalcerVectorCalc.Operation.Sub);
|
||||
}
|
||||
}
|
||||
}
|
||||
8
Assets/scripts/coa4uext/Calcers/CalcerVector.cs.meta
Executable file
8
Assets/scripts/coa4uext/Calcers/CalcerVector.cs.meta
Executable file
@@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 6c04bfd357341874e8be24608bfd976e
|
||||
MonoImporter:
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
42
Assets/scripts/coa4uext/Calcers/CalcerVectorCalc.cs
Executable file
42
Assets/scripts/coa4uext/Calcers/CalcerVectorCalc.cs
Executable file
@@ -0,0 +1,42 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using UnityEngine;
|
||||
|
||||
namespace coa4u
|
||||
{
|
||||
public class CalcerVectorCalc : CalcerVector
|
||||
{
|
||||
public enum Operation
|
||||
{
|
||||
Add,
|
||||
Sub
|
||||
}
|
||||
|
||||
private Operation operation;
|
||||
private CalcerVector first;
|
||||
private CalcerVector second;
|
||||
|
||||
public CalcerVectorCalc(CalcerVector first, CalcerVector second, Operation operation = Operation.Add)
|
||||
{
|
||||
this.first = first;
|
||||
this.second = second;
|
||||
this.operation = operation;
|
||||
}
|
||||
|
||||
public override Vector3 value
|
||||
{
|
||||
get
|
||||
{
|
||||
switch (operation)
|
||||
{
|
||||
case Operation.Add:
|
||||
return first.value + second.value;
|
||||
case Operation.Sub:
|
||||
return first.value - second.value;
|
||||
default:
|
||||
throw new Exception("Operation not found.");
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
8
Assets/scripts/coa4uext/Calcers/CalcerVectorCalc.cs.meta
Executable file
8
Assets/scripts/coa4uext/Calcers/CalcerVectorCalc.cs.meta
Executable file
@@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 78a730b682beb8d4180d80db8bdc6537
|
||||
MonoImporter:
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
Reference in New Issue
Block a user