Size: a a a

2021 September 04

AK

Andrew Kravchuk in CODE BLOG / C#
Потому что ты сравниваешь разные типы
источник

AK

Andrew Kravchuk in CODE BLOG / C#
Скорее всего
источник

AK

Andrew Kravchuk in CODE BLOG / C#
Если пишешь (С)null, то обе переиенные класса С
источник

АН

Акаткин Николай (ВРН... in CODE BLOG / C#
благодарю
источник

IM

Ivan Morgun in CODE BLOG / C#
Ребят, чет туплю, подскажите.

Есть абстрактный класс AGameState.
Есть много наследников. Типо:
public class InMenu : AGameState
public class InVideoScene : AGameState

Мне в метод прилетает новый стейт:
private IEnumerator SwitchStateEnum(AGameState state)
{
   if (
CurrentState == state) yield break;
   ...
}

Как сделать правильно эту проверку на равенство состояний, если я переключаю состояния, используя new каждый раз?
Типо SwitchState(new InMenu());
источник

IM

Ivan Morgun in CODE BLOG / C#
По идее так надо, не?
if (CurrentState.GetType() == state.GetType()) yield break;
источник

rr

razumovsky r in CODE BLOG / C#
так не понятно
источник

rr

razumovsky r in CODE BLOG / C#
энам у тебя тип значения
источник

rr

razumovsky r in CODE BLOG / C#
метод кароч переименовать
источник

rr

razumovsky r in CODE BLOG / C#
не понятно что это вообще
источник

rr

razumovsky r in CODE BLOG / C#
пишешь свитч енам, а на самом деле проверяешь по ссылке
источник

IM

Ivan Morgun in CODE BLOG / C#
Та при чем там энам. То юнитевские короутины, вопрос в другом
источник

rr

razumovsky r in CODE BLOG / C#
Типо SwitchState(new InMenu());

— оно же всегда будет на фолс
источник

rr

razumovsky r in CODE BLOG / C#
в таком виде
источник

IM

Ivan Morgun in CODE BLOG / C#
Ну так да, это я для примера написал условие в If
источник

IM

Ivan Morgun in CODE BLOG / C#
.
источник

rr

razumovsky r in CODE BLOG / C#
это странно стейты держать типами
источник

rr

razumovsky r in CODE BLOG / C#
почему стейты в типах ?
источник

IM

Ivan Morgun in CODE BLOG / C#
источник

rr

razumovsky r in CODE BLOG / C#
ну в этом случае да, по типу фетчить
источник