Exemplo n.º 1
0
void DreamWebEngine::pickupConts(uint8 from, uint8 containerEx) {
	const DynObject *obj = getFreeAd(from);

	if (obj->slotCount == 255)
		return; // not openable

	for (uint8 index = 0; index < 80; ++index) {
		DynObject *freeObj = getFreeAd(index);

		if (freeObj->mapad[0] != kFreeObjectType)
			continue;
		if (freeObj->mapad[1] != from)
			continue;

		uint8 pos = getExPos();
		DynObject *exObj = getExAd(pos);

		memcpy(exObj, freeObj, sizeof(DynObject));
		exObj->currentLocation = _realLocation;
		exObj->initialLocation = _realLocation;
		exObj->index = index;
		exObj->mapad[0] = 4; // kExObjectType?
		exObj->mapad[1] = containerEx;

		transferFrame(index, pos, 0);
		transferFrame(index, pos, 1);
		transferText(index, pos);

		freeObj->mapad[0] = 0xFF;
	}
}
Exemplo n.º 2
0
byte DreamWebEngine::transferToEx(uint8 from) {
	emergencyPurge();

	byte pos = getExPos();
	DynObject *exObject = getExAd(pos);

	DynObject *freeObject = getFreeAd(from);

	memcpy(exObject, freeObject, sizeof(DynObject));

	exObject->currentLocation = _realLocation;
	exObject->initialLocation = _realLocation;
	exObject->index = from;
	exObject->mapad[0] = 4;
	exObject->mapad[1] = 255;
	exObject->mapad[2] = _lastInvPos;

	transferFrame(from, pos, 0);
	transferFrame(from, pos, 1);
	transferText(from, pos);

	freeObject->mapad[0] = 254;

	pickupConts(from, pos);

	return pos;
}
Exemplo n.º 3
0
void DispmanxWrapper::action()
{
	transferFrame(_grabber);
}
Exemplo n.º 4
0
void OsxWrapper::action()
{
	transferFrame(_grabber);
}
Exemplo n.º 5
0
void AmlogicWrapper::action()
{
	transferFrame(_grabber);
}