private void OnCollisionEnter(Collision col) { if (!col.gameObject.CompareTag("Bullet") && !col.gameObject.transform.root.CompareTag("Player")) { GameObject explosionClone = Instantiate(explosion, transform.position, transform.rotation); explosionClone.SendMessage("PlaySound", explosionSound); Destroy(explosionClone, 15f); GameObject[] enemies = AreaSearch.FindAllInRadiusWithTag(transform.position, blastRadius, "Enemy"); GameObject[] players = AreaSearch.FindAllInRadiusWithTag(transform.position, blastRadius / 2, "Player"); showHitmarker = false; foreach (GameObject i in enemies) { if (AreaSearch.CheckInLineOfSight(transform.position, i)) { health = i.transform.gameObject.GetComponent <HealthSinglePlayer>(); health.TakeDamage((int)(damage / (Vector3.Distance(transform.position, i.transform.position)) / 2)); showHitmarker = true; } } foreach (GameObject i in players) { if (AreaSearch.CheckInLineOfSight(transform.position, i)) { health = i.transform.gameObject.GetComponent <HealthSinglePlayer>(); health.TakeDamage((damage / 3) / (Vector3.Distance(transform.position, i.transform.position)) / 2); } } if (showHitmarker) { playerProperties.ShowHitmarker(false, .2f); } Destroy(gameObject); } }
public ServiceResult <List <Area> > GetSearchData(AreaSearch areaSearch) { var pageSize = 10; ServiceResult <List <Area> > model = new ServiceResult <List <Area> >(); var source = db.Areas.Where(x => x.IsActive == true).Include(x => x.User.Role); if (areaSearch.Name != null) { if (!string.IsNullOrEmpty(areaSearch.Name)) { source = source.Where(m => m.Name.Contains(areaSearch.Name.ToLower())); } // var items = source.OrderBy(m => m.Id).Skip((areaSearch.Page ?? 1 - 1) * pageSize).Take(pageSize).ToList(); } int count = source.Count(); var items = source.OrderByDescending(m => m.Id).Skip(((areaSearch.Page ?? 1) - 1) * pageSize) .Take(pageSize).ToList(); model.data = items.Select(x => new Area { Id = x.Id, ManagerID = x.ManagerID, Name = x.Name, User = x.User, }).ToList(); model.TotalCount = count; return(model); }
public void TriggerPlayerDetection() { if (!willWander) { willWander = true; return; } if (shootingRangeMode) { return; } GameObject[] closePlayers = AreaSearch.FindAllInRadiusWithTag(transform.position, playerAgroRadius, "Player"); Debug.Log("Number of close players: " + closePlayers.Length); bool[] isInLineOfSight = AreaSearch.CheckInLineOfSight(transform.position, closePlayers); for (int i = 0; i < isInLineOfSight.Length; i++) { if (isInLineOfSight[i]) { SetPlayerDetected(true); SetPlayerPosition(closePlayers[i].transform); for (int j = 0; j < detectionObjects.Count; j++) { detectionObjects[j].playerDetected = true; detectionObjects[j].playerProperties = closePlayers[i].transform.GetComponent <PlayerProperties>(); } Debug.Log(closePlayers[i] + " is in line of sight"); break; } else { Debug.Log(closePlayers[i] + " is not in line of sight"); } } }
public ActionResult _Index1(AreaSearch areaSearch, int?page) { int TotalCount = 0; var pageSize = 10; var pageNumber = page ?? 1; int CurrentPage = pageNumber; var endPage = CurrentPage + 4; int PagesToShow = 10; ViewBag.PageSize = pageSize; var AreaModelList = Services.AreaService.GetSearchData(areaSearch, page, out TotalCount); ViewBag.TotalCount = TotalCount; var result = CommonFunction.GetPages(TotalCount, pageSize, CurrentPage, PagesToShow); int totalPages = (TotalCount / pageSize) + (TotalCount % pageSize == 0 ? 0 : 1); ViewBag.result = result; ViewBag.totalPages = totalPages; ViewBag.CurrentPage = CurrentPage; var pageCount = result.Count(); ViewBag.pageCount = pageCount; ViewBag.endPage = endPage; return(View(AreaModelList)); }
public List <AreaModel> GetSearchData(AreaSearch areaSearch, int?page, out int TotalCount) { int pageNumber = (page ?? 1); var body = JsonConvert.SerializeObject(areaSearch); var result = ServerResponse.Invoke <ServiceResult <List <AreaModel> > >("api/area/getSearchData", body, "Post"); TotalCount = result.TotalCount; if (result.data != null) { var model = result.data.ToList(); return(model); } else { } return(result.data.ToList()); }
IEnumerator TimedExplosion() { yield return(new WaitForSeconds(explosionTimer)); GameObject explosionClone = Instantiate(explosion, transform.position, Quaternion.LookRotation(transform.up)); explosionClone.SendMessage("PlaySound", explosionSound); Destroy(explosionClone, 2f); GameObject[] enemies = AreaSearch.FindAllInRadiusWithTag(transform.position, blastRadius, "Enemy"); bool[] lineOfSight = new bool[enemies.Length]; if (enemies != null) { lineOfSight = AreaSearch.CheckInLineOfSight(transform.position, enemies); } showHitmarker = false; int count = 0; foreach (GameObject i in enemies) { if (lineOfSight[count]) { health = i.transform.gameObject.GetComponent <HealthSinglePlayer>(); health.TakeDamage((int)((damage * 7.5) / Vector3.Distance(transform.position, i.transform.position))); showHitmarker = true; } count++; } if (showHitmarker) { playerProperties.ShowHitmarker(false, .2f); } Destroy(gameObject); yield return(null); }
// Update is called once per frame void Update() { for (int i = 0; i < chestContents.contents.Count; i++) { if (chestContents.contents[i] != null) { inventoryItemImages[i].sprite = chestContents.contents[i].sprite; inventoryItemImages[i].gameObject.SetActive(true); backgroundImages[i].gameObject.SetActive(true); chestButtons[i].interactable = true; } else { inventoryItemImages[i].gameObject.SetActive(false); chestButtons[i].interactable = false; } } for (int i = chestContents.contents.Count; i < inventoryItemImages.Length; i++) { inventoryItemImages[i].gameObject.SetActive(false); backgroundImages[i].gameObject.SetActive(false); chestButtons[i].interactable = false; } GameObject closestPlayer = AreaSearch.FindClosestInRadiusWithTag(transform.position, 6, "Player"); if (closestPlayer != null) { ActivateUI(); Camera playerCam = closestPlayer.GetComponent <PlayerProperties>().cam; transform.LookAt(playerCam.transform); } else { DisableUI(); } }