Dobrý den,
při zavolání metody Move se AI (NPC) posune o jedno políčko, otestuje kolize, o druhé a opět otestuje. Jedná se o stejný test - a pokud dojde ke specifické kolizi, potřebuji okamžitě ukončit metodu Move a zahájit novou hru. Řeším to přes akci. NPC je více a tak v Move používám cyklus. Stačí, aby byl jediný NPC na pozici hráče a musí začít nová hra. Proto se skvěle šikne prázdný return. Jenže kdybych prvně zadal prázdný return a pak až zavolal akci, neprovedla by se. Tak jsem udělal toto:
public static Action Caught
{
get { return caught; }
set { caught = delegate { return; } + value; }
}
...
AI.Caught += NewGame;
Funguje to, jenže jakto, že se neukončí vše, ale zbytek té akce se také provede? (Krom návratu.) Jak jsem psal - nic lepšího jsem si nemohl přát - ale nechápu, proč return neukončí i tu akci...
Děkuji.