コード例 #1
0
ファイル: MainCharacter.cpp プロジェクト: 2vans/FirstRPG
MainCharacter::MainCharacter(SDL_Setup *sdlSetup, int *mouseX, int *mouseY,
		float *cameraX, float *cameraY, Environment *environment) {

	m_environment = environment;

	m_cameraX = cameraX;
	m_cameraY = cameraY;

	m_distance = 0;
	m_angle = 0;

	m_sdlSetup = sdlSetup;
	m_mouseX = mouseX;
	m_mouseY = mouseY;

	m_quit = false;

	m_follow = false;

	m_followPointX = 0;
	m_followPointY = 0;

	m_timeCheck = SDL_GetTicks();
	m_player = new Sprite(m_sdlSetup->getRenderer(),
			"Assets/playerCharacter.png", 400, 300, 60, 80, m_cameraX,
			m_cameraY, CollisionRectangle(400 - 15, 300 - 76 + 65, 30, 15));

	m_player->setStartPos(30, 76);
	m_player->setupAnimation(4, 4);

}
コード例 #2
0
ファイル: Shrub.cpp プロジェクト: EricPolman/Zelda-ish
Shrub::Shrub(float a_fX, float a_fY, Room* a_room)
	: Entity("shrub", a_fX, a_fY, a_room)
{
	m_type = DESTROYABLE;
	m_pSprite->LoadSpritesheet("shrub", 16, 16, 1, 1);
	m_collisionRect = CollisionRectangle(0,0, m_pSprite->GetWidth(), m_pSprite->GetHeight());
	m_bCollidesWithTiles = false;
}
コード例 #3
0
ファイル: ShopOwner.cpp プロジェクト: EricPolman/Zelda-ish
ShopOwner::ShopOwner(float a_fX, float a_fY, Player* a_pPlayer, Room* a_room)
    : Entity("blank", a_fX, a_fY, a_room)
{
    m_pSprite->LoadSpritesheet("shopowner", 16, 25, 1, 1);
    m_pPlayer = a_pPlayer;
    m_collisionRect = CollisionRectangle(0, 0, m_pSprite->GetWidth(), m_pSprite->GetHeight());
    m_bCollidesWithTiles = false;
    m_bIsVicky = false;
}
コード例 #4
0
ファイル: Rupee.cpp プロジェクト: EricPolman/Zelda-ish
Rupee::Rupee(float a_fX, float a_fY, Room* a_room)
	: Entity("Rupee", a_fX, a_fY, a_room)
{
	m_type = PICKUP;
	m_pSprite->LoadSpritesheet("rupee_pickup", 8, 14, 3, 1);
	m_pSprite->AddAnimation("shine", Vector2i(0,0), Vector2i(2,0));
	m_pSprite->PlayAnimation("shine", true);
	m_collisionRect = CollisionRectangle(0,0, m_pSprite->GetWidth(), m_pSprite->GetHeight());
	m_bCollidesWithTiles = false;
	m_pSprite->m_fAnimationSpeed = 1;
}
コード例 #5
0
ファイル: Flagpole.cpp プロジェクト: EricPolman/Mario
Flagpole::Flagpole(float a_fX, float a_fY, Level* a_level)
	: Entity("blank", a_fX, a_fY, a_level)
{
	m_type = TRIGGER;
	m_pSprite->LoadSpritesheet("flagpole", 16, 304, 1, 1);
	m_collisionRect = CollisionRectangle(0,0, m_pSprite->GetWidth(), m_pSprite->GetHeight());
	m_bCollidesWithTiles = false;
	m_bUsesGravity = false;
	m_pSprite->m_bIsAnimated = false;
	m_bFlagDown = false;
	m_zIndex = -1;
	m_pFlag = new Flag(m_position.x + 10, m_position.y + 16);
	m_bPullDownInitiated = false;
}
コード例 #6
0
ファイル: BeanStalkCube.cpp プロジェクト: EricPolman/Mario
BeanStalkCube::BeanStalkCube(std::string a_destination, float a_fX, float a_fY, Level* a_level)
	: Entity("blank", a_fX, a_fY, a_level)
{
	m_type = STATIC;
	m_pSprite->LoadSpritesheet("beanstalk_cube", 32, 32, 2, 1);
	m_pSprite->AddAnimation("brick", Vector2i(0,0), Vector2i(0,0),10);
	m_pSprite->AddAnimation("used", Vector2i(1,0), Vector2i(1,0),10);
	m_collisionRect = CollisionRectangle(0,0,32,32);
	m_bCollidesWithTiles = false;
	m_bUsesGravity = false;
	m_pSprite->m_bIsAnimated = false;
	m_bIsUsed = false;
	m_bBeanStalkGrown = false;
	m_destination = a_destination;
	m_fMoveTimer = 0.5f;
}
コード例 #7
0
ファイル: Boomerang.cpp プロジェクト: EricPolman/Zelda-ish
Boomerang::Boomerang(float a_fX, float a_fY, Vector2 a_direction, Entity* a_player)
	: Entity("", a_fX, a_fY)
{
	m_type = PLAYER_WEAPON;
	m_pSprite->LoadSpritesheet("boomerang", 10, 10, 4, 1);
	m_pSprite->AddAnimation("throwing", Vector2i(0,0), Vector2i(3,0));
	m_pSprite->PlayAnimation("throwing", true);
	m_pSprite->m_fAnimationSpeed = 3;
	m_collisionRect = CollisionRectangle(0,0, m_pSprite->GetWidth(), m_pSprite->GetHeight());
	m_bCollidesWithTiles = true;

	m_direction = a_direction;
	m_player = a_player;

	m_bReturnToSender = false;
	m_fDistanceTraveled = 0;
}
コード例 #8
0
ファイル: ChestSmall.cpp プロジェクト: EricPolman/Zelda-ish
ChestSmall::ChestSmall(float a_fX, float a_fY, Room* a_room)
	: Entity("shrub", a_fX, a_fY, a_room)
{
	m_type = STATIC;
	m_pSprite->LoadSpritesheet("chest_small", 16, 16, 2, 1);
	m_pSprite->AddAnimation("closed", Vector2i(0,0), Vector2i(0,0));
	m_pSprite->AddAnimation("opened", Vector2i(1,0), Vector2i(1,0));
	m_collisionRect = CollisionRectangle(0,0, m_pSprite->GetWidth(), m_pSprite->GetHeight());
	m_bCollidesWithTiles = false;

	m_bIsOpened = false;
	m_bRewardShown = false;
	m_fShowRewardTimer = 0;

	TriggerChest* tC = new TriggerChest(m_position.x + 8, m_position.y + 18);
	Triggers->Add(tC, a_room);
	tC->m_pChest = this;

	m_pContents = Textures->m_Textures["rupee_red_chest"];
}
コード例 #9
0
ファイル: Entity.cpp プロジェクト: EricPolman/Zelda-ish
Entity::Entity(std::string a_tilesheetName,float a_fX, float a_fY, Room* a_room)
{
	m_pSprite = new AnimatedSprite();
	m_pSprite->LoadSpritesheet(a_tilesheetName, 24, 24, 1, 1);

	m_position.x = a_fX;
	m_position.y = a_fY;
	m_state = ALIVE;
	m_type = ENTITY;
	m_bIsVisible = true;
	m_bCollidesWithTiles = true;
	m_collisionRect = CollisionRectangle(0,0, m_pSprite->GetWidth(), m_pSprite->GetHeight());
	if(a_room != 0)
	{
		Entities->Add(this, a_room);
	}
	else
	{
		Entities->Add(this);
	}
}
コード例 #10
0
ファイル: submenu.cpp プロジェクト: MichaelOdere/SDL-RTS-game
SubMenu::SubMenu(SDL_Setup* passed_SDL_Setup, int *passed_MouseX, int *passed_MouseY, int kind) //Constructor
{

    sdl_setup = passed_SDL_Setup;
    MouseX = passed_MouseX;
    MouseY = passed_MouseY;

    selectedI = 0;
    opSelected = false;
    buttonPressed = false;

    //Buttons
    newHouse = MenuOption(1,100, "images/house.png", false);
    newBarracks = MenuOption(2,250, "images/barracks.png", false);
    newVillager = MenuOption(3, 50, "images/villagerButton.png", true);
    newMilitia = MenuOption(5, 50, "images/militiaButton.png", true);
    newChampion = MenuOption(7, 150, "images/championButton.png", true);

    //Menu Options
    villagerOptions.push_back(newHouse);
    villagerOptions.push_back(newBarracks);
    TownCenterOptions.push_back(newVillager);
    barracksOptions.push_back(newMilitia);
    barracksOptions.push_back(newChampion);

    bar = new Sprite(sdl_setup->GetRenderer(), "images/optionsmenu.png", 0, 675, 1024, 100, CollisionRectangle(0,0,1024,100));

    //Sprite menus
    main = newMenu(mainOptions);
    house = newMenu(houseOptions);
    barracks = newMenu(barracksOptions);
    villager = newMenu(villagerOptions);
    townCenter = newMenu(TownCenterOptions);
    displayed = main;

    type = kind;
}
コード例 #11
0
ファイル: submenu.cpp プロジェクト: MichaelOdere/SDL-RTS-game
std::vector<Sprite*> SubMenu::newMenu(std::vector<MenuOption> passed_options) //create vector of sprites for each menu
{
    std::vector<Sprite*> result;
    for( int i = 0; i < passed_options.size(); i++){
        result.push_back(new Sprite(sdl_setup->GetRenderer(), passed_options[i].getPic(), (i*100), 675, 100, 100, CollisionRectangle(0,0,100,100)));
    }
    return result;
}