public int CreatePickup(int model, Vector3 pos, Vector3 rot, int amount, uint respawnTime, int dimension, int customModel = 0) { int localEntityHash; var obj = new PickupProperties(); obj.Position = pos; obj.Rotation = rot; obj.ModelHash = model; obj.RespawnTime = respawnTime; obj.Amount = amount; obj.Dimension = dimension; obj.Alpha = 255; obj.Flag = 0; obj.CustomModel = customModel; obj.EntityType = (byte)EntityType.Pickup; lock (ServerEntities) { localEntityHash = GetId(); ServerEntities.Add(localEntityHash, obj); } var packet = new CreateEntity(); packet.EntityType = (byte)EntityType.Pickup; packet.Properties = obj; packet.NetHandle = localEntityHash; Program.ServerInstance.SendToAll(packet, PacketType.CreateEntity, true, ConnectionChannel.EntityBackend); return(localEntityHash); }
public int CreatePickup(int model, Vector3 pos, Vector3 rot, int amount, uint respawnTime, int dimension, int customModel = 0) { int localEntityHash; var obj = new PickupProperties { Position = pos, Rotation = rot, ModelHash = model, RespawnTime = respawnTime, Amount = amount, Dimension = dimension, Alpha = 255, Flag = 0, CustomModel = customModel, EntityType = (byte)EntityType.Pickup }; lock (ServerEntities) { localEntityHash = GetId(); ServerEntities.Add(localEntityHash, obj); } var packet = new CreateEntity { EntityType = (byte)EntityType.Pickup, Properties = obj, NetHandle = localEntityHash }; Program.ServerInstance.SendToAll(packet, PacketType.CreateEntity, true, ConnectionChannel.EntityBackend); return(localEntityHash); }
// Update is called once per frame void Update() { if (canSpawn == true) { int random = Random.Range(0, GameObjs.Count); GameObject item = (GameObject)Instantiate(GameObjs[random], transform.position, transform.rotation); //set the item's initial spawn point PickupProperties pickup = item.GetComponent <PickupProperties>(); pickup.setSpawn(gameObject); canSpawn = false; currTimer = SpawnTimer; } if (timeRunning) { if (currTimer <= 0) { canSpawn = true; timeRunning = false; currTimer = SpawnTimer; } else { currTimer--; } } }
public void updateItems(PickupProperties item){ myItems.Add (item); updateAtk(getNodeAtk() + item.attackModifier()); updateDef(getNodeDef() + item.defenseModifier()); }
// check on collision with another collider /*** must be trigger enabled ***/ void OnTriggerEnter(Collider other) { if (canPickUpL || canPickUpR) { // if other object is a "Pickup": if (other.gameObject.CompareTag("Pickup")) { GameObject otherObject = other.gameObject; // append item to a node representing if (canPickUpL) { AppendItem(otherObject, leftArm); } if (canPickUpR) { AppendItem(otherObject, rightArm); } // obtain pickup's properties pickupProperties = otherObject.GetComponent <PickupProperties>(); if (pickupProperties != null) { pickupProperties.PrintProperties(); // print'em } } } }
public void Init(Main main, PickupType pickupType) { this.main = main; this.pickupType = pickupType; this.pickupProperties = Pickup.pickupTypeToProperties[pickupType]; gridSpacing = main.GetGridSpacing(); groundYPos = (pickupProperties.scale.y / 2) - main.GetPlayerHeight() / 2; }
void OnTriggerEnter(Collider col) { if(col.tag == playerTag) { PickupProperties pickupProperties = new PickupProperties(type, value); col.SendMessageUpwards("OnPickUp", pickupProperties); Destroy(gameObject); } }
public void RespawnPickup(int netHandle, PickupProperties prop) { prop.PickedUp = false; var packet = new CreateEntity(); packet.EntityType = (byte)EntityType.Pickup; packet.Properties = prop; packet.NetHandle = netHandle; Program.ServerInstance.SendToAll(packet, PacketType.CreateEntity, true, ConnectionChannel.EntityBackend); }
public void effectItemsDur() { for (int i = 0; i < myItems.Count; i++) { PickupProperties curr_item = (PickupProperties)myItems [i]; curr_item.useDurability(); if (curr_item.durability() <= 0) { updateAtk(getNodeAtk() - curr_item.attackModifier()); updateDef(getNodeDef() - curr_item.defenseModifier()); Destroy(curr_item.gameObject); myItems.Remove(curr_item); } } }
void OnPickUp(PickupProperties pickup) { switch(pickup.type) { case PickupType.Score: scorePickUps += pickup.value; break; case PickupType.Heal: ScoreManager.Score += pickup.value; damageablePlayer.Health += pickup.value; break; default: Debug.Log("Empty pickup processed. " + pickup.ToString()); break; } }
public int CreatePickup(int model, Vector3 pos, Vector3 rot, int amount) { int localEntityHash = ++EntityCounter; var obj = new PickupProperties(); obj.Position = pos; obj.Rotation = rot; obj.ModelHash = model; obj.Amount = amount; obj.EntityType = (byte)EntityType.Pickup; ServerEntities.Add(localEntityHash, obj); var packet = new CreateEntity(); packet.EntityType = (byte)EntityType.Pickup; packet.Properties = obj; packet.NetHandle = localEntityHash; Program.ServerInstance.SendToAll(packet, PacketType.CreateEntity, true); return(localEntityHash); }
// check on collision with another collider /*** must be trigger enabled ***/ void OnTriggerEnter(Collider other) { if (canPickUpL || canPickUpR) { // if other object is a "Pickup": if (other.gameObject.CompareTag("Pickup")) { GameObject otherObject = other.gameObject; // append item to a node representing if(canPickUpL) AppendItem(otherObject, leftArm); if (canPickUpR) AppendItem(otherObject, rightArm); // obtain pickup's properties pickupProperties = otherObject.GetComponent<PickupProperties>(); if (pickupProperties != null) pickupProperties.PrintProperties(); // print'em } } }
public void updateItems(PickupProperties item) { myItems.Add(item); updateAtk(getNodeAtk() + item.attackModifier()); updateDef(getNodeDef() + item.defenseModifier()); }