Implemented some reborn functions

This commit is contained in:
Ludovic 2017-06-08 11:46:08 +02:00
parent 102978b13c
commit 214692a910
21 changed files with 494 additions and 147 deletions

View file

@ -285,12 +285,12 @@ static float PM_CmdScale( usercmd_t *cmd ) {
PM_GetMove( &fmove, &smove );
max = abs( fmove );
if( abs( smove ) > max ) {
max = abs( smove );
max = fabs( fmove );
if(fabs( smove ) > max ) {
max = fabs( smove );
}
if ( abs( cmd->upmove ) > max ) {
max = abs( cmd->upmove );
if (fabs( cmd->upmove ) > max ) {
max = fabs( cmd->upmove );
}
if ( !max ) {
return 0;

View file

@ -1555,6 +1555,8 @@ Entity::Entity()
m_iNumBlockedPaths = 0;
m_BlockedPaths = NULL;
m_bHintRequiresLookAt = true;
// Misc
m_bBindChilds = false;
}
@ -6806,103 +6808,41 @@ void Entity::SetDepthHack( Event *ev )
}
}
void Entity::SetHintRequireLookAt( Event *ev )
void Entity::ProcessHint(gentity_t* client, bool bShow)
{
// FIXME: stub
STUB();
#if 0
qboolean lookat = ev->GetBoolean( 1 );
hintstring_t * hint_string = NULL;
Player* player = (Player*)client->entity;
for( int i = 0; i < hintstrings.NumObjects(); i++ )
if (client->client != NULL)
{
hintstring_t * index = hintstrings[ i ];
qboolean is_hidden = bShow && (edict->s.renderfx & RF_INVISIBLE);
qboolean can_see = bShow && player->canUse(this, m_bHintRequiresLookAt); //( player->IsTouching( this ) || player->CanSee( this, string->fov, 94 ) == 1 );
if( index->ent_num == entnum )
if (bShow && can_see && !is_hidden && !player->IsDead() && !player->IsSpectator())
{
if( lookat && index->string[ 0 ] == '\0' )
if (sv_reborn->integer)
{
hintstrings.RemoveObject( index );
delete index;
} else {
index->needlookat = lookat;
gi.MSG_SetClient(client - g_entities);
// Send the hint string once
gi.MSG_StartCGM(CGM_HINTSTRING);
gi.MSG_WriteString(m_HintString);
gi.MSG_EndCGM();
}
return;
}
else
{
}
}
}
if( lookat ) {
return;
}
hint_string = new hintstring_t;
hint_string->ent_num = entnum;
hint_string->needlookat = lookat;
hint_string->changed = false;
hintstrings.AddObject( hint_string );
#endif
void Entity::SetHintRequireLookAt( Event *ev )
{
m_bHintRequiresLookAt = ev->GetBoolean(1);
}
void Entity::SetHintString( Event * ev )
{
// FIXME: stub
STUB();
#if 0
str string = ev->GetString( 1 );
hintstring_t * hint_string = NULL;
qboolean isInvalid = !string;
if( !sv_reborn->integer && !isInvalid ) {
string.replace( "&&1", "Your use key" );
}
for( int i = 0; i < hintstrings.NumObjects(); i++ )
{
hintstring_t * index = hintstrings[ i ];
if( index->ent_num == entnum )
{
if( isInvalid )
{
index->string[ 0 ] = '\0';
ProcessHint( index, true );
if( !index->needlookat ) {
return;
}
hintstrings.RemoveObject( index );
delete index;
return;
}
if( index->string[ 0 ] != '\0' ) {
index->changed = true;
}
strcpy( index->string, string );
return;
}
}
if( isInvalid ) {
return;
}
hint_string = new hintstring_t;
hint_string->ent_num = entnum;
hint_string->needlookat = true;
hint_string->changed = false;
strcpy( hint_string->string, string );
strcpy( hint_string->previous, string );
hintstrings.AddObject( hint_string );
#endif
m_HintString = ev->GetString(1);
}
void Entity::SetShader

View file

@ -270,7 +270,9 @@ public:
// miscellaneous
qboolean m_bBindChilds;
bool m_bHintRequiresLookAt;
str m_HintString;
Entity();
virtual ~Entity();
@ -576,6 +578,7 @@ public:
virtual qboolean BlocksAIMovement( void ) const;
virtual qboolean AIDontFace( void ) const;
void ProcessHint(gentity_t* client, bool bShow);
void GetZone( Event *ev );
void IsInZone( Event *ev );
void SetDepthHack( Event *ev );

View file

@ -2534,6 +2534,7 @@ Event EV_VehiclePoint_SetSpawnFlags
CLASS_DECLARATION( Waypoint, VehiclePoint, NULL )
{
{ &EV_VehiclePoint_SetSpawnFlags, &VehiclePoint::SetSpawnFlags },
{ NULL, NULL }
};
void VehiclePoint::SetSpawnFlags

View file

@ -4156,6 +4156,8 @@ Player::Player()
m_iNumRightLegShots = 0;
m_iNumTorsoShots = 0;
m_bShowingHint = false;
m_sPerferredWeaponOverride = "";
SetTargetName( "player" );
@ -4346,6 +4348,8 @@ void Player::InitClient( void )
client->ps.commandTime = level.svsTime;
gi.SendServerCommand( client - game.clients, "stopwatch 0 0" );
m_bShowingHint = false;
}
void Player::InitState
@ -6450,6 +6454,37 @@ void Player::ClientMove
pmove_t pm;
Vector move;
int touch[MAX_GENTITIES];
int num = getUseableEntities(touch, MAX_GENTITIES, true);
bool bHintShown = false;
for (int i = 0; i < num; i++)
{
Entity* entity = g_entities[touch[i]].entity;
if (entity && entity->m_HintString.length())
{
entity->ProcessHint(edict, true);
bHintShown = true;
m_bShowingHint = true;
break;
}
}
if (!bHintShown && m_bShowingHint)
{
m_bShowingHint = false;
if (sv_reborn->integer)
{
gi.MSG_SetClient(edict - g_entities);
// Send the hint string once
gi.MSG_StartCGM(CGM_HINTSTRING);
gi.MSG_WriteString("");
gi.MSG_EndCGM();
}
}
oldorigin = origin;
client->ps.pm_type = GetMovePlayerMoveType();

