 |
| Kapral |
 |
-
Posty:
35
-
Dołączył:
12.03.2008
-
Skąd:
x=56, y=81
|
ps. - to jest moj nick^^
zmiany: startegic/mapscreen.h #define MAP_WORLD_X 19 #define MAP_WORLD_Y 19
Startegic/Campaign Init.cpp
extern SECTORINFO SectorInfo[289];
BOOLEAN RandomSector[289] = { // 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 /* A */ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, /* B */ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, /* C */ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, /* D */ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, /* E */ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, /* F */ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, /* G */ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, /* H */ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, /* I */ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, /* J */ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, /* K */ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, /* L */ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, /* M */ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, /* N */ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, /* O */ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, /* P */ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 0, /* Q*/ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 0, };
INT16 sSectorCounter;
for (sSectorCounter = 0; sSectorCounter < 289; sSectorCounter++) { if ( RandomSector[ sSectorCounter ] ) { if ( Random(100) >= 50 ) SectorInfo[ sSectorCounter ].uiFlags |= SF_USE_ALTERNATE_MAP; } }
StrategicCampaign Types.h enum { SEC_A1, SEC_A2, SEC_A3, SEC_A4, SEC_A5, SEC_A6, SEC_A7, SEC_A8, SEC_A9, SEC_A10, SEC_A11, SEC_A12, SEC_A13, SEC_A14, SEC_A15, SEC_A16, SEC_A17, SEC_B1, SEC_B2, SEC_B3, SEC_B4, SEC_B5, SEC_B6, SEC_B7, SEC_B8, SEC_B9, SEC_B10, SEC_B11, SEC_B12, SEC_B13, SEC_B14, SEC_B15, SEC_B16, SEC_B17, SEC_C1, SEC_C2, SEC_C3, SEC_C4, SEC_C5, SEC_C6, SEC_C7, SEC_C8, SEC_C9, SEC_C10, SEC_C11, SEC_C12, SEC_C13, SEC_C14, SEC_C15, SEC_C16, SEC_C17, SEC_D1, SEC_D2, SEC_D3, SEC_D4, SEC_D5, SEC_D6, SEC_D7, SEC_D8, SEC_D9, SEC_D10, SEC_D11, SEC_D12, SEC_D13, SEC_D14, SEC_D15, SEC_D16, SEC_D17, SEC_E1, SEC_E2, SEC_E3, SEC_E4, SEC_E5, SEC_E6, SEC_E7, SEC_E8, SEC_E9, SEC_E10, SEC_E11, SEC_E12, SEC_E13, SEC_E14, SEC_E15, SEC_E16, SEC_E17, SEC_F1, SEC_F2, SEC_F3, SEC_F4, SEC_F5, SEC_F6, SEC_F7, SEC_F8, SEC_F9, SEC_F10, SEC_F11, SEC_F12, SEC_F13, SEC_F14, SEC_F15, SEC_F16, SEC_F17, SEC_G1, SEC_G2, SEC_G3, SEC_G4, SEC_G5, SEC_G6, SEC_G7, SEC_G8, SEC_G9, SEC_G10, SEC_G11, SEC_G12, SEC_G13, SEC_G14, SEC_G15, SEC_G16, SEC_G17, SEC_H1, SEC_H2, SEC_H3, SEC_H4, SEC_H5, SEC_H6, SEC_H7, SEC_H8, SEC_H9, SEC_H10, SEC_H11, SEC_H12, SEC_H13, SEC_H14, SEC_H15, SEC_H16, SEC_H17, SEC_I1, SEC_I2, SEC_I3, SEC_I4, SEC_I5, SEC_I6, SEC_I7, SEC_I8, SEC_I9, SEC_I10, SEC_I11, SEC_I12, SEC_I13, SEC_I14, SEC_I15, SEC_I16, SEC_I17, SEC_J1, SEC_J2, SEC_J3, SEC_J4, SEC_J5, SEC_J6, SEC_J7, SEC_J8, SEC_J9, SEC_J10, SEC_J11, SEC_J12, SEC_J13, SEC_J14, SEC_J15, SEC_J16, SEC_J17, SEC_K1, SEC_K2, SEC_K3, SEC_K4, SEC_K5, SEC_K6, SEC_K7, SEC_K8, SEC_K9, SEC_K10, SEC_K11, SEC_K12, SEC_K13, SEC_K14, SEC_K15, SEC_K16, SEC_K17, SEC_L1, SEC_L2, SEC_L3, SEC_L4, SEC_L5, SEC_L6, SEC_L7, SEC_L8, SEC_L9, SEC_L10, SEC_L11, SEC_L12, SEC_L13, SEC_L14, SEC_L15, SEC_L16, SEC_L17, SEC_M1, SEC_M2, SEC_M3, SEC_M4, SEC_M5, SEC_M6, SEC_M7, SEC_M8, SEC_M9, SEC_M10, SEC_M11, SEC_M12, SEC_M13, SEC_M14, SEC_M15, SEC_M16, SEC_M17, SEC_N1, SEC_N2, SEC_N3, SEC_N4, SEC_N5, SEC_N6, SEC_N7, SEC_N8, SEC_N9, SEC_N10, SEC_N11, SEC_N12, SEC_N13, SEC_N14, SEC_N15, SEC_N16, SEC_N17, SEC_O1, SEC_O2, SEC_O3, SEC_O4, SEC_O5, SEC_O6, SEC_O7, SEC_O8, SEC_O9, SEC_O10, SEC_O11, SEC_O12, SEC_O13, SEC_O14, SEC_O15, SEC_O16, SEC_O17, SEC_P1, SEC_P2, SEC_P3, SEC_P4, SEC_P5, SEC_P6, SEC_P7, SEC_P8, SEC_P9, SEC_P10, SEC_P11, SEC_P12, SEC_P13, SEC_P14, SEC_P15, SEC_P16 SEC_P17, SEC_Q1, SEC_Q2, SEC_Q3, SEC_Q4, SEC_Q5, SEC_Q6, SEC_Q7, SEC_Q8, SEC_Q9, SEC_Q10, SEC_Q11, SEC_Q12, SEC_Q13, SEC_Q14, SEC_Q15, SEC_Q16 SEC_Q17 };
#define SECTOR(x,y) ((y-1)*17+x-1) #define SECTORX(SectorID) ((SectorID % 17) + 1) #define SECTORY(SectorID) ((SectorID / 17) + 1)
Strategic/Quest.h
#define MAP_ROW_A 1 #define MAP_ROW_B 2 #define MAP_ROW_C 3 #define MAP_ROW_D 4 #define MAP_ROW_E 5 #define MAP_ROW_F 6 #define MAP_ROW_G 7 #define MAP_ROW_H 8 #define MAP_ROW_I 9 #define MAP_ROW_J 10 #define MAP_ROW_K 11 #define MAP_ROW_L 12 #define MAP_ROW_M 13 #define MAP_ROW_N 14 #define MAP_ROW_O 15 #define MAP_ROW_P 16 #define MAP_ROW_Q 17
void InitNewCampaign() { DebugMsg (TOPIC_JA2,DBG_LEVEL_3,"InitNewCampaign"); //First clear all the sector information of all enemy existance. Conveniently, the //ubGroupType is also cleared, which is perceived to be an empty group. memset( &SectorInfo, 0, sizeof( SECTORINFO ) * 289); InitStrategicMovementCosts(); RemoveAllGroups();
Strategic/Map Screen Interface Map // number of units wide #define WORLD_MAP_X 19
Utils/_PolishText.cpp // horizontal and vertical indices on the map screen
STR16 pMapVertIndex[] = { L"X", L"A", L"B", L"C", L"D", L"E", L"F", L"G", L"H", L"I", L"J", L"K", L"L", L"M", L"N", L"O", L"P", L"Q", };
STR16 pMapHortIndex[] = { L"X", L"1", L"2", L"3", L"4", L"5", L"6", L"7", L"8", L"9", L"10", L"11", L"12", L"13", L"14", L"15", L"16", L"17", };
Strategic/strategicmap.cpp
BOOLEAN SaveStrategicInfoToSavedFile( HWFILE hFile ) { UINT32 uiNumBytesWritten=0; UINT32 uiSize = sizeof( StrategicMapElement ) * ( MAP_WORLD_X * MAP_WORLD_Y );
// Save the strategic map information FileWrite( hFile, StrategicMap, uiSize, &uiNumBytesWritten ); if( uiNumBytesWritten != uiSize) { return(FALSE); }
// Save the Sector Info uiSize = sizeof( SECTORINFO ) * 289; FileWrite( hFile, SectorInfo, uiSize, &uiNumBytesWritten ); if( uiNumBytesWritten != uiSize) { return(FALSE); }
// Save the SAM Controlled Sector Information uiSize = MAP_WORLD_X * MAP_WORLD_Y; /* FileWrite( hFile, ubSAMControlledSectors, uiSize, &uiNumBytesWritten ); if( uiNumBytesWritten != uiSize) { return(FALSE); } */ FileSeek( hFile, uiSize, FILE_SEEK_FROM_CURRENT );
// Save the fFoundOrta FileWrite( hFile, &fFoundOrta, sizeof( BOOLEAN ), &uiNumBytesWritten ); if( uiNumBytesWritten != sizeof( BOOLEAN ) ) { return(FALSE); }
return( TRUE ); }
BOOLEAN LoadStrategicInfoFromSavedFile( HWFILE hFile ) { UINT32 uiNumBytesRead=0; UINT32 uiSize = sizeof( StrategicMapElement ) * ( MAP_WORLD_X * MAP_WORLD_Y );
// Load the strategic map information FileRead( hFile, StrategicMap, uiSize, &uiNumBytesRead ); if( uiNumBytesRead != uiSize) { return(FALSE); }
// Load the Sector Info uiSize = sizeof( SECTORINFO ) * 289; FileRead( hFile, SectorInfo, uiSize, &uiNumBytesRead ); if( uiNumBytesRead != uiSize)
//StrategicXML_Roaming
extern UINT32 gRestrictMilitia[289];
//StrategicStrategic Pathing.cpp UINT16 gusPlottedPath[289]; UINT16 gusMapPathingData[289];
//StrategicMilitiaSquads UINT32 gRestrictMilitia[289];
/StrategicMilitiaSquads for( sLMX = 0; sLMX < 17 ; ++sLMX ) for( sLMY = 0; sLMY < 17 ; ++sLMY )
UINT8 pBlockMoveList[289];
iRandomRes = 289;
//Strategicmapscreen BOOLEAN fGroupIDRebuilt[ 289 ];
//StrategicMap Screen Interface Map void ClearAnySectorsFlashingNumberOfEnemies() { INT32 i; for( i = 0; i < 289; i++ ) { SectorInfo[ i ].uiFlags &= ~SF_PLAYER_KNOWS_ENEMIES_ARE_HERE; }
// redraw map fMapPanelDirty = TRUE; }
//StrategicCampaign Init void InitNewCampaign() { DebugMsg (TOPIC_JA2,DBG_LEVEL_3,"InitNewCampaign"); //First clear all the sector information of all enemy existance. Conveniently, the //ubGroupType is also cleared, which is perceived to be an empty group. memset( &SectorInfo, 0, sizeof( SECTORINFO ) * 289 ); InitStrategicMovementCosts(); RemoveAllGroups();
InitWorld(); // Lesh: generate different world each time using alternative maps InitMiningLocations(); InitKnowFacilitiesFlags( );
BuildUndergroundSectorInfoList(); // allow overhead view of omerta A9 on game onset SetSectorFlag( gGameExternalOptions.SektorX5, gGameExternalOptions.SektorY5, 0, SF_ALREADY_VISITED ); //Tu Zmiana
//Generates the initial forces in a new campaign. The idea is to randomize numbers and sectors //so that no two games are the same. InitStrategicAI();
InitStrategicStatus();
DebugMsg (TOPIC_JA2,DBG_LEVEL_3,"InitNewCampaign done"); }
Kod:
//TacticalInterface Items.cpp
// Calculate chance to throw here..... if ( !CalculateLaunchItemChanceToGetThrough( gpItemPointerSoldier,
gpItemPointer, usMapPos, (INT8)gsInterfaceLevel, (INT16)( ( gsInterfaceLevel * 289 ) + sEndZ ), &sFinalGridNo, FALSE,
&bLevel, TRUE ) ) { gfBadThrowItemCTGH = TRUE; } else { gfBadThrowItemCTGH = FALSE; }
//TacticalInterface Items.cpp // Given our gridno, throw grenate! CalculateLaunchItemParamsForThrow( gpItemPointerSoldier, sGridNo, gpItemPointerSoldier->bLevel,
(INT16)( ( gsInterfaceLevel * 289 ) + sEndZ ), gpItemPointer, 0, ubThrowActionCode, uiThrowActionData );
//TacticalPATHAI.cpp memset(guiPlottedPath,0,289*sizeof(UINT32));
//TacticalUI Cursors.cpp if ( !CalculateLaunchItemChanceToGetThrough( pSoldier, &TempObject, sGridNo,
(INT8)gsInterfaceLevel, (INT16)( gsInterfaceLevel * 289 ), &sFinalGridNo, fArmed, &bLevel, TRUE ) ) { fBadCTGH = TRUE; } else { fBadCTGH = FALSE;
//TacticalUI Cursors.cpp if ( !CalculateLaunchItemChanceToGetThrough( pSoldier, &TempObject, sGridNo,
(INT8)gsInterfaceLevel, (INT16)( gsInterfaceLevel * 289 ), &sFinalGridNo, fArmed, &bLevel, TRUE ) ) { fBadCTGH = TRUE; } else { fBadCTGH = FALSE; } }
//TacticalUI Cursors.cpp CalculateLaunchItemParamsForThrow( pSoldier, sTargetGridNo, pSoldier->bTargetLevel, (INT16)(pSoldier->bTargetLevel *
289 ), &(pSoldier->inv[ HANDPOS ] ), (INT8)(uiDiceRoll - uiHitChance), THROW_ARM_ITEM, 0 );
//StrategicAI Viewer.cpp
// count stationary enemies (garrisons) for ( uiSector = 0; uiSector < 289; uiSector++ ) { pSector = &SectorInfo[ uiSector ];
:okulary:
MILEJ LEKTURY ZYCZY OSAMODASXD HAVE A NICE DAY^^
|
|