示例#1
0
// *************************** Capture image dimensions out of BMP**********
int main(void){
  TExaS_Init(SSI0_Real_Nokia5110_Scope);  // set system clock to 80 MHz
  Random_Init(69);
  Output_Init();
	ADC0_Init();
	ST7735_InvertDisplay(0);
	ST7735_SetRotation(0);
	AI_Init(0x07);
	Player_Init();
	player.potato=1;
	
	Timer0_Init(Master_Funk,  30);

  ST7735_DrawBitmap(53, 151, Bunker0, 18,5);
//	Delay100ms(1);              // delay 5 sec at 80 MHz

 /* ST7735_FillScreen(0x0000);            // set screen to black
  ST7735_SetCursor(1, 1);
  ST7735_OutString("GAME OVER");
  ST7735_SetCursor(1, 2);
  ST7735_OutString("Nice try,");
  ST7735_SetCursor(1, 3);
  ST7735_OutString("Earthling!");
  ST7735_SetCursor(2, 4);
  LCD_OutDec(1234);	 */
  while(1){							
  } 
}
示例#2
0
文件: g_main.cpp 项目: yason/ufoai
/**
 * @brief This will be called when the game library is first loaded
 * @note only happens when a new game/map is started
 */
static void G_Init (void)
{
	gi.DPrintf("==== InitGame ====\n");

	/* noset vars */
	sv_dedicated = gi.Cvar_Get("sv_dedicated", "0", CVAR_SERVERINFO | CVAR_NOSET, "Is this a dedicated server?");

	/* latched vars */
	sv_cheats = gi.Cvar_Get("sv_cheats", "0", CVAR_SERVERINFO | CVAR_LATCH, "Activate cheats");
	gi.Cvar_Get("gamename", GAMEVERSION, CVAR_SERVERINFO | CVAR_LATCH, nullptr);
	gi.Cvar_Get("gamedate", __DATE__, CVAR_SERVERINFO | CVAR_LATCH, nullptr);
	developer = gi.Cvar_Get("developer", "0", 0, "Print out a lot of developer debug messages - useful to track down bugs");
	logstats = gi.Cvar_Get("logstats", "1", CVAR_ARCHIVE, "Server logfile output for kills");

	/* max. players per team (original quake) */
	sv_maxplayersperteam = gi.Cvar_Get("sv_maxplayersperteam", "8", CVAR_SERVERINFO | CVAR_LATCH, "How many players (humans) may a team have");
	/* max. soldiers per team */
	sv_maxsoldiersperteam = gi.Cvar_Get("sv_maxsoldiersperteam", "4", CVAR_ARCHIVE | CVAR_SERVERINFO, "How many soldiers may one team have");
	/* max soldiers per player */
	sv_maxsoldiersperplayer = gi.Cvar_Get("sv_maxsoldiersperplayer", DOUBLEQUOTE(MAX_ACTIVETEAM), CVAR_ARCHIVE | CVAR_SERVERINFO, "How many soldiers one player is able to control in a given team");
	/* enable moralestates in multiplayer */
	sv_enablemorale = gi.Cvar_Get("sv_enablemorale", "1", CVAR_ARCHIVE | CVAR_SERVERINFO | CVAR_LATCH, "Enable morale behaviour for actors");
	sv_roundtimelimit = gi.Cvar_Get("sv_roundtimelimit", "90", CVAR_ARCHIVE | CVAR_SERVERINFO, "Timelimit in seconds for multiplayer rounds");
	sv_roundtimelimit->modified = false;
	sv_maxentities = gi.Cvar_Get("sv_maxentities", "1024", CVAR_LATCH, nullptr);

	sv_maxteams = gi.Cvar_Get("sv_maxteams", "2", CVAR_SERVERINFO, "How many teams for current running map");
	sv_maxteams->modified = false;

	/* change anytime vars */
	password = gi.Cvar_Get("password", "", CVAR_USERINFO, nullptr);
	sv_needpass = gi.Cvar_Get("sv_needpass", "0", CVAR_SERVERINFO, nullptr);
	sv_filterban = gi.Cvar_Get("sv_filterban", "1", 0, nullptr);
	sv_ai = gi.Cvar_Get("sv_ai", "1", 0, "Activate or deativate the ai");
	sv_teamplay = gi.Cvar_Get("sv_teamplay", "0", CVAR_ARCHIVE | CVAR_LATCH | CVAR_SERVERINFO, "Is teamplay activated? see sv_maxclients, sv_maxplayersperteam, sv_maxsoldiersperteam and sv_maxsoldiersperplayer");
	/* how many connected clients */
	sv_maxclients = gi.Cvar_Get("sv_maxclients", "1", CVAR_SERVERINFO, "If sv_maxclients is 1 we are in singleplayer - otherwise we are mutliplayer mode (see sv_teamplay)");
	sv_shot_origin = gi.Cvar_Get("sv_shot_origin", "8", 0, "Assumed distance of muzzle from model");
	sv_send_edicts = gi.Cvar_Get("sv_send_edicts", "0", CVAR_ARCHIVE | CVAR_CHEAT, "Send server side edicts for client display like triggers");
	sv_hurtaliens = gi.Cvar_Get("sv_hurtaliens", "0", CVAR_SERVERINFO, "Spawn hurt aliens");

	ai_alienteam = gi.Cvar_Get("ai_alienteam", "ortnok", 0, "Alien team");
	ai_civilianteam = gi.Cvar_Get("ai_civilianteam", "europe", 0, "Civilian team");
	/* this cvar is set in singleplayer via campaign definition */
	ai_equipment = gi.Cvar_Get("ai_equipment", "multiplayer_alien", 0, "Initial equipment definition for aliens");
	/* aliens in singleplayer (can differ each mission) */
	ai_singleplayeraliens = gi.Cvar_Get("ai_singleplayeraliens", "30", 0, "How many aliens in this battle (singleplayer)");
	/* civilians for singleplayer */
	ai_numcivilians = gi.Cvar_Get("ai_numcivilians", "10", 0, "How many civilians in this battle");
	/* aliens in multiplayer */
	ai_multiplayeraliens = gi.Cvar_Get("ai_multiplayeraliens", "8", CVAR_ARCHIVE, "How many (ai controlled) actors in this battle (multiplayer)");

	mob_death = gi.Cvar_Get("mob_death", "10", CVAR_LATCH|CVAR_NOSET, nullptr);
	mob_wound = gi.Cvar_Get("mob_wound", "0.1", CVAR_LATCH|CVAR_NOSET, nullptr);
	mob_shoot = gi.Cvar_Get("mob_shoot", "0.1", CVAR_LATCH|CVAR_NOSET, nullptr);
	mof_watching = gi.Cvar_Get("mof_watching", "1.7", CVAR_LATCH|CVAR_NOSET, nullptr);
	mof_teamkill = gi.Cvar_Get("mof_teamkill", "2.0", CVAR_LATCH|CVAR_NOSET, nullptr);
	mof_civilian = gi.Cvar_Get("mof_civilian", "0.3", CVAR_LATCH|CVAR_NOSET, nullptr);
	mof_enemy = gi.Cvar_Get("mof_ememy", "0.5", CVAR_LATCH|CVAR_NOSET, nullptr);
	mor_pain = gi.Cvar_Get("mof_pain", "3.6", CVAR_LATCH|CVAR_NOSET, nullptr);
	/* everyone gets this times morale damage */
	mor_default = gi.Cvar_Get("mor_default", "0.3", CVAR_LATCH|CVAR_NOSET, "Everyone gets this times morale damage");
	/* at this distance the following two get halved (exponential scale) */
	mor_distance = gi.Cvar_Get("mor_distance", "120", CVAR_LATCH|CVAR_NOSET, "At this distance the following two get halved (exponential scale)");
	/* at this distance the following two get halved (exponential scale) */
	mor_victim = gi.Cvar_Get("mor_victim", "0.7", CVAR_LATCH|CVAR_NOSET, "At this distance the following two get halved (exponential scale)");
	/* at this distance the following two get halved (exponential scale) */
	mor_attacker = gi.Cvar_Get("mor_attacker", "0.3", CVAR_LATCH|CVAR_NOSET, "At this distance the following two get halved (exponential scale)");
	/* how much the morale depends on the size of the damaged team */
	mon_teamfactor = gi.Cvar_Get("mon_teamfactor", "0.6", CVAR_LATCH|CVAR_NOSET, "How much the morale depends on the size of the damaged team");

	mor_regeneration = gi.Cvar_Get("mor_regeneration", "15", CVAR_LATCH|CVAR_NOSET, nullptr);
	mor_shaken = gi.Cvar_Get("mor_shaken", "50", CVAR_LATCH|CVAR_NOSET, nullptr);
	mor_panic = gi.Cvar_Get("mor_panic", "30", CVAR_LATCH|CVAR_NOSET, nullptr);
	mor_brave = gi.Cvar_Get("mor_brave", "85", CVAR_LATCH|CVAR_NOSET, nullptr);

	m_sanity = gi.Cvar_Get("m_sanity", "1.0", CVAR_LATCH|CVAR_NOSET, nullptr);
	m_rage = gi.Cvar_Get("m_rage", "0.6", CVAR_LATCH|CVAR_NOSET, nullptr);
	m_rage_stop = gi.Cvar_Get("m_rage_stop", "2.0", CVAR_LATCH|CVAR_NOSET, nullptr);
	m_panic_stop = gi.Cvar_Get("m_panic_stop", "1.0", CVAR_LATCH|CVAR_NOSET, nullptr);

	g_endlessaliens = gi.Cvar_Get("g_endlessaliens", "0", CVAR_LATCH|CVAR_SERVERINFO, "Spawn endless aliens");
	g_ailua = gi.Cvar_Get("g_ailua", "0", 0, "Activate or deactivate the LUA AI");
	g_aihumans = gi.Cvar_Get("g_aihumans", "0", CVAR_DEVELOPER, "Activate or deactivate the ai for human actors");
	g_aidebug = gi.Cvar_Get("g_aidebug", "0", CVAR_DEVELOPER|CVAR_CHEAT, "All AI actors are visible");
	g_drawtraces = gi.Cvar_Get("g_drawtraces", "0", CVAR_DEVELOPER, "All traces will be rendered");
	g_nodamage = gi.Cvar_Get("g_nodamage", "0", CVAR_DEVELOPER|CVAR_CHEAT, "No damage in developer mode");
	g_notu = gi.Cvar_Get("g_notu", "0", CVAR_DEVELOPER|CVAR_CHEAT, "No TU costs while performing any action");
	g_actorspeed = gi.Cvar_Get("g_actorspeed", "1.0", CVAR_ARCHIVE|CVAR_SERVERINFO, "Moving speed of the actor");
	g_lastseen = gi.Cvar_Get("g_lastseen", "20", CVAR_ARCHIVE|CVAR_SERVERINFO, "Quit the match if no player was seen in this amount of rounds");
	g_nospawn = gi.Cvar_Get("g_nospawn", "0", CVAR_DEVELOPER|CVAR_CHEAT, "Do not spawn a soldier");

	/* flood control */
	flood_msgs = gi.Cvar_Get("flood_msgs", "4", 0, nullptr);
	flood_persecond = gi.Cvar_Get("flood_persecond", "4", 0, nullptr);
	flood_waitdelay = gi.Cvar_Get("flood_waitdelay", "10", 0, "Delay until someone is unlocked from talking again");

	g_difficulty = gi.Cvar_Get("g_difficulty", "0", CVAR_NOSET, "Singleplayer difficulty level");

	game.sv_maxentities = sv_maxentities->integer;
	game.sv_maxplayersperteam = sv_maxplayersperteam->integer;

	/* initialize the entity storage */
	globals.edicts = G_EdictsConstruct();
	globals.max_edicts = game.sv_maxentities;
	globals.num_edicts = game.sv_maxplayersperteam;

	/* initialize all players for this game */
	/* game.sv_maxplayersperteam for human controlled players
	 * + game.sv_maxplayer for ai */
	game.players = static_cast<player_t*>(G_TagMalloc(game.sv_maxplayersperteam * 2 * sizeof(game.players[0]), TAG_GAME));
	globals.players = game.players;
	globals.maxplayersperteam = game.sv_maxplayersperteam;

	/* init csi and inventory */
	INVSH_InitCSI(gi.csi);
	game.invi.initInventory("game", gi.csi, &inventoryImport);

	if (logstats->integer)
		logstatsfile = gi.Sys_Fopen(va("%s/stats.log", gi.FS_Gamedir()), "a");
	else
		logstatsfile = nullptr;

	AI_Init();
	AIL_Init();
}
示例#3
0
//--------------------------------------------------------------------------
// Module:
//  BurnInInitAnalogs
//
///   This function is responsible for initializing the analog
///   outputs and the analog inputs for Burn In testing. The analog
///   outputs are fed back into the analog inputs.
///
//--------------------------------------------------------------------------
static void BurnInInitAnalogs (void)
{

    AO_Init();

    /* Set the chart recording scaling */
    AO_SetScaling (ALOG_OUT0, HI_DAC_VOLTAGE_MV, LO_DAC_VOLTAGE_MV);
    AO_SetScaling (ALOG_OUT1, HI_DAC_VOLTAGE_MV, LO_DAC_VOLTAGE_MV);
    AO_SetScaling (ALOG_OUT2, HI_DAC_VOLTAGE_MV, LO_DAC_VOLTAGE_MV);
    AO_SetScaling (ALOG_OUT3, HI_DAC_VOLTAGE_MV, LO_DAC_VOLTAGE_MV);
    AO_SetScaling (ALOG_OUT4, HI_DAC_VOLTAGE_MV, LO_DAC_VOLTAGE_MV);
    AO_SetScaling (ALOG_OUT5, HI_DAC_VOLTAGE_MV, LO_DAC_VOLTAGE_MV);
    AO_SetScaling (ALOG_OUT6, HI_DAC_VOLTAGE_MV, LO_DAC_VOLTAGE_MV);
    AO_SetScaling (ALOG_OUT7, HI_DAC_VOLTAGE_MV, LO_DAC_VOLTAGE_MV);

    /* Set the variables for the chart recorder driver software to monitor */
    AO_SetVariable (ALOG_OUT0, &burninDAC[0], INT_16_TYPE);
    AO_SetVariable (ALOG_OUT1, &burninDAC[1], INT_16_TYPE);
    AO_SetVariable (ALOG_OUT2, &burninDAC[2], INT_16_TYPE);
    AO_SetVariable (ALOG_OUT3, &burninDAC[3], INT_16_TYPE);
    AO_SetVariable (ALOG_OUT4, &burninDAC[4], INT_16_TYPE);
    AO_SetVariable (ALOG_OUT5, &burninDAC[5], INT_16_TYPE);
    AO_SetVariable (ALOG_OUT6, &burninDAC[6], INT_16_TYPE);
    AO_SetVariable (ALOG_OUT7, &burninDAC[7], INT_16_TYPE);

    /* Enable the channels of the chart recorder */
    AO_SetEnable (ALOG_OUT0, TRUE);
    AO_SetEnable (ALOG_OUT1, TRUE);
    AO_SetEnable (ALOG_OUT2, TRUE);
    AO_SetEnable (ALOG_OUT3, TRUE);
    AO_SetEnable (ALOG_OUT4, TRUE);
    AO_SetEnable (ALOG_OUT5, TRUE);
    AO_SetEnable (ALOG_OUT6, TRUE);
    AO_SetEnable (ALOG_OUT7, TRUE);


    /* Initialize the analog inputs */
    AI_Init();

    /* Only used to test VDrive, not used in application */
    AI_SetScaleFactors (ANALOGIN_10, MAX_ADC_QUANTA, MIN_ADC_QUANTA,
                        5000, 0);
    AI_SetEnable (ANALOGIN_10, TRUE);

    AI_SetScaleFactors (ANALOGIN_00, MAX_ADC_QUANTA, MIN_ADC_QUANTA,
                        1, -1);
    AI_SetEnable (ANALOGIN_00, TRUE);

    AI_SetScaleFactors (ANALOGIN_01, MAX_ADC_QUANTA, MIN_ADC_QUANTA,
                        1, -1);
    AI_SetEnable (ANALOGIN_01, TRUE);

    AI_SetScaleFactors (ANALOGIN_02, MAX_ADC_QUANTA, MIN_ADC_QUANTA,
                        1, -1);
    AI_SetEnable (ANALOGIN_02, TRUE);

    AI_SetScaleFactors (ANALOGIN_03, MAX_ADC_QUANTA, MIN_ADC_QUANTA,
                        1, -1);
    AI_SetEnable (ANALOGIN_03, TRUE);

    AI_SetScaleFactors (ANALOGIN_04, MAX_ADC_QUANTA, MIN_ADC_QUANTA,
                        1, -1);
    AI_SetEnable (ANALOGIN_04, TRUE);

    AI_SetScaleFactors (ANALOGIN_05, MAX_ADC_QUANTA, MIN_ADC_QUANTA,
                        1, -1);
    AI_SetEnable (ANALOGIN_05, TRUE);

    AI_SetScaleFactors (ANALOGIN_06, MAX_ADC_QUANTA, MIN_ADC_QUANTA,
                        1, -1);
    AI_SetEnable (ANALOGIN_06, TRUE);

    AI_SetScaleFactors (ANALOGIN_07, MAX_ADC_QUANTA, MIN_ADC_QUANTA,
                        1, -1);
    AI_SetEnable (ANALOGIN_07, TRUE);

    AI_SetScaleFactors (ANALOGIN_08, MAX_ADC_QUANTA, MIN_ADC_QUANTA,
                        1, -1);
    AI_SetEnable (ANALOGIN_08, TRUE);

    AI_SetScaleFactors (ANALOGIN_09, MAX_ADC_QUANTA, MIN_ADC_QUANTA,
                        1, -1);
    AI_SetEnable (ANALOGIN_09, TRUE);

    AI_SetScaleFactors (ANALOGIN_11, MAX_ADC_QUANTA, MIN_ADC_QUANTA,
                        1, -1);
    AI_SetEnable (ANALOGIN_11, TRUE);

    AI_SetScaleFactors (ANALOGIN_12, MAX_ADC_QUANTA, MIN_ADC_QUANTA,
                        1, -1);
    AI_SetEnable (ANALOGIN_12, TRUE);

    AI_SetScaleFactors (ANALOGIN_13, MAX_ADC_QUANTA, MIN_ADC_QUANTA,
                        1, -1);
    AI_SetEnable (ANALOGIN_13, TRUE);


    AI_SetScaleFactors (BATTERY_VOLTAGE, MAX_ADC_QUANTA, MIN_ADC_QUANTA,
                        1, -1);
    AI_SetEnable (BATTERY_VOLTAGE, TRUE);


}