diff options
| author | Japa | 2011-04-03 11:55:02 +0000 |
|---|---|---|
| committer | Japa | 2011-04-03 11:55:02 +0000 |
| commit | 1a3d5f667e2fb32014d1b8f603d7948ccb7a4c89 (patch) | |
| tree | 69dc28900e5397a23019e7292551cc57e0a71372 /Block.cpp | |
| parent | b9c1e819ac4b10773e4caf4d7a2392d3839522c3 (diff) | |
| download | stonesense-1a3d5f667e2fb32014d1b8f603d7948ccb7a4c89.tar.gz stonesense-1a3d5f667e2fb32014d1b8f603d7948ccb7a4c89.tar.bz2 stonesense-1a3d5f667e2fb32014d1b8f603d7948ccb7a4c89.tar.xz | |
Added engravings.
Diffstat (limited to 'Block.cpp')
| -rw-r--r-- | Block.cpp | 42 |
1 files changed, 42 insertions, 0 deletions
@@ -56,6 +56,7 @@ Block::Block(WorldSegment* ownerSegment) downstairborders = 0;
lightborders = 255;
creature = 0;
+ engraving_character = 0;
}
@@ -181,6 +182,13 @@ void Block::Draw(){ }
}
+ //Floor Engravings
+ if((floorType > 0) && engraving_character && engraving_flags.floor)
+ {
+ DrawSpriteFromSheet( engraving_character, IMGEngFloorSheet, al_map_rgba_f(1.0,1.0,1.0,((engraving_quality + 5.0f) / 10.0f)), drawx, drawy, this );
+ }
+
+
////draw surf
//if(eff_oceanwave > 0)
//{
@@ -194,6 +202,7 @@ void Block::Draw(){ // al_draw_tinted_bitmap(sprite_webing, drawx, drawy - (WALLHEIGHT), 0);
// al_set_separate_blender(op, src, dst, alpha_op, alpha_src, alpha_dst, color);
//}
+
//Draw Ramp
if(ramp.type > 0){
spriteobject = GetBlockSpriteMap(ramp.type, material, consForm);
@@ -319,6 +328,39 @@ void Block::Draw(){ }
}
+ //Wall Engravings
+ if((wallType > 0) && engraving_character)
+ {
+ if(ownerSegment->rotation == 0)
+ {
+ if(engraving_flags.east)
+ DrawSpriteFromSheet( engraving_character, IMGEngRightSheet, al_map_rgba_f(1.0,1.0,1.0,((engraving_quality + 5.0f) / 10.0f)), drawx, drawy, this );
+ if(engraving_flags.south)
+ DrawSpriteFromSheet( engraving_character, IMGEngLeftSheet, al_map_rgba_f(1.0,1.0,1.0,((engraving_quality + 5.0f) / 10.0f)), drawx, drawy, this );
+ }
+ if(ownerSegment->rotation == 1)
+ {
+ if(engraving_flags.north)
+ DrawSpriteFromSheet( engraving_character, IMGEngRightSheet, al_map_rgba_f(1.0,1.0,1.0,((engraving_quality + 5.0f) / 10.0f)), drawx, drawy, this );
+ if(engraving_flags.east)
+ DrawSpriteFromSheet( engraving_character, IMGEngLeftSheet, al_map_rgba_f(1.0,1.0,1.0,((engraving_quality + 5.0f) / 10.0f)), drawx, drawy, this );
+ }
+ if(ownerSegment->rotation == 2)
+ {
+ if(engraving_flags.west)
+ DrawSpriteFromSheet( engraving_character, IMGEngRightSheet, al_map_rgba_f(1.0,1.0,1.0,((engraving_quality + 5.0f) / 10.0f)), drawx, drawy, this );
+ if(engraving_flags.north)
+ DrawSpriteFromSheet( engraving_character, IMGEngLeftSheet, al_map_rgba_f(1.0,1.0,1.0,((engraving_quality + 5.0f) / 10.0f)), drawx, drawy, this );
+ }
+ if(ownerSegment->rotation == 3)
+ {
+ if(engraving_flags.south)
+ DrawSpriteFromSheet( engraving_character, IMGEngRightSheet, al_map_rgba_f(1.0,1.0,1.0,((engraving_quality + 5.0f) / 10.0f)), drawx, drawy, this );
+ if(engraving_flags.west)
+ DrawSpriteFromSheet( engraving_character, IMGEngLeftSheet, al_map_rgba_f(1.0,1.0,1.0,((engraving_quality + 5.0f) / 10.0f)), drawx, drawy, this );
+ }
+ }
+
if(water.index > 0)
{
|
