Release Healer Man 0.1.7
This commit is contained in:
@@ -1,17 +1,36 @@
|
||||
import { Sparkles } from "@react-three/drei";
|
||||
import { RigidBody } from "@react-three/rapier";
|
||||
import type { DungeonDefinition } from "../game/dungeonTypes";
|
||||
import {
|
||||
DUNGEON_PHYSICAL_COLLISION_GROUPS,
|
||||
DUNGEON_WALL_COLLISION_GROUPS,
|
||||
} from "./dungeonLineOfSight";
|
||||
|
||||
interface SlabProps {
|
||||
position: [number, number, number];
|
||||
size: [number, number, number];
|
||||
rotationY?: number;
|
||||
color?: string;
|
||||
blocksLineOfSight?: boolean;
|
||||
}
|
||||
|
||||
function CaveSlab({ position, size, rotationY = 0, color = "#25352b" }: SlabProps) {
|
||||
function CaveSlab({
|
||||
position,
|
||||
size,
|
||||
rotationY = 0,
|
||||
color = "#25352b",
|
||||
blocksLineOfSight = false,
|
||||
}: SlabProps) {
|
||||
return (
|
||||
<RigidBody type="fixed" colliders="cuboid" position={position} rotation={[0, rotationY, 0]}>
|
||||
<RigidBody
|
||||
type="fixed"
|
||||
colliders="cuboid"
|
||||
collisionGroups={blocksLineOfSight
|
||||
? DUNGEON_WALL_COLLISION_GROUPS
|
||||
: DUNGEON_PHYSICAL_COLLISION_GROUPS}
|
||||
position={position}
|
||||
rotation={[0, rotationY, 0]}
|
||||
>
|
||||
<mesh receiveShadow castShadow>
|
||||
<boxGeometry args={size} />
|
||||
<meshStandardMaterial color={color} roughness={0.96} metalness={0.02} />
|
||||
@@ -45,11 +64,11 @@ export function PrototypeDungeon({ definition }: { readonly definition: DungeonD
|
||||
rotation={[0, entrance.yaw, 0]}
|
||||
>
|
||||
<CaveSlab position={[0, -0.3, 11]} size={[7.4, 0.6, 28]} />
|
||||
<CaveSlab position={[-4.1, 2.15, 11]} size={[1.1, 4.9, 28]} color="#1c2c24" />
|
||||
<CaveSlab position={[4.1, 2.15, 11]} size={[1.1, 4.9, 28]} color="#1c2c24" />
|
||||
<CaveSlab position={[-4.1, 2.15, 11]} size={[1.1, 4.9, 28]} color="#1c2c24" blocksLineOfSight />
|
||||
<CaveSlab position={[4.1, 2.15, 11]} size={[1.1, 4.9, 28]} color="#1c2c24" blocksLineOfSight />
|
||||
<CaveSlab position={[0, -0.36, 31]} size={[18, 0.72, 15]} color="#2b3d31" />
|
||||
<CaveSlab position={[-9.25, 2, 31]} size={[1.1, 4.7, 15]} color="#1b2a23" />
|
||||
<CaveSlab position={[9.25, 2, 31]} size={[1.1, 4.7, 15]} color="#1b2a23" />
|
||||
<CaveSlab position={[-9.25, 2, 31]} size={[1.1, 4.7, 15]} color="#1b2a23" blocksLineOfSight />
|
||||
<CaveSlab position={[9.25, 2, 31]} size={[1.1, 4.7, 15]} color="#1b2a23" blocksLineOfSight />
|
||||
<CaveSlab position={[3.3, -0.3, 44]} size={[9, 0.6, 19]} rotationY={-0.34} />
|
||||
{stonePositions.map((position, index) => <Stone key={index} position={position} />)}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user