From cba90d4441bd2e81efb262e663e9c53c24322a54 Mon Sep 17 00:00:00 2001 From: PilzAdam Date: Sat, 20 Jul 2013 14:50:19 +0200 Subject: Make range of tools configureable --- src/game.cpp | 7 ++++++- src/itemdef.cpp | 5 ++++- src/itemdef.h | 1 + src/script/common/c_content.cpp | 2 ++ 4 files changed, 13 insertions(+), 2 deletions(-) (limited to 'src') diff --git a/src/game.cpp b/src/game.cpp index ff694d12e..3f14f09d4 100644 --- a/src/game.cpp +++ b/src/game.cpp @@ -2488,7 +2488,12 @@ void the_game( //u32 t1 = device->getTimer()->getRealTime(); - f32 d = 4; // max. distance + f32 d = playeritem_def.range; // max. distance + f32 d_hand = itemdef->get("").range; + if(d < 0 && d_hand >= 0) + d = d_hand; + else if(d < 0) + d = 4.0; core::line3d shootline(camera_position, camera_position + camera_direction * BS * (d+1)); diff --git a/src/itemdef.cpp b/src/itemdef.cpp index e7498ce55..4ac23d0fc 100644 --- a/src/itemdef.cpp +++ b/src/itemdef.cpp @@ -76,6 +76,7 @@ ItemDefinition& ItemDefinition::operator=(const ItemDefinition &def) groups = def.groups; node_placement_prediction = def.node_placement_prediction; sound_place = def.sound_place; + range = def.range; return *this; } @@ -109,6 +110,7 @@ void ItemDefinition::reset() } groups.clear(); sound_place = SimpleSoundSpec(); + range = -1; node_placement_prediction = ""; } @@ -146,6 +148,7 @@ void ItemDefinition::serialize(std::ostream &os, u16 protocol_version) const //serializeSimpleSoundSpec(sound_place, os); os<