View file

@ -281,6 +281,8 @@ private:
int m_iInfoClientHealth;
float m_fInfoClientTime;
bool m_bShowingHint;
public:
int m_iNumObjectives;
int m_iObjectivesCompleted;

View file

@ -85,6 +85,8 @@ ScriptEvent scriptedEvents[ SE_MAX ];
MEM_BlockAlloc< ScriptThread, MEM_BLOCKSIZE > ScriptThread_allocator;
FlagList flags;
CLASS_DECLARATION( Class, ScriptEvent, NULL )
{
{ NULL, NULL }
@ -4450,7 +4452,18 @@ void ScriptThread::FlagClear
)
{
// FIXME: TODO
str name;
Flag *flag;
name = ev->GetString(1);
flag = flags.FindFlag(name);
if (flag == NULL) {
ScriptError("Invalid flag '%s'\n", name.c_str());
}
delete flag;
}
void ScriptThread::FlagInit
@ -4459,7 +4472,22 @@ void ScriptThread::FlagInit
)
{
// FIXME: TODO
str name;
Flag *flag;
name = ev->GetString(1);
flag = flags.FindFlag(name);
if (flag != NULL)
{
flag->Reset();
return;
}
flag = new Flag;
flag->bSignaled = false;
strcpy(flag->flagName, name);
}
void ScriptThread::FlagSet
@ -4468,7 +4496,18 @@ void ScriptThread::FlagSet
)
{
// FIXME: TODO
str name;
Flag *flag;
name = ev->GetString(1);
flag = flags.FindFlag(name);
if (flag == NULL) {
ScriptError("Invalid flag '%s'.\n", name.c_str());
}
flag->Set();
}
void ScriptThread::FlagWait
@ -4477,7 +4516,18 @@ void ScriptThread::FlagWait
)
{
// FIXME: TODO
str name;
Flag *flag;
name = ev->GetString(1);
flag = flags.FindFlag(name);
if (flag == NULL) {
ScriptError("Invalid flag '%s'.\n", name.c_str());
}
flag->Wait(this);
}
void ScriptThread::Lock
@ -5449,7 +5499,7 @@ void ScriptThread::Abs
)
{
ev->AddFloat( abs( ev->GetFloat( 1 ) ) );
ev->AddFloat(fabs( ev->GetFloat( 1 ) ) );
}
void ScriptThread::ServerStufftext
@ -9308,4 +9358,81 @@ void LightStyleClass::Archive( Archiver &arc )
}
}
Flag *FlagList::FindFlag(const char * name)
{
for (int i = 0; i < m_Flags.NumObjects(); i++)
{
Flag * index = m_Flags[i];
// found the flag
if (strcmp(index->flagName, name) == 0) {
return index;
}
}
return NULL;
}
void FlagList::AddFlag(Flag *flag)
{
m_Flags.AddObject(flag);
}
void FlagList::RemoveFlag(Flag *flag)
{
m_Flags.RemoveObject(flag);
}
Flag::Flag()
{
flags.AddFlag(this);
}
Flag::~Flag()
{
flags.RemoveFlag(this);
m_WaitList.FreeObjectList();
}
void Flag::Reset()
{
bSignaled = false;
}
void Flag::Set()
{
// Don't signal again
if (bSignaled) {
return;
}
bSignaled = true;
for (int i = 0; i < m_WaitList.NumObjects(); i++)
{
ScriptVM *Thread = m_WaitList[i];
if (Thread->state != STATE_DESTROYED && Thread->m_Thread != NULL) {
Thread->m_Thread->StoppedWaitFor(STRING_EMPTY, false);
}
}
// Clear the list
m_WaitList.FreeObjectList();
}
void Flag::Wait(ScriptThread *Thread)
{
// Don't wait if it's signaled
if (bSignaled) {
return;
}
Thread->StartedWaitFor();
m_WaitList.AddObject(Thread->m_ScriptVM);
}
#endif

