- Fixed: The smartaim logic was incorrect. Also added another mode: Autoaim only

at monsters.


SVN r415 (trunk)
This commit is contained in:
Christoph Oelckers 2006-12-16 16:34:39 +00:00
parent 693bf96cb3
commit e9c68df94e
4 changed files with 95 additions and 86 deletions

View file

@ -1,4 +1,6 @@
December 16, 2006 (Changes by Graf Zahl) December 16, 2006 (Changes by Graf Zahl)
- Fixed: The smartaim logic was incorrect. Also added another mode: Autoaim only
at monsters.
- Merged FActorInfo::FindStateExact and FActorInfo::FindState into one function - Merged FActorInfo::FindStateExact and FActorInfo::FindState into one function
because the differences are only minimal. because the differences are only minimal.
- Removed all the varargs FindState functions because they aren't really needed. - Removed all the varargs FindState functions because they aren't really needed.

View file

@ -925,10 +925,11 @@ CUSTOM_CVAR (Bool, vid_tft, false, CVAR_ARCHIVE|CVAR_GLOBALCONFIG)
* Gameplay Options (dmflags) Menu * Gameplay Options (dmflags) Menu
* *
*=======================================*/ *=======================================*/
value_t SmartAim[3] = { value_t SmartAim[4] = {
{ 0.0, "Off" }, { 0.0, "Off" },
{ 1.0, "On" }, { 1.0, "On" },
{ 2.0, "Never friends" } { 2.0, "Never friends" },
{ 3.0, "Only monsters" }
}; };
value_t FallingDM[4] = { value_t FallingDM[4] = {

View file

@ -2608,17 +2608,23 @@ bool PTR_AimTraverse (intercept_t* in)
{ {
// try to be a little smarter about what to aim at! // try to be a little smarter about what to aim at!
// In particular avoid autoaiming at friends amd barrels. // In particular avoid autoaiming at friends amd barrels.
if (th->IsFriend(shootthing) && sv_smartaim != 2) if (th->IsFriend(shootthing))
{ {
// friends don't aim at friends (except players), at least not first if (sv_smartaim < 2)
aim.thing_friend=th; {
aim.pitch_friend=thingpitch; // friends don't aim at friends (except players), at least not first
aim.thing_friend=th;
aim.pitch_friend=thingpitch;
}
} }
else if (!(th->flags3&MF3_ISMONSTER) ) else if (!(th->flags3&MF3_ISMONSTER) )
{ {
// don't autoaim at barrels and other shootable stuff unless no monsters have been found if (sv_smartaim < 3)
aim.thing_other=th; {
aim.pitch_other=thingpitch; // don't autoaim at barrels and other shootable stuff unless no monsters have been found
aim.thing_other=th;
aim.pitch_other=thingpitch;
}
} }
else else
{ {

View file

@ -1,7 +1,7 @@
<?xml version="1.0" encoding="Windows-1252"?> <?xml version="1.0" encoding="Windows-1252"?>
<VisualStudioProject <VisualStudioProject
ProjectType="Visual C++" ProjectType="Visual C++"
Version="8.00" Version="8,00"
Name="updaterevision" Name="updaterevision"
ProjectGUID="{6077B7D6-349F-4077-B552-3BC302EF5859}" ProjectGUID="{6077B7D6-349F-4077-B552-3BC302EF5859}"
RootNamespace="updaterevision" RootNamespace="updaterevision"
@ -95,82 +95,6 @@
Name="VCPostBuildEventTool" Name="VCPostBuildEventTool"
/> />
</Configuration> </Configuration>
<Configuration
Name="Debug|x64"
OutputDirectory="$(SolutionDir)$(PlatformName)\$(ConfigurationName)"
IntermediateDirectory="$(PlatformName)\$(ConfigurationName)"
ConfigurationType="1"
CharacterSet="1"
>
<Tool
Name="VCPreBuildEventTool"
/>
<Tool
Name="VCCustomBuildTool"
/>
<Tool
Name="VCXMLDataGeneratorTool"
/>
<Tool
Name="VCWebServiceProxyGeneratorTool"
/>
<Tool
Name="VCMIDLTool"
TargetEnvironment="3"
/>
<Tool
Name="VCCLCompilerTool"
Optimization="0"
PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
MinimalRebuild="true"
BasicRuntimeChecks="3"
RuntimeLibrary="3"
UsePrecompiledHeader="0"
WarningLevel="3"
Detect64BitPortabilityProblems="true"
DebugInformationFormat="3"
/>
<Tool
Name="VCManagedResourceCompilerTool"
/>
<Tool
Name="VCResourceCompilerTool"
/>
<Tool
Name="VCPreLinkEventTool"
/>
<Tool
Name="VCLinkerTool"
LinkIncremental="2"
GenerateDebugInformation="true"
SubSystem="1"
TargetMachine="17"
/>
<Tool
Name="VCALinkTool"
/>
<Tool
Name="VCManifestTool"
/>
<Tool
Name="VCXDCMakeTool"
/>
<Tool
Name="VCBscMakeTool"
/>
<Tool
Name="VCFxCopTool"
/>
<Tool
Name="VCAppVerifierTool"
/>
<Tool
Name="VCWebDeploymentTool"
/>
<Tool
Name="VCPostBuildEventTool"
/>
</Configuration>
<Configuration <Configuration
Name="Release|Win32" Name="Release|Win32"
OutputDirectory="$(SolutionDir)$(ConfigurationName)" OutputDirectory="$(SolutionDir)$(ConfigurationName)"
@ -248,6 +172,82 @@
Name="VCPostBuildEventTool" Name="VCPostBuildEventTool"
/> />
</Configuration> </Configuration>
<Configuration
Name="Debug|x64"
OutputDirectory="$(SolutionDir)$(PlatformName)\$(ConfigurationName)"
IntermediateDirectory="$(PlatformName)\$(ConfigurationName)"
ConfigurationType="1"
CharacterSet="1"
>
<Tool
Name="VCPreBuildEventTool"
/>
<Tool
Name="VCCustomBuildTool"
/>
<Tool
Name="VCXMLDataGeneratorTool"
/>
<Tool
Name="VCWebServiceProxyGeneratorTool"
/>
<Tool
Name="VCMIDLTool"
TargetEnvironment="3"
/>
<Tool
Name="VCCLCompilerTool"
Optimization="0"
PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
MinimalRebuild="true"
BasicRuntimeChecks="3"
RuntimeLibrary="3"
UsePrecompiledHeader="0"
WarningLevel="3"
Detect64BitPortabilityProblems="true"
DebugInformationFormat="3"
/>
<Tool
Name="VCManagedResourceCompilerTool"
/>
<Tool
Name="VCResourceCompilerTool"
/>
<Tool
Name="VCPreLinkEventTool"
/>
<Tool
Name="VCLinkerTool"
LinkIncremental="2"
GenerateDebugInformation="true"
SubSystem="1"
TargetMachine="17"
/>
<Tool
Name="VCALinkTool"
/>
<Tool
Name="VCManifestTool"
/>
<Tool
Name="VCXDCMakeTool"
/>
<Tool
Name="VCBscMakeTool"
/>
<Tool
Name="VCFxCopTool"
/>
<Tool
Name="VCAppVerifierTool"
/>
<Tool
Name="VCWebDeploymentTool"
/>
<Tool
Name="VCPostBuildEventTool"
/>
</Configuration>
<Configuration <Configuration
Name="Release|x64" Name="Release|x64"
OutputDirectory="$(SolutionDir)$(PlatformName)\$(ConfigurationName)" OutputDirectory="$(SolutionDir)$(PlatformName)\$(ConfigurationName)"