From f11daf2fdc3f3e090efbbc6beec8d3af831e8280 Mon Sep 17 00:00:00 2001 From: nathan Date: Sat, 11 Oct 2025 05:03:05 -0600 Subject: More john and ron are correct size now --- assets/models/ShopKeeper.mtl | 2 +- assets/models/ShopKeeper.obj | 220 ++++++++++++++++++------------------ blender/ShopKeeper/ShopKeeper.blend | Bin 522787 -> 522707 bytes src/entity.c | 15 +-- src/entity.h | 10 +- src/player.h | 2 +- src/world.c | 14 ++- src/world.h | 2 +- 8 files changed, 136 insertions(+), 129 deletions(-) diff --git a/assets/models/ShopKeeper.mtl b/assets/models/ShopKeeper.mtl index 2e0945d..62017a4 100644 --- a/assets/models/ShopKeeper.mtl +++ b/assets/models/ShopKeeper.mtl @@ -9,4 +9,4 @@ Ke 0.000000 0.000000 0.000000 Ni 1.500000 d 1.000000 illum 2 -map_Kd image.png +map_Kd meow.png diff --git a/assets/models/ShopKeeper.obj b/assets/models/ShopKeeper.obj index 4f255e1..cfb9d5a 100644 --- a/assets/models/ShopKeeper.obj +++ b/assets/models/ShopKeeper.obj @@ -2,116 +2,116 @@ # www.blender.org mtllib ShopKeeper.mtl o ShopKeeper -v -2.695822 -26.945299 -0.999997 -v -2.497600 -8.347488 -0.999998 -v -1.913990 -26.945299 -0.623487 -v -1.715768 -8.347488 -0.623488 -v -1.720894 -26.945299 0.222524 -v -1.522672 -8.347488 0.222523 -v -2.261938 -26.945299 0.900972 -v -2.063716 -8.347488 0.900970 -v -3.129706 -26.945299 0.900972 -v -2.931484 -8.347488 0.900970 -v -3.670750 -26.945299 0.222524 -v -3.472528 -8.347488 0.222523 -v -3.477654 -26.945299 -0.623487 -v -3.279431 -8.347488 -0.623488 -v 2.695822 -26.945297 -0.999997 -v 2.497599 -8.347488 -0.999998 -v 1.913990 -26.945297 -0.623486 -v 1.715768 -8.347488 -0.623488 -v 1.720894 -26.945297 0.222524 -v 1.522671 -8.347488 0.222522 -v 2.261938 -26.945297 0.900972 -v 2.063716 -8.347488 0.900970 -v 3.129705 -26.945297 0.900972 -v 2.931483 -8.347488 0.900970 -v 3.670749 -26.945297 0.222524 -v 3.472527 -8.347488 0.222522 -v 3.477653 -26.945297 -0.623486 -v 3.279431 -8.347488 -0.623488 -v -0.000000 13.381283 -0.000003 -v 4.188780 16.581251 3.043289 -v -1.599940 16.581251 4.924188 -v -5.177654 16.581251 -0.000003 -v -1.599940 16.581251 -4.924194 -v 4.188780 16.581251 -3.043295 -v 1.599940 21.758932 4.924188 -v -4.188781 21.758932 3.043289 -v -4.188781 21.758932 -3.043295 -v 1.599940 21.758932 -4.924194 -v 5.177654 21.758932 -0.000003 -v -0.000000 24.958899 -0.000003 -v -0.000000 -10.192428 -0.000000 -v 5.055491 -4.192581 2.593663 -v -1.930988 -4.192585 4.196673 -v -6.248920 -4.192530 -0.000000 -v -1.930988 -4.192585 -4.196674 -v 5.055491 -4.192581 -2.593663 -v 1.930989 7.619217 4.196673 -v -5.055491 7.619212 2.593663 -v -5.055491 7.619212 -2.593663 -v 1.930989 7.619217 -4.196674 -v 6.248920 7.619160 -0.000000 -v -0.000000 14.919127 -0.000000 -v -1.134998 -9.520267 2.466724 -v 2.971522 -9.520264 1.524506 -v 1.836536 -5.229477 3.991255 -v 5.943062 -5.229454 -0.000000 -v 2.971522 -9.520264 -1.524506 -v -3.673018 -9.520230 -0.000000 -v -4.808044 -5.229458 2.466732 -v -1.134998 -9.520267 -2.466724 -v -4.808044 -5.229458 -2.466733 -v 1.836536 -5.229477 -3.991255 -v 6.644578 1.713316 1.524512 -v 6.644578 1.713316 -1.524513 -v -0.000000 1.713316 4.933494 -v 4.106572 1.713316 3.991280 -v -6.644578 1.713316 1.524512 -v -4.106572 1.713316 3.991280 -v -4.106572 1.713316 -3.991280 -v -6.644578 1.713316 -1.524513 -v 4.106572 1.713316 -3.991280 -v -0.000000 1.713316 -4.933495 -v 4.808044 8.656088 2.466732 -v -1.836536 8.656107 3.991255 -v -5.943062 8.656084 -0.000000 -v -1.836536 8.656107 -3.991255 -v 4.808044 8.656088 -2.466733 -v 1.134998 12.946896 2.466724 -v 3.673018 12.946861 -0.000000 -v -2.971522 12.946894 1.524506 -v -2.971522 12.946894 -1.524506 -v 1.134998 12.946896 -2.466724 -v -20.421091 5.069879 -0.810303 -v -5.004219 8.558590 -0.810304 -v -20.421091 4.436358 -0.505216 -v -5.004219 7.925070 -0.505217 -v -20.421091 4.279891 0.180309 -v -5.004219 7.768603 0.180308 -v -20.421091 4.718301 0.730057 -v -5.004219 8.207012 0.730057 -v -20.421091 5.421456 0.730057 -v -5.004219 8.910168 0.730057 -v -20.421091 5.859866 0.180309 -v -5.004219 9.348577 0.180308 -v -20.421091 5.703399 -0.505216 -v -5.004219 9.192110 -0.505217 -v 20.421093 5.069878 -0.810303 -v 5.004219 8.558590 -0.810304 -v 20.421093 4.436358 -0.505216 -v 5.004219 7.925070 -0.505217 -v 20.421093 4.279891 0.180309 -v 5.004219 7.768603 0.180308 -v 20.421093 4.718301 0.730057 -v 5.004219 8.207012 0.730057 -v 20.421093 5.421456 0.730057 -v 5.004219 8.910166 0.730057 -v 20.421093 5.859866 0.180309 -v 5.004219 9.348576 0.180308 -v 20.421093 5.703398 -0.505216 -v 5.004219 9.192110 -0.505217 +v -0.134791 -1.347265 -0.050000 +v -0.124880 -0.417374 -0.050000 +v -0.095700 -1.347265 -0.031174 +v -0.085788 -0.417374 -0.031174 +v -0.086045 -1.347265 0.011126 +v -0.076134 -0.417374 0.011126 +v -0.113097 -1.347265 0.045049 +v -0.103186 -0.417374 0.045049 +v -0.156485 -1.347265 0.045049 +v -0.146574 -0.417374 0.045049 +v -0.183537 -1.347265 0.011126 +v -0.173626 -0.417374 0.011126 +v -0.173883 -1.347265 -0.031174 +v -0.163972 -0.417374 -0.031174 +v 0.134791 -1.347265 -0.050000 +v 0.124880 -0.417374 -0.050000 +v 0.095700 -1.347265 -0.031174 +v 0.085788 -0.417374 -0.031174 +v 0.086045 -1.347265 0.011126 +v 0.076134 -0.417374 0.011126 +v 0.113097 -1.347265 0.045049 +v 0.103186 -0.417374 0.045049 +v 0.156485 -1.347265 0.045049 +v 0.146574 -0.417374 0.045049 +v 0.183537 -1.347265 0.011126 +v 0.173626 -0.417374 0.011126 +v 0.173883 -1.347265 -0.031174 +v 0.163972 -0.417374 -0.031174 +v 0.000000 0.669064 -0.000000 +v 0.209439 0.829063 0.152164 +v -0.079997 0.829063 0.246209 +v -0.258883 0.829063 -0.000000 +v -0.079997 0.829063 -0.246210 +v 0.209439 0.829063 -0.152165 +v 0.079997 1.087947 0.246209 +v -0.209439 1.087947 0.152164 +v -0.209439 1.087947 -0.152165 +v 0.079997 1.087947 -0.246210 +v 0.258883 1.087947 -0.000000 +v 0.000000 1.247945 -0.000000 +v 0.000000 -0.509621 0.000000 +v 0.252775 -0.209629 0.129683 +v -0.096549 -0.209629 0.209834 +v -0.312446 -0.209626 0.000000 +v -0.096549 -0.209629 -0.209834 +v 0.252775 -0.209629 -0.129683 +v 0.096549 0.380961 0.209834 +v -0.252775 0.380961 0.129683 +v -0.252775 0.380961 -0.129683 +v 0.096549 0.380961 -0.209834 +v 0.312446 0.380958 0.000000 +v 0.000000 0.745956 0.000000 +v -0.056750 -0.476013 0.123336 +v 0.148576 -0.476013 0.076225 +v 0.091827 -0.261474 0.199563 +v 0.297153 -0.261473 0.000000 +v 0.148576 -0.476013 -0.076225 +v -0.183651 -0.476012 0.000000 +v -0.240402 -0.261473 0.123337 +v -0.056750 -0.476013 -0.123336 +v -0.240402 -0.261473 -0.123337 +v 0.091827 -0.261474 -0.199563 +v 0.332229 0.085666 0.076226 +v 0.332229 0.085666 -0.076226 +v 0.000000 0.085666 0.246675 +v 0.205329 0.085666 0.199564 +v -0.332229 0.085666 0.076226 +v -0.205329 0.085666 0.199564 +v -0.205329 0.085666 -0.199564 +v -0.332229 0.085666 -0.076226 +v 0.205329 0.085666 -0.199564 +v 0.000000 0.085666 -0.246675 +v 0.240402 0.432804 0.123337 +v -0.091827 0.432805 0.199563 +v -0.297153 0.432804 0.000000 +v -0.091827 0.432805 -0.199563 +v 0.240402 0.432804 -0.123337 +v 0.056750 0.647345 0.123336 +v 0.183651 0.647343 0.000000 +v -0.148576 0.647345 0.076225 +v -0.148576 0.647345 -0.076225 +v 0.056750 0.647345 -0.123336 +v -1.021055 0.253494 -0.040515 +v -0.250211 0.427929 -0.040515 +v -1.021055 0.221818 -0.025261 +v -0.250211 0.396254 -0.025261 +v -1.021055 0.213995 0.009015 +v -0.250211 0.388430 0.009015 +v -1.021055 0.235915 0.036503 +v -0.250211 0.410351 0.036503 +v -1.021055 0.271073 0.036503 +v -0.250211 0.445508 0.036503 +v -1.021055 0.292993 0.009015 +v -0.250211 0.467429 0.009015 +v -1.021055 0.285170 -0.025261 +v -0.250211 0.459606 -0.025261 +v 1.021055 0.253494 -0.040515 +v 0.250211 0.427929 -0.040515 +v 1.021055 0.221818 -0.025261 +v 0.250211 0.396254 -0.025261 +v 1.021055 0.213995 0.009015 +v 0.250211 0.388430 0.009015 +v 1.021055 0.235915 0.036503 +v 0.250211 0.410351 0.036503 +v 1.021055 0.271073 0.036503 +v 0.250211 0.445508 0.036503 +v 1.021055 0.292993 0.009015 +v 0.250211 0.467429 0.009015 +v 1.021055 0.285170 -0.025261 +v 0.250211 0.459606 -0.025261 vn -0.0023 -0.6212 -0.7836 vn 0.0023 0.6212 -0.7836 vn 0.6098 -0.6244 -0.4882 diff --git a/blender/ShopKeeper/ShopKeeper.blend b/blender/ShopKeeper/ShopKeeper.blend index 21aafdb..b3ee9d0 100644 Binary files a/blender/ShopKeeper/ShopKeeper.blend and b/blender/ShopKeeper/ShopKeeper.blend differ diff --git a/src/entity.c b/src/entity.c index 0c0b914..018b450 100644 --- a/src/entity.c +++ b/src/entity.c @@ -78,16 +78,13 @@ Entity createEntity(EntityId id, Vector3 position) break; // TODO: do the thing case JOHN: + case RON: // John and Ron ARE NOT the same person. entity.box = (BoundingBox){ - .min = (Vector3){-1.0, -1.0, -1.0}, - .max = (Vector3){1.0, 1.0, 1.0} - }; - - break; - case RON: - entity.box = (BoundingBox){ - .min = (Vector3){-1.0, -1.0, -1.0}, - .max = (Vector3){1.0, 1.0, 1.0} + .min = (Vector3){-SHOPKEEPER_WIDTH, -SHOPKEEPER_HEIGHT, + -SHOPKEEPER_THICKNESS}, + .max = (Vector3){SHOPKEEPER_WIDTH, SHOPKEEPER_HEIGHT, + SHOPKEEPER_THICKNESS} + }; break; diff --git a/src/entity.h b/src/entity.h index a83a5d0..9c842d3 100644 --- a/src/entity.h +++ b/src/entity.h @@ -17,9 +17,9 @@ #define UTILITY_POLE_HEIGHT 100.0 #define UTILITY_POLE_RADIUS 3.0 -#define SAMANTHA_WIDTH 2.65966 / 2.0 -#define SAMANTHA_HEIGHT 3.21054 / 2.0 -#define SAMANTHA_THICKNESS 1.46845 / 2.0 +#define SAMANTHA_WIDTH (2.65966 / 2.0) +#define SAMANTHA_HEIGHT (3.21054 / 2.0) +#define SAMANTHA_THICKNESS (1.46845 / 2.0) #define SAMANTHA_STATIC_SPEED 24 #define SAMANTHA_STATIC_FRAMES 4 @@ -36,6 +36,10 @@ #define MEDICAL_TRASH_SCALE 2.0 +#define SHOPKEEPER_WIDTH (2.04211 / 2.0) +#define SHOPKEEPER_HEIGHT (2.59521 / 2.0) +#define SHOPKEEPER_THICKNESS (0.493349 / 2.0) + typedef int8_t EntityId; enum { diff --git a/src/player.h b/src/player.h index 9bc049f..d66b9dd 100644 --- a/src/player.h +++ b/src/player.h @@ -4,7 +4,7 @@ #define PLAYER_H #define PLAYER_HEIGHT 2.0 -#define PLAYER_SPEED 10.0 +#define PLAYER_SPEED 8.0 typedef struct { Vector3 position; diff --git a/src/world.c b/src/world.c index b6fb9dc..42e3488 100644 --- a/src/world.c +++ b/src/world.c @@ -716,8 +716,14 @@ Texture generateGroundTexture() return texture; } -Seed generateWorldCharacters(World* world, Seed seed, int index) +Seed generateWorldCharacters(World* world, Seed seed, WorldUID start) { + WorldUID index = start; + + Entity ron = createEntity(RON, Vector3Scale(world->size, 0.5)); + placeEntityOnGround(&ron, world); + world->entities[index] = ron; + return seed; } @@ -779,9 +785,9 @@ World createWorld(Seed seed, const Assets* assets) seed = generateWorldUtilityPoles(&world, assets, seed, start, end); // Characters. - /* start = end; */ - /* end = WORLD_CHARACTER_COUNT + start; */ - /* seed = generateWorldCharacters(&world, seed, start); */ + start = end; + end = WORLD_CHARACTER_COUNT + start; + seed = generateWorldCharacters(&world, seed, start); // Items. start = end; diff --git a/src/world.h b/src/world.h index 456d68a..93bcb38 100644 --- a/src/world.h +++ b/src/world.h @@ -32,7 +32,7 @@ #define PLACE_POND_WALKING_AREA 7 // Characters. -#define WORLD_CHARACTER_COUNT 0 +#define WORLD_CHARACTER_COUNT 1 #define SAMANTHA_OFFSET (Vector3){0.0, 0.0, 2.0} #define SAMANTHAS_SPOT_TRASHCAN_COUNT 5 -- cgit v1.2.3