示例#1
0
void AIDeadState::onEnter()
{
	auto spr = getContext().lock()->getSprite();
	if (spr->hasSequence(HashedString("dead")))
	{
		spr->play(HashedString("dead"));
	}
}
示例#2
0
void AIHurtState::onEnter()
{
	auto spr = getContext().lock()->getSprite();
	if (spr->hasSequence(HashedString("hurt")))
	{
		spr->setLooping(false);
		spr->play(HashedString("hurt"));
	}
}
示例#3
0
    void KeyTrans::sequenceCatRun()
    {
        if (hasSequence()) return;

        mSequence[0].keyval = 0x76;
        mSequence[0].down   = true;
        mSequence[1].keyval = 0x76;
        mSequence[1].down   = false;

        mSequence[2].keyval = 0x85;
        mSequence[2].down   = true;
        mSequence[3].keyval = 0x85;
        mSequence[3].down   = false;

        mSequence[4].keyval = 0x63;
        mSequence[4].down   = true;
        mSequence[5].keyval = 0x63;
        mSequence[5].down   = false;

        mSequence[6].keyval = 0x22;
        mSequence[6].down   = true;
        mSequence[7].keyval = 0x22;
        mSequence[7].down   = false;

        mSequence[8].keyval = 0x62;
        mSequence[8].down   = true;
        mSequence[9].keyval = 0x62;
        mSequence[9].down   = false;

        mSequence[10].keyval = 0x52;
        mSequence[10].down   = true;
        mSequence[11].keyval = 0x52;
        mSequence[11].down   = false;

        mSequence[12].keyval = 0x56;
        mSequence[12].down   = true;
        mSequence[13].keyval = 0x56;
        mSequence[13].down   = false;

        mSequence[14].keyval = 0x25;
        mSequence[14].down   = true;
        mSequence[15].keyval = 0x81;
        mSequence[15].down   = true;
        mSequence[16].keyval = 0x81;
        mSequence[16].down   = false;
        mSequence[17].keyval = 0x25;
        mSequence[17].down   = false;

        mSequence[18].keyval = 0x00;
    }
示例#4
0
    tUBYTE KeyTrans::get(SDL_Event & event)
    {
        if (event.key.keysym.sym >= 320)
        {
            return 0xff;
        }
        else
        {
            if (event.key.keysym.mod & KMOD_MODE)
            {
                if (hasSequence()) return 0xff;
                switch(event.type)
                {
                case SDL_KEYDOWN: // |-Sign under Linux !!

                    if (event.key.keysym.sym == SDLK_LESS)
                    {
                        mSequence[0].keyval = 0x25;
                        mSequence[0].down   = true;
                        mSequence[1].keyval = 0x32;
                        mSequence[1].down   = true;
                        mSequence[2].keyval = 0x00;
                    }
                    break;

                case SDL_KEYUP:
                    if (event.key.keysym.sym == SDLK_LESS)
                    {
                        mSequence[0].keyval = 0x32;
                        mSequence[0].down   = false;
                        mSequence[1].keyval = 0x25;
                        mSequence[1].down   = false;
                        mSequence[2].keyval = 0x00;
                    }
                    break;

                default:
                    break;
                }
            }
            else return mTable[event.key.keysym.sym];
        }
        return 0xff;
    }