Closes #228 Customer AI Improve
This commit is contained in:
parent
733cf4fd65
commit
ca89b2d13b
@ -1,3 +1,4 @@
|
|||||||
|
using System.Collections.Generic;
|
||||||
using UnityEngine;
|
using UnityEngine;
|
||||||
using UnityEngine.AI;
|
using UnityEngine.AI;
|
||||||
|
|
||||||
@ -76,12 +77,41 @@ namespace BlueWaterProject
|
|||||||
{
|
{
|
||||||
if (!npc.DoSeat)
|
if (!npc.DoSeat)
|
||||||
{
|
{
|
||||||
foreach (var table in tables)
|
// 확률 결정
|
||||||
|
var probability = Random.Range(0f, 1f);
|
||||||
|
|
||||||
|
if (probability <= 0.7f)
|
||||||
{
|
{
|
||||||
foreach (var seat in table.SeatPoints)
|
// 70% 확률: 비어 있는 좌석 중에서 랜덤 선택
|
||||||
|
var availableSeats = new List<Seat>();
|
||||||
|
foreach (var table in tables)
|
||||||
{
|
{
|
||||||
if (seat.IsUsing) continue;
|
foreach (var seat in table.SeatPoints)
|
||||||
AssignSeatToNpc(seat);
|
{
|
||||||
|
if (!seat.IsUsing) availableSeats.Add(seat);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if (availableSeats.Count > 0)
|
||||||
|
{
|
||||||
|
var randomIndex = Random.Range(0, availableSeats.Count);
|
||||||
|
AssignSeatToNpc(availableSeats[randomIndex]);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
// 30% 확률: 모든 좌석 중에서 랜덤 선택
|
||||||
|
var allSeats = new List<Seat>();
|
||||||
|
foreach (var table in tables)
|
||||||
|
{
|
||||||
|
allSeats.AddRange(table.SeatPoints);
|
||||||
|
}
|
||||||
|
|
||||||
|
if (allSeats.Count > 0)
|
||||||
|
{
|
||||||
|
var randomIndex = Random.Range(0, allSeats.Count);
|
||||||
|
AssignSeatToNpc(allSeats[randomIndex]);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user