View file

@ -586,4 +586,39 @@ public:
void Unlock( void );
};
class Flag
{
public:
char flagName[MAX_QPATH];
qboolean bSignaled;
private:
Container< ScriptVM * > m_WaitList;
public:
Flag();
~Flag();
void Reset(void);
void Set(void);
void Wait(ScriptThread *Thread);
};
class FlagList
{
friend class Flag;
private:
void AddFlag(Flag *flag);
void RemoveFlag(Flag *flag);
public:
Container< Flag * > m_Flags;
Flag *FindFlag(const char * name);
};
extern FlagList flags;
#endif /* scriptmaster.h */

View file

@ -546,6 +546,83 @@ void BoneGetFrames( skelHeaderGame_t *skelmodel, skelAnimDataGameHeader_t *animD
}
}
void SkeletorGetAnimFrame2(skelHeaderGame_t *skelmodel, skelChannelList_c *boneList, skelBoneCache_t *bones, skelAnimStoreFrameList_c *frameList, float *radius, vec3_t *mins, vec3_t *maxes)
{
int numBones;
skelBone_Base **bone;
int i;
skelAnimFrame_t *newFrame;
numBones = skelmodel->numBones;
bone = (skelBone_Base **)Skel_Alloc(sizeof(skelBone_Base *) * numBones);
memset(bone, 0, sizeof(skelBone_Base *) * numBones);
SkeletorLoadBonesFromBuffer(boneList, skelmodel, bone);
for (i = 0; i < numBones; i++)
{
bone[i]->m_controller = NULL;
bone[i]->m_isDirty = true;
}
newFrame = (skelAnimFrame_t *)Skel_Alloc(sizeof(skelAnimFrame_t) + sizeof(SkelMat4) * numBones);
newFrame->radius = 0;
newFrame->bounds[0] = SkelVec3();
newFrame->bounds[1] = SkelVec3();
for (i = 0; i < numBones; i++)
{
//skelBone_Base *Parent = bone[ i ]->Parent();
//bone[ i ]->SetParent( &skeletor_c::m_worldBone );
newFrame->bones[i] = bone[i]->GetTransform(frameList);
//bone[ i ]->SetParent( Parent );
}
for (i = 0; i < numBones; i++)
{
VectorCopy(newFrame->bones[i][3], bones[i].offset);
bones[i].matrix[0][0] = newFrame->bones[i][0][0];
bones[i].matrix[0][1] = newFrame->bones[i][0][1];
bones[i].matrix[0][2] = newFrame->bones[i][0][2];
bones[i].matrix[0][3] = 0;
bones[i].matrix[1][0] = newFrame->bones[i][1][0];
bones[i].matrix[1][1] = newFrame->bones[i][1][1];
bones[i].matrix[1][2] = newFrame->bones[i][1][2];
bones[i].matrix[1][3] = 0;
bones[i].matrix[2][0] = newFrame->bones[i][2][0];
bones[i].matrix[2][1] = newFrame->bones[i][2][1];
bones[i].matrix[2][2] = newFrame->bones[i][2][2];
bones[i].matrix[2][3] = 0;
}
for (i = 0; i < numBones; i++)
{
delete bone[i];
}
Skel_Free(bone);
if (radius) {
*radius = newFrame->radius;
}
if (mins || maxes)
{
for (i = 0; i < 3; i++)
{
if (mins) {
(*mins)[i] = newFrame->bounds[0][i];
}
if (maxes) {
(*maxes)[i] = newFrame->bounds[1][i];
}
}
}
Skel_Free(newFrame);
}
void SkeletorGetAnimFrame( skelHeaderGame_t *skelmodel, skelAnimDataGameHeader_t *animData, skelChannelList_c *boneList, skelBoneCache_t *bones, int frame, float *radius, vec3_t *mins, vec3_t *maxes )
{
int numBones;
@ -555,11 +632,23 @@ void SkeletorGetAnimFrame( skelHeaderGame_t *skelmodel, skelAnimDataGameHeader_t
skelAnimFrame_t *newFrame;
frameList.actionWeight = animData ? 1.0 : 0;
frameList.numMovementFrames = 0;
frameList.numActionFrames = 1;
frameList.m_blendInfo[ 32 ].weight = 1.0;
frameList.m_blendInfo[ 32 ].pAnimationData = animData;
frameList.m_blendInfo[ 32 ].frame = frame;
if (!animData->bHasDelta)
{
frameList.numMovementFrames = 0;
frameList.numActionFrames = 1;
frameList.m_blendInfo[32].weight = 1.0;
frameList.m_blendInfo[32].pAnimationData = animData;
frameList.m_blendInfo[32].frame = frame;
}
else
{
frameList.numMovementFrames = 1;
frameList.numActionFrames = 0;
frameList.m_blendInfo[0].weight = 1.0;
frameList.m_blendInfo[0].pAnimationData = animData;
frameList.m_blendInfo[0].frame = frame;
}
numBones = skelmodel->numBones;
bone = ( skelBone_Base ** )Skel_Alloc( sizeof( skelBone_Base * ) * numBones );
@ -648,6 +737,104 @@ void SkeletorGetAnimFrame( skelHeaderGame_t *skelmodel, skelAnimDataGameHeader_t
Skel_Free( newFrame );
}
void TIKI_GetSkelAnimFrameInternal2(dtiki_t *tiki, skelBoneCache_t *bones, skelAnimStoreFrameList_c* frameList, float *radius, vec3_t *mins, vec3_t *maxes)
{
//int boneNum;
int numBones;
skelBone_Base **bone;
int i;
skelAnimFrame_t *newFrame;
//int realAnimIndex;
//skanBlendInfo *frame;
skelHeaderGame_t *skelmodel;
numBones = tiki->m_boneList.NumChannels();
bone = (skelBone_Base **)Skel_Alloc(sizeof(skelBone_Base *) * numBones);
memset(bone, 0, sizeof(skelBone_Base *) * numBones);
for (i = 0; i < tiki->numMeshes; i++)
{
skelmodel = TIKI_GetSkel(tiki->mesh[i]);
SkeletorLoadBonesFromBuffer(&tiki->m_boneList, skelmodel, bone);
}
for (i = 0; i < numBones; i++)
{
bone[i]->m_controller = NULL;
bone[i]->m_isDirty = true;
}
newFrame = (skelAnimFrame_t *)Skel_Alloc(sizeof(skelAnimFrame_t) + sizeof(SkelMat4) * numBones);
/*
if (animData)
{
if (animData->m_frame)
{
newFrame->radius = animData->m_frame->radius;
}
else
{
newFrame->radius = 0;
}
newFrame->bounds[0] = animData->bounds[0];
newFrame->bounds[1] = animData->bounds[1];
}
else
*/
{
newFrame->radius = 0;
newFrame->bounds[0] = SkelVec3();
newFrame->bounds[1] = SkelVec3();
}
for (i = 0; i < numBones; i++)
{
newFrame->bones[i] = bone[i]->GetTransform(frameList);
}
for (i = 0; i < numBones; i++)
{
delete bone[i];
}
Skel_Free(bone);
for (i = 0; i < numBones; i++)
{
VectorCopy(newFrame->bones[i][3], bones[i].offset);
bones[i].matrix[0][0] = newFrame->bones[i][0][0];
bones[i].matrix[0][1] = newFrame->bones[i][0][1];
bones[i].matrix[0][2] = newFrame->bones[i][0][2];
bones[i].matrix[0][3] = 0;
bones[i].matrix[1][0] = newFrame->bones[i][1][0];
bones[i].matrix[1][1] = newFrame->bones[i][1][1];
bones[i].matrix[1][2] = newFrame->bones[i][1][2];
bones[i].matrix[1][3] = 0;
bones[i].matrix[2][0] = newFrame->bones[i][2][0];
bones[i].matrix[2][1] = newFrame->bones[i][2][1];
bones[i].matrix[2][2] = newFrame->bones[i][2][2];
bones[i].matrix[2][3] = 0;
}
if (radius) {
*radius = newFrame->radius;
}
if (mins && maxes)
{
for (i = 0; i < 3; i++)
{
(*mins)[i] = newFrame->bounds[0][i];
(*maxes)[i] = newFrame->bounds[1][i];
}
}
Skel_Free(newFrame);
}
void TIKI_GetSkelAnimFrameInternal( dtiki_t *tiki, skelBoneCache_t *bones, skelAnimDataGameHeader_t *animData, int frame, float *radius, vec3_t *mins, vec3_t *maxes )
{
//int boneNum;
@ -661,11 +848,22 @@ void TIKI_GetSkelAnimFrameInternal( dtiki_t *tiki, skelBoneCache_t *bones, skelA
skelHeaderGame_t *skelmodel;
frameList.actionWeight = animData ? 1.0 : 0;
frameList.numMovementFrames = 0;
frameList.numActionFrames = 1;
frameList.m_blendInfo[ 32 ].weight = 1.0;
frameList.m_blendInfo[ 32 ].pAnimationData = animData;
frameList.m_blendInfo[ 32 ].frame = frame;
if (!animData || !animData->bHasDelta)
{
frameList.numMovementFrames = 0;
frameList.numActionFrames = 1;
frameList.m_blendInfo[32].weight = 1.0;
frameList.m_blendInfo[32].pAnimationData = animData;
frameList.m_blendInfo[32].frame = frame;
}
else
{
frameList.numMovementFrames = 1;
frameList.numActionFrames = 0;
frameList.m_blendInfo[0].weight = 1.0;
frameList.m_blendInfo[0].pAnimationData = animData;
frameList.m_blendInfo[0].frame = frame;
}
numBones = tiki->m_boneList.NumChannels();
bone = ( skelBone_Base ** )Skel_Alloc( sizeof( skelBone_Base * ) * numBones );

View file

@ -150,6 +150,8 @@ void ConvertToFKPositionName( const char *boneName, char *rotChannelName );
void AddToBounds( SkelVec3 *bounds, SkelVec3 *newBounds );
#ifdef __cplusplus
void BoneGetFrames( skelHeaderGame_t *skelmodel, skelAnimDataGameHeader_t *animData, skelChannelList_c *boneList, int boneNum, Container< skanAnimFrame >& outFrames );
void TIKI_GetSkelAnimFrameInternal2(dtiki_t *tiki, skelBoneCache_t *bones, skelAnimStoreFrameList_c *frameList, float *radius, vec3_t *mins, vec3_t *maxes);
void SkeletorGetAnimFrame2(skelHeaderGame_t *skelmodel, skelChannelList_c *boneList, skelBoneCache_t *bones, skelAnimStoreFrameList_c *frameList, float *radius, vec3_t *mins, vec3_t *maxes);
#endif
void SkeletorGetAnimFrame( skelHeaderGame_t *skelmodel, skelAnimDataGameHeader_t *animData, skelChannelList_c *boneList, skelBoneCache_t *bones, int frame, float *radius, vec3_t *mins, vec3_t *maxes );
void TIKI_GetSkelAnimFrame( dtiki_t *tiki, skelBoneCache_t *bones, float *radius, vec3_t *mins, vec3_t *maxes );

View file

@ -305,8 +305,12 @@ void TIKI_FreeAll()
tiki_loading = true;
if( skelcache )
{
for( i = 0; i < cache_maxskel; i++ ) {
TIKI_FreeSkel( i );
for( i = 0; i < cache_maxskel; i++ )
{
if (skelcache->skel)
{
TIKI_FreeSkel(i);
}
}
}
}

View file

@ -914,6 +914,9 @@ void TIKI_FreeSkelCache( skelcache_t *cache )
TIKI_Free( cache->skel );
cache->skel = NULL;
cache->size = 0;
cache->path[0] = 0;
cache->numuses = 0;
}
/*

View file

@ -1,5 +1,5 @@
<?xml version="1.0" encoding="utf-8"?>
<Project DefaultTargets="Build" ToolsVersion="12.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<Project DefaultTargets="Build" ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ItemGroup Label="ProjectConfigurations">
<ProjectConfiguration Include="Debug|Win32">
<Configuration>Debug</Configuration>
@ -66,26 +66,26 @@
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
<ConfigurationType>Application</ConfigurationType>
<UseDebugLibraries>true</UseDebugLibraries>
<PlatformToolset>v120</PlatformToolset>
<PlatformToolset>v141</PlatformToolset>
<CharacterSet>MultiByte</CharacterSet>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
<ConfigurationType>Application</ConfigurationType>
<UseDebugLibraries>true</UseDebugLibraries>
<PlatformToolset>v120</PlatformToolset>
<PlatformToolset>v141</PlatformToolset>
<CharacterSet>MultiByte</CharacterSet>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
<ConfigurationType>Application</ConfigurationType>
<UseDebugLibraries>false</UseDebugLibraries>
<PlatformToolset>v120</PlatformToolset>
<PlatformToolset>v141</PlatformToolset>
<WholeProgramOptimization>true</WholeProgramOptimization>
<CharacterSet>MultiByte</CharacterSet>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
<ConfigurationType>Application</ConfigurationType>
<UseDebugLibraries>false</UseDebugLibraries>
<PlatformToolset>v120</PlatformToolset>
<PlatformToolset>v141</PlatformToolset>
<WholeProgramOptimization>true</WholeProgramOptimization>
<CharacterSet>MultiByte</CharacterSet>
</PropertyGroup>

View file

@ -1,5 +1,5 @@
<?xml version="1.0" encoding="utf-8"?>
<Project DefaultTargets="Build" ToolsVersion="12.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<Project DefaultTargets="Build" ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ItemGroup Label="ProjectConfigurations">
<ProjectConfiguration Include="Debug|Win32">
<Configuration>Debug</Configuration>
@ -28,27 +28,27 @@
<ConfigurationType>DynamicLibrary</ConfigurationType>
<UseDebugLibraries>true</UseDebugLibraries>
<CharacterSet>Unicode</CharacterSet>
<PlatformToolset>v120_xp</PlatformToolset>
<PlatformToolset>v141_xp</PlatformToolset>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
<ConfigurationType>DynamicLibrary</ConfigurationType>
<UseDebugLibraries>true</UseDebugLibraries>
<CharacterSet>Unicode</CharacterSet>
<PlatformToolset>v120_xp</PlatformToolset>
<PlatformToolset>v141_xp</PlatformToolset>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
<ConfigurationType>DynamicLibrary</ConfigurationType>
<UseDebugLibraries>false</UseDebugLibraries>
<WholeProgramOptimization>true</WholeProgramOptimization>
<CharacterSet>Unicode</CharacterSet>
<PlatformToolset>v120_xp</PlatformToolset>
<PlatformToolset>v141_xp</PlatformToolset>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
<ConfigurationType>DynamicLibrary</ConfigurationType>
<UseDebugLibraries>false</UseDebugLibraries>
<WholeProgramOptimization>true</WholeProgramOptimization>
<CharacterSet>Unicode</CharacterSet>
<PlatformToolset>v120_xp</PlatformToolset>
<PlatformToolset>v141_xp</PlatformToolset>
</PropertyGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
<ImportGroup Label="ExtensionSettings">

View file

@ -1,5 +1,5 @@
<?xml version="1.0" encoding="utf-8"?>
<Project DefaultTargets="Build" ToolsVersion="12.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<Project DefaultTargets="Build" ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ItemGroup Label="ProjectConfigurations">
<ProjectConfiguration Include="Debug|Win32">
<Configuration>Debug</Configuration>
@ -19,13 +19,13 @@
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
<ConfigurationType>DynamicLibrary</ConfigurationType>
<UseDebugLibraries>true</UseDebugLibraries>
<PlatformToolset>v120_xp</PlatformToolset>
<PlatformToolset>v141_xp</PlatformToolset>
<CharacterSet>MultiByte</CharacterSet>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
<ConfigurationType>DynamicLibrary</ConfigurationType>
<UseDebugLibraries>false</UseDebugLibraries>
<PlatformToolset>v120_xp</PlatformToolset>
<PlatformToolset>v141_xp</PlatformToolset>
<WholeProgramOptimization>true</WholeProgramOptimization>
<CharacterSet>MultiByte</CharacterSet>
</PropertyGroup>

View file

@ -1,5 +1,5 @@
<?xml version="1.0" encoding="utf-8"?>
<Project DefaultTargets="Build" ToolsVersion="12.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<Project DefaultTargets="Build" ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ItemGroup Label="ProjectConfigurations">
<ProjectConfiguration Include="Debug|Win32">
<Configuration>Debug</Configuration>
@ -29,27 +29,27 @@
<ConfigurationType>DynamicLibrary</ConfigurationType>
<UseDebugLibraries>true</UseDebugLibraries>
<CharacterSet>Unicode</CharacterSet>
<PlatformToolset>v120_xp</PlatformToolset>
<PlatformToolset>v141_xp</PlatformToolset>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
<ConfigurationType>DynamicLibrary</ConfigurationType>
<UseDebugLibraries>true</UseDebugLibraries>
<CharacterSet>Unicode</CharacterSet>
<PlatformToolset>v120_xp</PlatformToolset>
<PlatformToolset>v141_xp</PlatformToolset>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
<ConfigurationType>DynamicLibrary</ConfigurationType>
<UseDebugLibraries>false</UseDebugLibraries>
<WholeProgramOptimization>true</WholeProgramOptimization>
<CharacterSet>Unicode</CharacterSet>
<PlatformToolset>v120_xp</PlatformToolset>
<PlatformToolset>v141_xp</PlatformToolset>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
<ConfigurationType>DynamicLibrary</ConfigurationType>
<UseDebugLibraries>false</UseDebugLibraries>
<WholeProgramOptimization>true</WholeProgramOptimization>
<CharacterSet>Unicode</CharacterSet>
<PlatformToolset>v120_xp</PlatformToolset>
<PlatformToolset>v141_xp</PlatformToolset>
</PropertyGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
<ImportGroup Label="ExtensionSettings">

View file

@ -1,5 +1,5 @@
<?xml version="1.0" encoding="utf-8"?>
<Project DefaultTargets="Build" ToolsVersion="12.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<Project DefaultTargets="Build" ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ItemGroup Label="ProjectConfigurations">
<ProjectConfiguration Include="Debug|Win32">
<Configuration>Debug</Configuration>
@ -28,27 +28,27 @@
<ConfigurationType>Application</ConfigurationType>
<UseDebugLibraries>true</UseDebugLibraries>
<CharacterSet>MultiByte</CharacterSet>
<PlatformToolset>v120_xp</PlatformToolset>
<PlatformToolset>v141_xp</PlatformToolset>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
<ConfigurationType>Application</ConfigurationType>
<UseDebugLibraries>true</UseDebugLibraries>
<CharacterSet>MultiByte</CharacterSet>
<PlatformToolset>v120_xp</PlatformToolset>
<PlatformToolset>v141_xp</PlatformToolset>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
<ConfigurationType>Application</ConfigurationType>
<UseDebugLibraries>false</UseDebugLibraries>
<WholeProgramOptimization>true</WholeProgramOptimization>
<CharacterSet>MultiByte</CharacterSet>
<PlatformToolset>v120_xp</PlatformToolset>
<PlatformToolset>v141_xp</PlatformToolset>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
<ConfigurationType>Application</ConfigurationType>
<UseDebugLibraries>false</UseDebugLibraries>
<WholeProgramOptimization>true</WholeProgramOptimization>
<CharacterSet>MultiByte</CharacterSet>
<PlatformToolset>v120_xp</PlatformToolset>
<PlatformToolset>v141_xp</PlatformToolset>
</PropertyGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
<ImportGroup Label="ExtensionSettings">

View file

@ -22,29 +22,30 @@
<ProjectGuid>{2573DDFC-0576-4766-8A8E-E482035D12AF}</ProjectGuid>
<Keyword>Win32Proj</Keyword>
<RootNamespace>omohconverter</RootNamespace>
<WindowsTargetPlatformVersion>7.0</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_xp</PlatformToolset>
<PlatformToolset>v141_xp</PlatformToolset>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
<ConfigurationType>Application</ConfigurationType>
<UseDebugLibraries>true</UseDebugLibraries>
<PlatformToolset>v140_xp</PlatformToolset>
<PlatformToolset>v141_xp</PlatformToolset>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
<ConfigurationType>Application</ConfigurationType>
<UseDebugLibraries>false</UseDebugLibraries>
<WholeProgramOptimization>true</WholeProgramOptimization>
<PlatformToolset>v140_xp</PlatformToolset>
<PlatformToolset>v141_xp</PlatformToolset>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
<ConfigurationType>Application</ConfigurationType>
<UseDebugLibraries>false</UseDebugLibraries>
<WholeProgramOptimization>true</WholeProgramOptimization>
<PlatformToolset>v140_xp</PlatformToolset>
<PlatformToolset>v141_xp</PlatformToolset>
</PropertyGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
<ImportGroup Label="ExtensionSettings">

View file

@ -762,8 +762,4 @@
<Filter>Header Files</Filter>
</ClInclude>
</ItemGroup>
<ItemGroup>
<None Include="ClassDiagram.cd" />
<None Include="ClassDiagram1.cd" />
</ItemGroup>
</Project>

View file

@ -1,5 +1,5 @@
<?xml version="1.0" encoding="utf-8"?>
<Project DefaultTargets="Build" ToolsVersion="12.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<Project DefaultTargets="Build" ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ItemGroup Label="ProjectConfigurations">
<ProjectConfiguration Include="Debug|Win32">
<Configuration>Debug</Configuration>
@ -28,27 +28,27 @@
<ConfigurationType>Application</ConfigurationType>
<UseDebugLibraries>true</UseDebugLibraries>
<CharacterSet>MultiByte</CharacterSet>
<PlatformToolset>v120_xp</PlatformToolset>
<PlatformToolset>v141_xp</PlatformToolset>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
<ConfigurationType>Application</ConfigurationType>
<UseDebugLibraries>true</UseDebugLibraries>
<CharacterSet>MultiByte</CharacterSet>
<PlatformToolset>v120_xp</PlatformToolset>
<PlatformToolset>v141_xp</PlatformToolset>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
<ConfigurationType>Application</ConfigurationType>
<UseDebugLibraries>false</UseDebugLibraries>
<WholeProgramOptimization>true</WholeProgramOptimization>
<CharacterSet>MultiByte</CharacterSet>
<PlatformToolset>v120_xp</PlatformToolset>
<PlatformToolset>v141_xp</PlatformToolset>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
<ConfigurationType>Application</ConfigurationType>
<UseDebugLibraries>false</UseDebugLibraries>
<WholeProgramOptimization>true</WholeProgramOptimization>
<CharacterSet>MultiByte</CharacterSet>
<PlatformToolset>v120_xp</PlatformToolset>
<PlatformToolset>v141_xp</PlatformToolset>
</PropertyGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
<ImportGroup Label="ExtensionSettings">

View file

@ -1,5 +1,5 @@
<?xml version="1.0" encoding="utf-8"?>
<Project DefaultTargets="Build" ToolsVersion="12.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<Project DefaultTargets="Build" ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ItemGroup Label="ProjectConfigurations">
<ProjectConfiguration Include="Debug|Win32">
<Configuration>Debug</Configuration>
@ -116,23 +116,23 @@
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
<ConfigurationType>Application</ConfigurationType>
<UseDebugLibraries>true</UseDebugLibraries>
<PlatformToolset>v120_xp</PlatformToolset>
<PlatformToolset>v141_xp</PlatformToolset>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
<ConfigurationType>Application</ConfigurationType>
<UseDebugLibraries>true</UseDebugLibraries>
<PlatformToolset>v120_xp</PlatformToolset>
<PlatformToolset>v141_xp</PlatformToolset>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
<ConfigurationType>Application</ConfigurationType>
<UseDebugLibraries>false</UseDebugLibraries>
<PlatformToolset>v120_xp</PlatformToolset>
<PlatformToolset>v141_xp</PlatformToolset>
<WholeProgramOptimization>true</WholeProgramOptimization>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
<ConfigurationType>Application</ConfigurationType>
<UseDebugLibraries>false</UseDebugLibraries>
<PlatformToolset>v120_xp</PlatformToolset>
<PlatformToolset>v141_xp</PlatformToolset>
<WholeProgramOptimization>true</WholeProgramOptimization>
</PropertyGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />