Помощ за бойна система(C# for Unity)
Здравейте, имам нужда от помощ и знам че въпроса ми не е 100% по темата но това е най – близката графа до проблема ми. Бойната система на играта ми е ходова и работи по следният идеологичен принцип:
- Щом играча навлезе във дадена зона около обет със тага „противник“ се инициализира скрипт „боен режим“.
- Една невидима сфера, прикачена към играча като дете която има като роля да пусне Ray cast и да направи боен терен (и минимап в бъдеще).
- Този боен терен трябва да ограничава пространството в което участниците в битката могат да се движат, като се генерира от терена около участниците, не от предварително зададена големина или форма и да има очертания на местата където свършва.
Въпросът ми е как да направя това ограничение да се генерира от терена, вместо от предварително зададени параметри, за да може бойните полета да вървят по енвиромента и да има очертания на местата където свършва. Съвети за оптимизация също ще са полезни.
Малко повече интроспекция какво става след това, която може да е полезна:
- Щом терена се определи скрипта „боен режим“ изключва свободното движение на играча и противниците и вика уникални UI елементи използвани за битката, някои лични за всеки участник а други общи.
- Битките са разделени на рундове по 45 секунди, като кога ще дойде твоят ред се определя от инициативата ти (с висока инициатива можеш да имаш няколко хода в един рунд) и щом дойде твоят ред метъра за рунд спира и те изчаква да свършиш с хода си.
- Движението става на принципа Click to move, което е ограничено в радиус около всеки участник и големината му зависи от тяхната скорост. // Може би ако накарам сферата да изпича терена по който може да се ходи при инициализиране на битката, вместо да е предварително изпечен ще е по – бързо.
- За да се свърже дадена атака се използва mesh collision вместо автоматично прихващане.