view srogue/srogue.vcxproj @ 296:000b1c5b8d63
UltraRogue: fix inventory collision after save and restore.
Inventory letters are based on "identifiers" stored in objects' o_ident
field. Identifiers are allocated by get_ident(), which keeps a list of
objects that have them, to avoid giving the same identifier to multiple
objects.
The list is not stored in the savefile, so after restore, get_ident()
was not aware of existing identifiers. This resulted in picked-up
objects having the same inventory letters as objects restored from the
file.
The restore code now adds all objects with identifiers to the list.
author
John "Elwin" Edwards
date
Mon, 15 Jan 2018 20:20:35 -0500 (2018-01-16)
parents
23d2e2bf812f
children
line source
+ − <?xml version="1.0" encoding="utf-8"?>
+ − <Project DefaultTargets="Build" ToolsVersion="14.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ − <ItemGroup Label="ProjectConfigurations">
+ − <ProjectConfiguration Include="Debug|Win32">
+ − <Configuration>Debug</Configuration>
+ − <Platform>Win32</Platform>
+ − </ProjectConfiguration>
+ − <ProjectConfiguration Include="Release|Win32">
+ − <Configuration>Release</Configuration>
+ − <Platform>Win32</Platform>
+ − </ProjectConfiguration>
+ − <ProjectConfiguration Include="Debug|x64">
+ − <Configuration>Debug</Configuration>
+ − <Platform>x64</Platform>
+ − </ProjectConfiguration>
+ − <ProjectConfiguration Include="Release|x64">
+ − <Configuration>Release</Configuration>
+ − <Platform>x64</Platform>
+ − </ProjectConfiguration>
+ − </ItemGroup>
+ − <PropertyGroup Label="Globals">
+ − <ProjectGuid>{FE28341F-1129-4A66-A170-5486CAEF3464}</ProjectGuid>
+ − <RootNamespace>srogue</RootNamespace>
+ − <WindowsTargetPlatformVersion>8.1</WindowsTargetPlatformVersion>
+ − </PropertyGroup>
+ − <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
+ − <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
+ − <ConfigurationType>Application</ConfigurationType>
+ − <UseDebugLibraries>true</UseDebugLibraries>
+ − <PlatformToolset>v140</PlatformToolset>
+ − <CharacterSet>MultiByte</CharacterSet>
+ − </PropertyGroup>
+ − <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
+ − <ConfigurationType>Application</ConfigurationType>
+ − <UseDebugLibraries>false</UseDebugLibraries>
+ − <PlatformToolset>v140</PlatformToolset>
+ − <WholeProgramOptimization>true</WholeProgramOptimization>
+ − <CharacterSet>MultiByte</CharacterSet>
+ − </PropertyGroup>
+ − <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
+ − <ConfigurationType>Application</ConfigurationType>
+ − <UseDebugLibraries>true</UseDebugLibraries>
+ − <PlatformToolset>v140</PlatformToolset>
+ − <CharacterSet>MultiByte</CharacterSet>
+ − </PropertyGroup>
+ − <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
+ − <ConfigurationType>Application</ConfigurationType>
+ − <UseDebugLibraries>false</UseDebugLibraries>
+ − <PlatformToolset>v140</PlatformToolset>
+ − <WholeProgramOptimization>true</WholeProgramOptimization>
+ − <CharacterSet>MultiByte</CharacterSet>
+ − </PropertyGroup>
+ − <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
+ − <ImportGroup Label="ExtensionSettings">
+ − </ImportGroup>
+ − <ImportGroup Label="Shared">
+ − </ImportGroup>
+ − <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
+ − <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ − </ImportGroup>
+ − <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
+ − <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ − </ImportGroup>
+ − <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
+ − <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ − </ImportGroup>
+ − <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
+ − <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ − </ImportGroup>
+ − <PropertyGroup Label="UserMacros" />
+ − <PropertyGroup />
+ − <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
+ − <ClCompile>
+ − <WarningLevel>Level3</WarningLevel>
+ − <Optimization>Disabled</Optimization>
+ − <SDLCheck>true</SDLCheck>
+ − <AdditionalIncludeDirectories>..\pdcurses</AdditionalIncludeDirectories>
+ − <PreprocessorDefinitions>_CRT_SECURE_NO_WARNINGS;SCOREFILE="srogue.scr";%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ − </ClCompile>
+ − <Link>
+ − <GenerateDebugInformation>true</GenerateDebugInformation>
+ − <AdditionalLibraryDirectories>..\pdcurses</AdditionalLibraryDirectories>
+ − <AdditionalDependencies>pdcurses.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ − </Link>
+ − </ItemDefinitionGroup>
+ − <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
+ − <ClCompile>
+ − <WarningLevel>Level3</WarningLevel>
+ − <Optimization>Disabled</Optimization>
+ − <SDLCheck>true</SDLCheck>
+ − <AdditionalIncludeDirectories>..\pdcurses</AdditionalIncludeDirectories>
+ − <PreprocessorDefinitions>_CRT_SECURE_NO_WARNINGS;SCOREFILE="srogue.scr";LOGFILE="srogue.log";%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ − </ClCompile>
+ − <Link>
+ − <GenerateDebugInformation>true</GenerateDebugInformation>
+ − <AdditionalLibraryDirectories>..\pdcurses</AdditionalLibraryDirectories>
+ − <AdditionalDependencies>pdcurses.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ − </Link>
+ − </ItemDefinitionGroup>
+ − <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
+ − <ClCompile>
+ − <WarningLevel>Level3</WarningLevel>
+ − <Optimization>MaxSpeed</Optimization>
+ − <FunctionLevelLinking>true</FunctionLevelLinking>
+ − <IntrinsicFunctions>true</IntrinsicFunctions>
+ − <SDLCheck>true</SDLCheck>
+ − <PreprocessorDefinitions>_CRT_SECURE_NO_WARNINGS;SCOREFILE="srogue.scr";%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ − <AdditionalIncludeDirectories>..\pdcurses;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
+ − </ClCompile>
+ − <Link>
+ − <GenerateDebugInformation>true</GenerateDebugInformation>
+ − <EnableCOMDATFolding>true</EnableCOMDATFolding>
+ − <OptimizeReferences>true</OptimizeReferences>
+ − <AdditionalLibraryDirectories>..\pdcurses</AdditionalLibraryDirectories>
+ − <AdditionalDependencies>pdcurses.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ − </Link>
+ − </ItemDefinitionGroup>
+ − <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
+ − <ClCompile>
+ − <WarningLevel>Level3</WarningLevel>
+ − <Optimization>MaxSpeed</Optimization>
+ − <FunctionLevelLinking>true</FunctionLevelLinking>
+ − <IntrinsicFunctions>true</IntrinsicFunctions>
+ − <SDLCheck>true</SDLCheck>
+ − <AdditionalIncludeDirectories>..\pdcurses</AdditionalIncludeDirectories>
+ − <PreprocessorDefinitions>_CRT_SECURE_NO_WARNINGS;SCOREFILE="srogue.scr";LOGFILE="srogue.log";%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ − </ClCompile>
+ − <Link>
+ − <GenerateDebugInformation>true</GenerateDebugInformation>
+ − <EnableCOMDATFolding>true</EnableCOMDATFolding>
+ − <OptimizeReferences>true</OptimizeReferences>
+ − <AdditionalLibraryDirectories>..\pdcurses</AdditionalLibraryDirectories>
+ − <AdditionalDependencies>pdcurses.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ − </Link>
+ − </ItemDefinitionGroup>
+ − <ItemGroup>
+ − <ClCompile Include="armor.c" />
+ − <ClCompile Include="chase.c" />
+ − <ClCompile Include="command.c" />
+ − <ClCompile Include="daemon.c" />
+ − <ClCompile Include="daemons.c" />
+ − <ClCompile Include="disply.c" />
+ − <ClCompile Include="encumb.c" />
+ − <ClCompile Include="fight.c" />
+ − <ClCompile Include="global.c" />
+ − <ClCompile Include="init.c" />
+ − <ClCompile Include="io.c" />
+ − <ClCompile Include="list.c" />
+ − <ClCompile Include="main.c" />
+ − <ClCompile Include="mdport.c" />
+ − <ClCompile Include="misc.c" />
+ − <ClCompile Include="monsters.c" />
+ − <ClCompile Include="move.c" />
+ − <ClCompile Include="new_leve.c" />
+ − <ClCompile Include="options.c" />
+ − <ClCompile Include="pack.c" />
+ − <ClCompile Include="passages.c" />
+ − <ClCompile Include="potions.c" />
+ − <ClCompile Include="pstats.c" />
+ − <ClCompile Include="rings.c" />
+ − <ClCompile Include="rip.c" />
+ − <ClCompile Include="rooms.c" />
+ − <ClCompile Include="save.c" />
+ − <ClCompile Include="scrolls.c" />
+ − <ClCompile Include="state.c" />
+ − <ClCompile Include="sticks.c" />
+ − <ClCompile Include="things.c" />
+ − <ClCompile Include="trader.c" />
+ − <ClCompile Include="vers.c" />
+ − <ClCompile Include="weapons.c" />
+ − <ClCompile Include="wizard.c" />
+ − <ClCompile Include="xcrypt.c" />
+ − </ItemGroup>
+ − <ItemGroup>
+ − <ClInclude Include="rogue.h" />
+ − </ItemGroup>
+ − <ItemGroup>
+ − <None Include="rogue.ext" />
+ − </ItemGroup>
+ − <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
+ − <ImportGroup Label="ExtensionTargets">
+ − </ImportGroup>
+ − </Project>