-
Notifications
You must be signed in to change notification settings - Fork 0
/
Tags.cs
103 lines (82 loc) · 2.37 KB
/
Tags.cs
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.Networking;
public enum CHARACTERTYPES { king, baby, archer, snake }
public enum GAMETYPES { local, lan, online }
public class Tags : MonoBehaviour {
//inputs
public const string horizontal = "Horizontal";
public const string vertical = "Vertical";
public const string jump = "Jump";
public const string fire = "Fire";
public const string Throw = "Throw";
public const string drop = "Drop";
public const string escape = "Escape";
public const string submit = "Submit";
public const string cancel = "Cancel";
//tags
public const string player = "Player";
public const string floor = "Floor";
public const string death = "Death";
public const string item = "Item";
public const string upgrade = "Upgrade";
//names
public const string firePos = "FirePos";
public const string spawnLocations = "SpawnLocations";
//animator parameter
public const string velocity_x = "Velocity_X";
public const string velocity_y = "Velocity_Y";
public const string hit = "Hit";
public const string jumping = "Jumping";
}
public delegate void standardAnnouncement();
public delegate void intAnnouncement(int i);
public interface Damageable
{
void Kill();
void Resurrect();
void Damage(int amount);
void Heal(int amount);
bool Dead { get; }
int Health { get; }
event intAnnouncement OnHit;
event standardAnnouncement OnDeath;
}
public interface Holdable
{
bool IsEquiped { get; }
void Pickup(GameObject ObjectPlayerController, Vector3 localPosition);
void Drop();
void Throw(float speed);
void Fire();
}
public interface Stunnable
{
void Stun(float time);
}
public interface PickUpAble
{
void Pickup(GameObject ObjectPlayerController, Vector3 localPosition);
}
public static class Util
{
private static System.Random rng = new System.Random();
public static T GetRandom<T>(this IList<T> list)
{
int i = Random.Range(0, list.Count);
return list[i];
}
public static void Shuffle<T>(this IList<T> list)
{
int n = list.Count;
while(n > 1)
{
n--;
int k = rng.Next(n + 1);
T value = list[k];
list[k] = list[n];
list[n] = value;
}
}
}