Units with FIGHT FLEE|NOT get -1 in tactics (implementation bug fixed)
This commit is contained in:
Enno Rehling 2006-03-26 09:36:55 +00:00
parent a4f3784cb3
commit a04cb3efbd
3 changed files with 16 additions and 5 deletions

View File

@ -96,7 +96,7 @@ boolean nobattledebug = false;
/* globals */
static int obs_count = 0;
#define TACTICS_MALUS
#define TACTICS_MALUS 1
#undef MAGIC_TURNS
#define MINSPELLRANGE 1
@ -3075,11 +3075,12 @@ make_fighter(battle * b, unit * u, side * s1, boolean attack)
/* Schauen, wie gut wir in Taktik sind. */
if (t > 0 && u->race == new_race[RC_INSECT])
t -= 1 - (int) log10(fig->side->size[SUM_ROW]);
if (t > 0 && get_unitrow(fig) == FIGHT_ROW)
if (t > 0 && statusrow(fig->status) == FIGHT_ROW)
t += 1;
#ifdef TACTICS_MALUS
if (t > 0 && get_unitrow(fig) > BEHIND_ROW)
t -= 1;
if (t > 0 && statusrow(fig->status) > BEHIND_ROW) {
t -= TACTICS_MALUS;
}
#endif
#ifdef TACTICS_RANDOM
if (t > 0) {

View File

@ -84,6 +84,16 @@ Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "gmtool", "eressea\gmtool.vc
{330712B5-8B27-4B17-B3CF-7A02CC0F93C3} = {330712B5-8B27-4B17-B3CF-7A02CC0F93C3}
{4C837BEC-A428-4287-84B3-8F8F9DE7FA00} = {4C837BEC-A428-4287-84B3-8F8F9DE7FA00}
EndProjectSection
ProjectSection(ProjectDependencies) = postProject
{C14E3D2B-8189-4570-A4E3-9010C873E4FD} = {C14E3D2B-8189-4570-A4E3-9010C873E4FD}
{EF495253-2EEC-4F83-B6C0-D651F88B2198} = {EF495253-2EEC-4F83-B6C0-D651F88B2198}
{1D80D05F-BCF5-4971-8F06-D9581FD3B1F4} = {1D80D05F-BCF5-4971-8F06-D9581FD3B1F4}
{601CF164-F483-4DE7-8014-64BDD30680B5} = {601CF164-F483-4DE7-8014-64BDD30680B5}
{EDB0DE67-8215-4AF7-ACA1-F23CB11FF211} = {EDB0DE67-8215-4AF7-ACA1-F23CB11FF211}
{0EE778AB-8445-40DB-8F65-6BE378A91B97} = {0EE778AB-8445-40DB-8F65-6BE378A91B97}
{330712B5-8B27-4B17-B3CF-7A02CC0F93C3} = {330712B5-8B27-4B17-B3CF-7A02CC0F93C3}
{4C837BEC-A428-4287-84B3-8F8F9DE7FA00} = {4C837BEC-A428-4287-84B3-8F8F9DE7FA00}
EndProjectSection
EndProject
Global
GlobalSection(SolutionConfiguration) = preSolution

View File

@ -847,7 +847,7 @@ handlekey(state * st, int c)
/* !! intentional fall-through !! */
case 'T':
statusline(st->wnd_status->handle, "untag-"+(invert?0:2));
doupdate(); // st->wnd_status->handle
doupdate();
findmode = getch();
if (findmode=='n') { /* none */
int i;