예제 #1
0
bool FeatureAttack::Attack(sh_p<Enti> target)
{
	if( target.get() == enti )
	{
		// Log ( do not attak yourself ) :-)
		return false;
	}

	// Try move and set OnComplete for this
	if( !enti->Do<FeatureMove>()->Move(target->coord, this) )
		return false;

	this->target = target;
	return true;
}
예제 #2
0
void MapArea::AddObjectWithPainter(sh_p<QPixmap> &pixmap, const QRect &rc,
		sh_p<ObjectInfo> &obj, const sh_p<ObjectInfo> &newObj)
{	
	obj = newObj;
	{
		QPainter painter(pixmap.get());
		painter.setCompositionMode(QPainter::CompositionMode_Source);
		if(obj)
			painter.drawPixmap(rc, obj->image);
		else
			painter.fillRect(rc, QColor(0,0,0,0));
	}
	this->update(rc);

	mainForm->MapChanged(); // !!!
}