Compare commits

...

1121 Commits

Author SHA1 Message Date
𝕵𝖔𝖍𝖆𝖓𝖓𝖊𝖘 𝕱𝖗𝖎𝖙𝖟 995679d7ae Merge pull request 'Fix most deaths not producing a death message.' (#3332) from CyberMango/MineClone2:dev/mango/fix_mt_deaths_messages into master
Reviewed-on: MineClone2/MineClone2#3332
Reviewed-by: 𝕵𝖔𝖍𝖆𝖓𝖓𝖊𝖘 𝕱𝖗𝖎𝖙𝖟 <mrrar@noreply.git.minetest.land>
2023-01-20 22:32:22 +00:00
CyberMango 78f32d2dd4 Removed the approved field from death reasons.
This created a strange bug that only death reasons created by
mcl_utils.deal_damage were "approved" so only they triggered running the
death callbacks, so only they triggered printing a death message.
Therefore most deaths did not produce a death message.
2023-01-20 19:15:21 +02:00
ancientmarinerdev 1c65e0ad68 Merge pull request 'Add how to play notes' (#3341) from add_download_notes into master
Reviewed-on: MineClone2/MineClone2#3341
2023-01-20 15:15:51 +00:00
ancientmarinerdev 6900748429 Add how to play notes 2023-01-20 15:14:45 +00:00
ancientmarinerdev f09b723885 Merge pull request 'Release 0.82' (#3337) from release_0_82_0 into master
Reviewed-on: MineClone2/MineClone2#3337
2023-01-20 14:43:45 +00:00
ancientmarinerdev efd3420d52 Post-release set version 0.82.0-SNAPSHOT 2023-01-19 23:34:04 +00:00
ancientmarinerdev 62be5a06f6 Update release notes 2023-01-19 22:22:48 +00:00
ancientmarinerdev 683799aea5 Update release steps 2023-01-19 21:54:01 +00:00
ancientmarinerdev 383cbf96a6 Pre-release set version 0.82.0 2023-01-19 21:51:16 +00:00
ancientmarinerdev a7632e767d Run credits update script for release 0.82 2023-01-19 21:09:42 +00:00
ancientmarinerdev 99d09c76ae Merge pull request 'mcl_bamboo2_cleanup' (#3327) from mcl_bamboo2_cleanup into master
Reviewed-on: MineClone2/MineClone2#3327
Reviewed-by: ancientmarinerdev <ancientmariner_dev@proton.me>
2023-01-19 21:01:08 +00:00
ancientmarinerdev c7ebe1b8cd Updated Bamboo textures by Nicu. Updated credits as per request from Michieal 2023-01-19 20:51:49 +00:00
ancientmarinerdev 5c464f1c1d Merge pull request 'Grass Footstep Sound Fix' (#3312) from grass_sound_revert into master
Reviewed-on: MineClone2/MineClone2#3312
Reviewed-by: ancientmarinerdev <ancientmariner_dev@proton.me>
2023-01-19 13:02:38 +00:00
ancientmarinerdev 87e6842c00 Merge pull request 'Update credits' (#3334) from release_0_82_credits into master
Reviewed-on: MineClone2/MineClone2#3334
2023-01-19 01:36:13 +00:00
Michieal b258ccffdc Merge Master into mcl_bamboo_cleanup 2023-01-18 20:29:40 -05:00
ancientmarinerdev 83b0807218 Update credits 2023-01-19 00:04:16 +00:00
Michieal a00ef4500d Merge branch 'master' into mcl_bamboo2_cleanup 2023-01-18 18:40:23 -05:00
PrairieWind c49aef3251 Merge pull request 'Disable zombie siege raid until we stop zombies pathing through door' (#3329) from disable_zombie_siege into master
Reviewed-on: MineClone2/MineClone2#3329
Reviewed-by: PrairieWind <prairie.astronomer1@gmail.com>
2023-01-18 20:51:04 +00:00
ancientmarinerdev f3ba32d739 Disable zombie siege raid until we stop zombies pathing through door 2023-01-18 19:47:45 +00:00
Michieal ed03cb470d Change Bamboo Trapdoor to be Boring. 2023-01-17 22:12:57 -05:00
FossFanatic 513d148eaf Merge branch 'master' into grass_sound_revert 2023-01-17 12:44:16 +00:00
Michieal b99487b6ab Merge branch 'master' into mcl_bamboo2_cleanup 2023-01-16 20:19:03 -05:00
ancientmarinerdev 8adc1d48b2 Merge pull request 'Remove "mcl_farming:beetroot_item" from fortune drop, so Fortune only gives seeds.' (#3328) from beetroot_fortune_hotfix into master
Reviewed-on: MineClone2/MineClone2#3328
Reviewed-by: ancientmarinerdev <ancientmariner_dev@proton.me>
2023-01-17 00:59:25 +00:00
Michieal ac30e25065 Remove "mcl_farming:beetroot_item" from fortune drop, so Fortune only gives seeds. 2023-01-16 19:40:07 -05:00
Michieal 0931af21c8 Remove most oak trees from Bamboo biomes. 2023-01-16 18:34:48 -05:00
Michieal 77a8ca689f Give textures more definition. 2023-01-16 18:16:26 -05:00
ancientmarinerdev 30d3b7ee23 Merge pull request 'mcl_bamboo Part 2.' (#3208) from mcl_bamboo_too into master
Reviewed-on: MineClone2/MineClone2#3208
Reviewed-by: ancientmarinerdev <ancientmariner_dev@proton.me>
2023-01-16 20:22:09 +00:00
Michieal 55bb9800f4 removed errant logging line. 2023-01-16 15:07:57 -05:00
Michieal b805ae9926 Adjust bamboo growth rates to be close to the MC wiki. 2023-01-16 15:01:38 -05:00
𝕵𝖔𝖍𝖆𝖓𝖓𝖊𝖘 𝕱𝖗𝖎𝖙𝖟 90c74f4a6a Merge pull request 'Fix undeclared global variable in mcl_buckets' (#3314) from buckets_warning into master
Reviewed-on: MineClone2/MineClone2#3314
Reviewed-by: Michieal <michieal@noreply.git.minetest.land>
2023-01-16 19:02:34 +00:00
𝕵𝖔𝖍𝖆𝖓𝖓𝖊𝖘 𝕱𝖗𝖎𝖙𝖟 6e6c11cde2 Fix undeclared global variable in mcl_buckets 2023-01-16 12:56:59 -06:00
ancientmarinerdev 8feefcdd7b Merge pull request 'Give longer to breed mobs. 1.5s is not enough' (#3298) from extend_breeding_time into master
Reviewed-on: MineClone2/MineClone2#3298
Reviewed-by: Michieal <michieal@noreply.git.minetest.land>
2023-01-16 00:01:40 +00:00
ancientmarinerdev 9b28baaad6 Give longer to breed mobs. 1.5s is not enough 2023-01-16 00:00:28 +00:00
PrairieWind 60a1a364dc Merge pull request 'Fix animals jumping way too high upon growing up' (#3316) from growth_jump_fixes into master
Reviewed-on: MineClone2/MineClone2#3316
Reviewed-by: Michieal <michieal@noreply.git.minetest.land>
2023-01-15 23:43:07 +00:00
b3nderman f9b021e4c6 Fix animals jumping way too high upon growing up 2023-01-15 22:47:05 +00:00
ancientmarinerdev 65fb911e5f Merge pull request 'Fix geode crash' (#3304) from fix_geode_crash into master
Reviewed-on: MineClone2/MineClone2#3304
Reviewed-by: Michieal <michieal@noreply.git.minetest.land>
2023-01-15 22:28:38 +00:00
ancientmarinerdev 38732e801d Fix geode crash 2023-01-15 22:27:02 +00:00
ancientmarinerdev 5ad2a990d4 Merge pull request 'Allow blaze spawners to be deactivated' (#3315) from fix_blaze_spawner_disable into master
Reviewed-on: MineClone2/MineClone2#3315
Reviewed-by: Michieal <michieal@noreply.git.minetest.land>
2023-01-15 22:24:59 +00:00
ancientmarinerdev 8f6c932e88 Allow blaze spawners to be deactivated 2023-01-15 22:22:14 +00:00
Michieal e9c202ae45 Added Bamboo Biomes to spawning.lua. 2023-01-15 15:30:34 -05:00
Michieal d6ee21d192 Merge branch 'master' into mcl_bamboo_too 2023-01-15 15:27:30 -05:00
PrairieWind 876fc2fb50 Merge pull request 'Fix tamed ocelot textures not being set correctly' (#3317) from tamed_cat_texture_fix into master
Reviewed-on: MineClone2/MineClone2#3317
Reviewed-by: Michieal <michieal@noreply.git.minetest.land>
2023-01-15 19:41:51 +00:00
Michieal 0c61035df0 Missing files from the optipng commit. (not exactly sure what happened.) 2023-01-15 14:30:12 -05:00
b3nderman a7fac7c550 Fix tamed ocelot textures not being set correctly 2023-01-15 16:57:47 +00:00
ancientmarinerdev 93c9fdfaae Merge pull request 'Light Blocks' (#3078) from light-blocks into master
Reviewed-on: MineClone2/MineClone2#3078
Reviewed-by: ancientmarinerdev <ancientmariner_dev@proton.me>
2023-01-15 15:37:10 +00:00
AFCMS 3027965314 Add comment 2023-01-15 15:32:42 +00:00
AFCMS e9c9f151de Let user dig light blocks when wielding a light block 2023-01-15 15:32:42 +00:00
AFCMS fb8262bf57 Make light blocks `buildable_to` 2023-01-15 15:32:42 +00:00
AFCMS 726358da4b Rename callbacks parameters to match Minetest documentation 2023-01-15 15:32:42 +00:00
AFCMS 515204d296 Update translation template and add french translation 2023-01-15 15:32:42 +00:00
AFCMS eb5f5678d6 Fix typo in barrier help text 2023-01-15 15:32:42 +00:00
AFCMS 33e2b79b2b Make nearby light blocks spawn particles when player wield one 2023-01-15 15:32:42 +00:00
AFCMS 7c497d9604 Remove config file 2023-01-15 15:32:42 +00:00
AFCMS 7c20896d5e Make light blocks not walkable 2023-01-15 15:32:42 +00:00
AFCMS cd70dd5b88 Spawn particle then placing light blocks 2023-01-15 15:32:42 +00:00
AFCMS 302970d220 Basic light blocks 2023-01-15 15:32:42 +00:00
AFCMS 79876635af Use `mcl_util.call_on_rightclick` in `on_place` callback for barrier block 2023-01-15 15:32:42 +00:00
AFCMS b9238b4069 Use new vectors 2023-01-15 15:32:42 +00:00
AFCMS bf25fca47d Remove support for `use_texture_alpha` bool values (mt 5.3) 2023-01-15 15:32:42 +00:00
AFCMS 92261e5fb5 Remove `stack_max` fields duplicated with default value 2023-01-15 15:32:42 +00:00
AFCMS 1e31e383d4 Fix invalid function signature for `on_place` callbacks + handling of possible nil value 2023-01-15 15:32:42 +00:00
AFCMS 4457432d32 Format file 2023-01-15 15:32:42 +00:00
ancientmarinerdev fa96f9d593 Merge pull request 'Music Hyphenation & Concision' (#3311) from music_hyphenation into master
Reviewed-on: MineClone2/MineClone2#3311
Reviewed-by: ancientmarinerdev <ancientmariner_dev@proton.me>
2023-01-14 22:00:15 +00:00
FossFanatic fbb4cf084f Revert grass footstep sound
This reverts the grass footstep sounds back to the one before the recent sound update by grorp.
2023-01-14 15:22:19 +00:00
FossFanatic 60b19b31ab Add hyphenation
This also adds hyphenation to `In-game`.
2023-01-14 10:21:35 +00:00
FossFanatic 871c4f24c2 Change some language stuff
This adds correct hyphenation and also makes things more concise.
2023-01-14 10:20:30 +00:00
𝕵𝖔𝖍𝖆𝖓𝖓𝖊𝖘 𝕱𝖗𝖎𝖙𝖟 dd15092052 Merge pull request 'Give an option for players to disable the in game music' (#3299) from music_settings_switch into master
Reviewed-on: MineClone2/MineClone2#3299
Reviewed-by: 𝕵𝖔𝖍𝖆𝖓𝖓𝖊𝖘 𝕱𝖗𝖎𝖙𝖟 <mrrar@noreply.git.minetest.land>
2023-01-13 21:31:20 +00:00
ancientmarinerdev ce485e89cd In game music review feedback fix 2023-01-13 15:04:40 -06:00
ancientmarinerdev 09a7348256 Give an option for players to disable the in game music 2023-01-13 15:04:40 -06:00
Michieal 3091e85b1c Optipng textures. 2023-01-12 22:17:26 -05:00
Michieal da277f9dc7 fixed missed line. 2023-01-12 22:16:02 -05:00
Michieal 27a487195a Merge branch 'master' into mcl_bamboo_too 2023-01-12 22:14:58 -05:00
Michieal 2fdc8cbdd4 Changed Bamboo Sign's inventory & wield image to match the placed sign.
Reduced the number of images that trapdoors need to work.
2023-01-12 22:12:05 -05:00
Michieal 0079cf807e Changed Bamboo Signs to use custom image. 2023-01-12 21:06:25 -05:00
𝕵𝖔𝖍𝖆𝖓𝖓𝖊𝖘 𝕱𝖗𝖎𝖙𝖟 899cfd5157 Merge pull request 'Added protection violation checker functions.' (#3274) from CyberMango/MineClone2:dev/mango/generic_protection_violation_functions into master
Reviewed-on: MineClone2/MineClone2#3274
Reviewed-by: 𝕵𝖔𝖍𝖆𝖓𝖓𝖊𝖘 𝕱𝖗𝖎𝖙𝖟 <mrrar@noreply.git.minetest.land>
2023-01-12 21:03:26 +00:00
CyberMango 64a7f76d5b Replaced positions check with an area check.
This one is using the minetest.is_area_protected so it should work
faster. It also doesnt require the user to manually add all the points
that should be checked so its nicer to use.
2023-01-12 21:22:36 +02:00
CyberMango b0d9eed3e1 Removed specific functions and added usage examples.
The specific functions didnt end up adding much simplicity, but did add
some degree of confusion.
2023-01-12 20:04:44 +02:00
CyberMango 685a7ff256 Added a function for a single position and better naming.
Now the functions are named with "position" instead of "node" to better
reflect what they do and what args they expect.

Also added a function for cehcking just a single position since thats
the most common use case, so it saves a small performance overhead.
2023-01-12 20:04:44 +02:00
CyberMango 949a2b787e Added protection violation checker functions.
1 completley generic and 3 more that use it for more specific cases -
  placing a node, modifying a node and planting over a node.
2023-01-12 20:04:44 +02:00
Michieal 9e76cd963d Adjust bamboo sign color 2023-01-12 03:51:42 -05:00
Michieal 522a7577de Fix Bamboo nodes showing up in creative inventory.
Fix lava bamboo node placement.
2023-01-12 03:47:13 -05:00
Michieal 7912239562 Merge remote-tracking branch 'origin/mcl_bamboo_too' into mcl_bamboo_too
# Conflicts:
#	mods/ITEMS/mcl_bamboo/textures/mcl_bamboo_bamboo_plank_mosaic.png
2023-01-12 03:30:01 -05:00
Michieal 396fedd8e7 temp commit - brownish, rather than yellow, colored palette for bamboo things. 2023-01-12 03:29:49 -05:00
Michieal f81eec6fff temp commit - brownish, rather than yellow, colored palette for bamboo things. 2023-01-12 03:28:29 -05:00
Michieal d2625d3ace Fix water node placement, and lava node placement. (Yes, nether lava too!) 2023-01-12 03:27:17 -05:00
Michieal a04d946879 Updated Licensing for additional images. 2023-01-11 21:50:34 -05:00
ancientmarinerdev 482a6071f5 Merge pull request 'Beetroot Seed fix' (#3294) from beetroot_seed_fix into master
Reviewed-on: MineClone2/MineClone2#3294
Reviewed-by: ancientmarinerdev <ancientmariner_dev@proton.me>
2023-01-11 22:27:58 +00:00
Michieal 6993559330 Updated relevant Credits for Bamboo and recent work. 2023-01-11 07:26:01 -05:00
Michieal b572363b8e temp commit. recolor scaffolds. 2023-01-11 07:16:41 -05:00
Michieal 00408b998c Fix -- Bamboo grow, bamboo place to be correct. 2023-01-11 07:16:12 -05:00
Michieal e7c238c17e Merge remote-tracking branch 'origin/mcl_bamboo_too' into mcl_bamboo_too
# Conflicts:
#	mods/ITEMS/mcl_bamboo/bamboo_base.lua
2023-01-11 02:32:28 -05:00
Michieal 1de806f6f8 Put height into placed, base, bamboo stalk nodes so that height checks work properly.
Fix placing bamboo on top of other bamboo nodes, when it would go above the decided height. It now stops just before the endcap node placement.

Fixed Errant log message.
Fixed itemstack removal while in creative mode.
2023-01-11 02:31:36 -05:00
Michieal b07e6fccdc Put height into placed, base, bamboo stalk nodes so that height checks work properly.
Fix placing bamboo on top of other bamboo nodes, when it would go above the decided height. It now stops just before the endcap node placement.
2023-01-11 02:22:30 -05:00
Michieal 04efa74115 Prevent growing "around" things in the way. 2023-01-11 02:19:19 -05:00
Michieal 2e8f56d098 Merge branch 'master' into mcl_bamboo_too 2023-01-10 22:29:28 -05:00
Michieal ff7299a444 Fix beetroot seeds not dropping.
Changed drop rate to 1-4.

Added in Fortune drops too. (Per the minecraft wiki.)
2023-01-10 21:38:42 -05:00
Michieal aad2d114f9 temp commit. recolor of the planks and scaffolds. 2023-01-10 20:49:38 -05:00
ancientmarinerdev 2ed3c1c480 Merge pull request 'Mob Fixes' (#3242) from mob_fixes into master
Reviewed-on: MineClone2/MineClone2#3242
Reviewed-by: Michieal <michieal@noreply.git.minetest.land>
2023-01-11 01:11:07 +00:00
ancientmarinerdev 111c885417 Added burger alias 2023-01-11 01:07:18 +00:00
ancientmarinerdev 8e1f00d428 Villager breeding is now unburgered. Burger now needs right click to initiate follow. 2023-01-11 01:07:18 +00:00
ancientmarinerdev 4fd4425aae Improved mob debug 2023-01-11 01:07:18 +00:00
ancientmarinerdev ac4cd2c325 Improve performance for head swivel check 2023-01-11 01:07:18 +00:00
ancientmarinerdev 01c8009c6a Tidy on_step function 2023-01-11 01:07:18 +00:00
ancientmarinerdev ef90820f67 Fix farm animals so they don't get into combat state 2023-01-11 01:07:18 +00:00
ancientmarinerdev d6d11b9526 Zombie villagers cannot despawn during curing process 2023-01-11 01:07:17 +00:00
ancientmarinerdev b0264b2736 Endermen now despawn when not holding a block. 2023-01-11 01:07:17 +00:00
Michieal c12f2cc565 Fix placement of bamboo endcap 2023-01-10 19:23:40 -05:00
Michieal 9f94f12127 Fix placement of bamboo onto bamboo nodes going higher than max height. 2023-01-10 18:48:50 -05:00
Michieal 784f3ec226 Made plank textures more dried bamboo looking. 2023-01-10 16:40:18 -05:00
Michieal 44a769397d Fix bamboo mosaic using wrong texture.
Fix error.
2023-01-10 15:36:17 -05:00
PrairieWind b3da85be64 Merge pull request 'mcl_music_without_menu_music' (#3291) from mcl_music_without_menu_music into master
Reviewed-on: MineClone2/MineClone2#3291
Reviewed-by: PrairieWind <prairie.astronomer1@gmail.com>
2023-01-10 19:15:22 +00:00
ancientmarinerdev 3ed32abc4e Add credit for nether music 2023-01-10 19:05:56 +00:00
kay27 9db6050638 Fix music interruption 2023-01-10 19:05:56 +00:00
kay27 7ceb953a56 Add different music for different dimensions 2023-01-10 19:05:56 +00:00
kay27 1894d8c5f0 Fix mcl_music: play to all players, play every day, overworld only 2023-01-10 19:05:56 +00:00
kay27 419d61edde Add trivial mcl_music mod and a piano track by diminixed 2023-01-10 19:05:55 +00:00
PrairieWind 9820309762 Merge pull request 'mcl_crimson_update' (#3289) from mcl_crimson_update into master
Reviewed-on: MineClone2/MineClone2#3289
Reviewed-by: PrairieWind <prairie.astronomer1@gmail.com>
2023-01-10 18:17:39 +00:00
Michieal 726eba7ed8 Make bamboo fence/gate less yellow. It's bamboo, not corn XD 2023-01-10 04:42:31 -05:00
Michieal f46581905a Added veins to the Hyphae log sides. 2023-01-10 04:30:29 -05:00
Michieal 4f6de581dd fixed the warped fungus mushroom texture.
fixed the warped fungus selection box.
2023-01-10 04:29:47 -05:00
Michieal eb8f7360a2 Merge branch 'master' into mcl_bamboo_too 2023-01-09 18:56:05 -05:00
ancientmarinerdev db62631540 Merge pull request 'mcl_lectern' (#3282) from mcl_lectern into master
Reviewed-on: MineClone2/MineClone2#3282
Reviewed-by: ancientmarinerdev <ancientmariner_dev@proton.me>
2023-01-09 22:33:31 +00:00
ancientmarinerdev fb30564827 Ooooooh, lecterns. My favourite. 2023-01-09 22:32:14 +00:00
Michieal 8c355db3ce Made Lecterns solid. 2023-01-09 22:32:14 +00:00
Michieal eae08f3010 Finished Lecterns.
Added in License.txt.
2023-01-09 22:32:14 +00:00
Michieal 4701c4d6e7 Built basic lectern model, texture, and node definition.
Created crafting recipe.

Marked Lecterns as WIP.

Started defining placement.

Added in README.txt.
2023-01-09 22:32:14 +00:00
Michieal 8df0b2a48e Made changes to the MapGen definitions because with the new grow code, bamboo creates its own height, and therefore places its own top. And, having multiple tops looks funny. 2023-01-09 16:31:02 -05:00
ancientmarinerdev 66f368531d Merge pull request 'Fix Country Lode HUD Issue' (#3268) from advancement_bug_fix into master
Reviewed-on: MineClone2/MineClone2#3268
Reviewed-by: ancientmarinerdev <ancientmariner_dev@proton.me>
2023-01-09 21:17:41 +00:00
PrairieWind 7cb5c55d68 Update Translation Files
Fixes the translation error for other languages
2023-01-09 13:36:36 -07:00
Michieal 34faca3f2c Added in License.txt
Made the end cap node wave in the wind.
2023-01-08 23:08:12 -05:00
Michieal d5dda679eb fix vestigial variable names to not be so obtuse. 2023-01-07 16:45:36 -05:00
Michieal c65bbcd5a5 fixed missed spot for licensing. 2023-01-07 16:14:33 -05:00
Michieal 533f59bf27 Merge branch 'master' into mcl_bamboo_too 2023-01-06 18:08:33 -05:00
Michieal 3074c15d14 clear up comment confusion.
Factored out hard coded names for variable names.

removed "minecraft" from README.md.
2023-01-06 18:07:30 -05:00
Michieal 132178b8c7 clear up comment confusion. 2023-01-06 17:46:54 -05:00
Michieal ede21a8627 revert f92ea77849
revert accidental second commit.

Mega commit. lol.

Did a LOT of refactoring.

Cleaned up some vestigial code.

Cleaned up aliases.
2023-01-06 22:43:41 +00:00
Michieal 82fae13b47 Merge remote-tracking branch 'origin/mcl_bamboo_too' into mcl_bamboo_too 2023-01-06 17:41:57 -05:00
Michieal f92ea77849 Mega commit. lol.
Did a LOT of refactoring.

Cleaned up some vestigial code.

Cleaned up aliases.
2023-01-06 17:41:01 -05:00
Michieal 7ebf9b7ab8 Mega commit. lol.
Did a LOT of refactoring.

Cleaned up some vestigial code.

Cleaned up aliases.
2023-01-06 17:40:35 -05:00
Michieal 07a56165ed update optional depends. 2023-01-06 20:23:59 +00:00
Michieal ee0b355f51 Fix licensing. 2023-01-06 20:21:08 +00:00
PrairieWind 6fd799ac42 Fix Country Lode HUD Issue
Fixed the error that was thrown when the advancement is unlocked and also fixed the popup HUD so the advancement title fits correctly
2023-01-06 16:35:59 +00:00
ancientmarinerdev 01bb753549 Merge pull request 'Refactor mob_step and do_states' (#3231) from mob_tweaks into master
Reviewed-on: MineClone2/MineClone2#3231
Reviewed-by: Michieal <michieal@noreply.git.minetest.land>
2023-01-06 14:10:39 +00:00
ancientmarinerdev 59694ebc7c Fix merge conflict 2023-01-06 13:52:03 +00:00
Michieal cc24144bc6 Fixed collision and selection box for endcap nodes.
fixed typo in debug message.
2023-01-06 01:22:18 -05:00
Michieal e1cd16c971 Adjusted growth interval.
tested and fixed bamboo growth function.

Add debug code across growth function and scaffold place.

disabled debug for commit. removed finished todos.
2023-01-06 00:41:26 -05:00
ancientmarinerdev 00c4ecf643 Merge pull request 'Villagers and pathfinding improvements' (#3083) from village_town_bell_pathfix into master
Reviewed-on: MineClone2/MineClone2#3083
Reviewed-by: Michieal <michieal@noreply.git.minetest.land>
2023-01-06 02:59:48 +00:00
ancientmarinerdev e4db91d35c Fix crash bug 2023-01-06 02:59:02 +00:00
ancientmarinerdev 2527479401 Clean up on isle 5, please 2023-01-06 02:59:02 +00:00
ancientmarinerdev 85f7bbdb80 Optimisation. Don't even prepare to path if not ready to path 2023-01-06 02:59:02 +00:00
ancientmarinerdev 465a919f6b Villager will now reclaim job during the day even when it isn't work time 2023-01-06 02:59:02 +00:00
ancientmarinerdev 325a666c62 Added pathfinder constants to make it easier to tweak 2023-01-06 02:59:02 +00:00
ancientmarinerdev e9b54e85c2 Pathfinding clean up 2023-01-06 02:59:02 +00:00
ancientmarinerdev 4324fe2489 Villager will now path from one house to another in search of available job or bed 2023-01-06 02:59:02 +00:00
ancientmarinerdev d6804bf4b7 Fix distance to target issue, and refactor pathing actions 2023-01-06 02:59:02 +00:00
ancientmarinerdev 87f04bdd9f Prevent attempting to path through 2 doors until code supports it. Clean up also. 2023-01-06 02:59:02 +00:00
ancientmarinerdev e3307d647b Fix pathing to bell that is sat on the ground 2023-01-06 02:59:02 +00:00
ancientmarinerdev 29cd73cb84 Pathfinding through door should also check door closest to position so villager can leave current house 2023-01-06 02:59:02 +00:00
ancientmarinerdev 5c0a763b83 Optimisation - Only check for town bell if ready to path 2023-01-06 02:59:02 +00:00
ancientmarinerdev 9b1ceebf0d Villagers will now pathfind to town bell that isn't on the ground 2023-01-06 02:59:02 +00:00
Michieal ed64e7f733 Reverted scaffolding (WIP) for final push. Making an issue for it's continued work. Left wip in, but commented and future featured out. Will test changes forthwith.
Adjusted bamboo base code (randomize which one to use.) to do less math and accomplish the same thing.
2023-01-05 20:27:52 -05:00
ancientmarinerdev 856a60bcc2 Merge pull request 'Fix a few issues with sweet berries.' (#3187) from CyberMango/MineClone2:bug/mango/sweet_berry_fixes into master
Reviewed-on: MineClone2/MineClone2#3187
Reviewed-by: ancientmarinerdev <ancientmariner_dev@proton.me>
2023-01-06 00:09:41 +00:00
Michieal 08f9c0074a REVERT: Fix mcl_dyes' mod.conf to use mcl_bamboo grow and check functions. 2023-01-05 18:31:21 -05:00
Michieal c4969c13cd trying to fix redundancy error... 2023-01-05 00:30:18 -05:00
Michieal f70176da34 Fix mcl_dyes' mod.conf to use mcl_bamboo grow and check functions. 2023-01-04 23:56:51 -05:00
Michieal e314addeb3 Merge branch 'master' into mcl_bamboo_too
# Conflicts:
#	mods/ITEMS/mcl_dye/init.lua
2023-01-04 23:10:54 -05:00
Michieal df8fc65e1e temp commit. 2023-01-04 23:03:08 -05:00
Michieal 687887fe27 Incorporate applying bonemeal to Bamboo stalks. 2023-01-04 22:49:17 -05:00
Michieal 65aa956d9c Add alias for scaffolding.
Rework grow_bamboo to handle random heights, and to handle bonemeal.

 Remove "bamboo_node" in favor of is_bamboo()
2023-01-04 22:43:05 -05:00
𝕵𝖔𝖍𝖆𝖓𝖓𝖊𝖘 𝕱𝖗𝖎𝖙𝖟 ddd004c0f0 Merge pull request 'Fix incorrect foundation size for belltower' (#3147) from village_tweaks into master
Reviewed-on: MineClone2/MineClone2#3147
Reviewed-by: 𝕵𝖔𝖍𝖆𝖓𝖓𝖊𝖘 𝕱𝖗𝖎𝖙𝖟 <mrrar@noreply.git.minetest.land>
2023-01-04 21:45:47 +00:00
ancientmarinerdev 609ef220ad Village building and paths should not spawn on top of snowy trees 2023-01-04 15:14:40 -06:00
ancientmarinerdev 32a7eb4087 Fix incorrect foundation size for belltower 2023-01-04 15:14:37 -06:00
CyberMango 5e969ba928 Added sweet berries death messages. 2023-01-04 23:04:19 +02:00
CyberMango 17e02aec3c Applying bone meal on a stage 3 sweet berry no longer grows it.
It now ignores the bone meal and harvests the sweet berry as normal.
2023-01-04 23:04:19 +02:00
CyberMango fb28e192e6 Bone meal applied on sweet berries only grows them by 1 stage now.
The interface of the grow plant is a bit confusing since even with
stages set to 0 the plant grows by 1 stage (if other conditions such as
light are met). Therefore changing it to 0 makes the plant grow by 1.
2023-01-04 23:04:19 +02:00
CyberMango 0f569fdbaa Bone meal on sweet berries in creative mode is no longer wasted and
minor fixes.

removed an unnecessary -- in a comment.
Removed a redundant concatination.
2023-01-04 23:04:19 +02:00
CyberMango 8a7fcfde82 Fixed sweet berries bugs.
Now they can only be placed a tile's upper part.
Also when destroyed bushes at stage 2 drop 1 or 2 berries, while bushes
at stage 3 drop 2 or 3 (instead of fixed numbers of 1 and 3
respectively).
Also harvesting sweet berries at stage 3 (final) brings them to stage 1
instead of just to stage 2. Number of dropped berries was adjusted.
2023-01-04 23:04:19 +02:00
CyberMango fb51067c78 Created a shared function for planting a seed that can also be consumed. 2023-01-04 23:04:19 +02:00
Michieal 8dd4a2611e Added alias for scaffolding. 2023-01-04 14:25:31 -05:00
Michieal f86ee99abf Further cleaned up bamboo base code.
Fixed some errors in Scaffolding, Commented out the in progress section.
2023-01-04 11:28:09 -05:00
ancientmarinerdev 7ea41a2f21 Merge pull request 'Fix baby zombies going through 1 node high space' (#3241) from short_baby_zombies into master
Reviewed-on: MineClone2/MineClone2#3241
Reviewed-by: ancientmarinerdev <ancientmariner_dev@proton.me>
2023-01-04 14:56:26 +00:00
𝕵𝖔𝖍𝖆𝖓𝖓𝖊𝖘 𝕱𝖗𝖎𝖙𝖟 0b1916b807 Fix baby zombies going through 1 node high space 2023-01-04 07:52:48 -06:00
Michieal d1a017f6b2 optimized out some for loops, cleaned up code for bamboo placement.
tested the changes.
2023-01-03 18:40:40 -05:00
Michieal 50e50e2904 Continued some optimizations of code in bamboo.on_place.
Begun work on scaffolding.
2023-01-03 15:57:58 -05:00
Michieal 966c914a8e Updated .gitignore to exclude *.xcf (gimp) files. 2023-01-03 15:39:23 -05:00
Michieal 9351f72c15 Updated Bamboo translations template.txt 2023-01-03 15:38:34 -05:00
Michieal ef7fb0d2e3 Cleaned up the code. Fixed side placement of bamboo against bamboo.
Dinked with the random number generator some more.

Condensed some more of the code duplication (WIP).

Added in MCL_Log function.

Finally settled on a decent looking Bamboo top.
2023-01-03 01:38:12 -05:00
Michieal 5ef7d9f7a0 Added in Bamboo_Plank variable.
Dinked with the random number generator some.

Moved Bamboo Mosaic from base to items.

condensed some of the code duplication (WIP).

started to add in checks to prevent bamboo from being placed against itself horizontally.

Fixed a couple of naming issues.
2023-01-02 22:36:09 -05:00
ancientmarinerdev 0fca1ce469 Merge pull request 'Fix crash for sky colour if cannot find biome' (#3239) from fix_colour_crash_risk into master
Reviewed-on: MineClone2/MineClone2#3239
Reviewed-by: Michieal <michieal@noreply.git.minetest.land>
2023-01-03 01:02:19 +00:00
Michieal 388632cd46 Fixed BROKEN skycolor 2023-01-02 19:36:01 -05:00
Michieal dd4a0a4172 Fixed mcl_fishing depending on mcl_bamboo. 2023-01-02 19:24:56 -05:00
ancientmarinerdev df6d1c026a Fix crash for sky colour if cannot find biome 2023-01-02 21:48:58 +00:00
Michieal d586b3fecc Tracked down missing node type placement issues, and fixed them.
Now with Chicken Cherry Cola!
2023-01-02 03:54:26 -05:00
Michieal a7a0c4791a Many bug fixes, Adjusted randomizing code.
And, Now with Lime-Cherry Kool-aid!! Yum!
2023-01-02 02:19:33 -05:00
Michieal 23b62c296a Fix code caching errors, and remove unused variables from init. 2023-01-01 23:07:20 -05:00
ancientmarinerdev f8ae702ce4 Function name consistency 2023-01-02 00:58:23 +00:00
ancientmarinerdev 5faf060122 Fix crash and remove unused duplicate variables 2023-01-02 00:54:08 +00:00
ancientmarinerdev 8c648d1fc3 Refactor mob_step and do_states 2023-01-02 00:00:40 +00:00
ancientmarinerdev 46052e5b7e Merge pull request 'Add templates for issues and pull requests' (#3220) from gitea_templates into master
Reviewed-on: MineClone2/MineClone2#3220
Reviewed-by: ancientmarinerdev <ancientmariner_dev@proton.me>
2023-01-01 19:04:12 +00:00
iliekprogrammar 6430fcf103 Clarify *missing feature request* template 2023-01-01 19:03:34 +00:00
iliekprogrammar 7376b08c61 Better headers. More distinct *missing feature* template 2023-01-01 19:03:34 +00:00
iliekprogrammar 2e28a3386b Revert "Add "Testing/Review needed" tag to pull request templates"
This reverts commit 45656d8b747eac6400b2752fe2de603308ca69ef.
2023-01-01 19:03:34 +00:00
iliekprogrammar 98dac6dcd7 Add "Testing/Review needed" tag to pull request templates 2023-01-01 19:03:34 +00:00
iliekprogrammar 3026808a71 Add templates for issues and pull requests 2023-01-01 19:03:34 +00:00
test1 7c7521ff15 Merge pull request 'Update readme' (#3223) from updated_readme into master
Reviewed-on: MineClone2/MineClone2#3223
Reviewed-by: ancientmarinerdev <ancientmariner_dev@proton.me>
2022-12-31 13:23:03 +00:00
test1 50d8e95c16 Update readme 2022-12-31 13:16:52 +00:00
iliekprogrammar fc74bd5cfe Merge pull request 'fix-cocoa-place' (#3221) from fix-cocoa-place into master
Reviewed-on: MineClone2/MineClone2#3221
Reviewed-by: iliekprogrammar <iliekprogrammar@gmail.com>
2022-12-31 10:49:57 +00:00
kabou 2a37d38f6c Reformat cocoa pod node definition groups. 2022-12-31 11:18:04 +01:00
kabou 89821a8329 Rename cocoa pod placement function.
* Rename cocoa pod placement function to match the `on_place` call in
  the cocoa pods item definition.
* Make the function local, there are no callers outside of mcl_cocoas.
2022-12-31 10:41:39 +01:00
iliekprogrammar 3249c13752 Merge pull request '`mcl_meshhand` fixes' (#2939) from mcl-meshhand-fixes into master
Reviewed-on: MineClone2/MineClone2#2939
Reviewed-by: iliekprogrammar <iliekprogrammar@gmail.com>
2022-12-30 18:50:46 +00:00
iliekprogrammar 2ea72ccda8 Merge branch 'master' into mcl-meshhand-fixes 2022-12-30 18:47:55 +00:00
iliekprogrammar 5237eca31e Merge pull request '`mcl_item_entity` fixes' (#2936) from mcl-item-entity-fixes into master
Reviewed-on: MineClone2/MineClone2#2936
Reviewed-by: iliekprogrammar <iliekprogrammar@gmail.com>
2022-12-30 18:39:34 +00:00
iliekprogrammar c2ba70a601 Merge branch 'master' into mcl-item-entity-fixes 2022-12-30 18:34:41 +00:00
iliekprogrammar 723fe9c532 Merge pull request 'mcl_init fixes' (#2862) from mcl-init-fixes into master
Reviewed-on: MineClone2/MineClone2#2862
Reviewed-by: iliekprogrammar <iliekprogrammar@gmail.com>
2022-12-30 18:18:21 +00:00
iliekprogrammar 661afed46c Merge branch 'master' into mcl-init-fixes 2022-12-30 18:11:08 +00:00
ancientmarinerdev e7ace0c87c Merge pull request 'Main Menu Rework' (#3193) from main_menu_rework into master
Reviewed-on: MineClone2/MineClone2#3193
Reviewed-by: ancientmarinerdev <ancientmariner_dev@proton.me>
2022-12-30 01:27:49 +00:00
FossFanatic 9605e2ae0d Make the theme less loud 2022-12-30 01:27:03 +00:00
FossFanatic 80bb954814 Delete 'menu/theme_alt.ogg' 2022-12-30 01:27:03 +00:00
Michieal 10dc83b2a6 softer menu music ogg file 2022-12-30 01:27:02 +00:00
FossFanatic b95c623a74 Add a more original footer and headers 2022-12-30 01:27:02 +00:00
FossFanatic 0ab4553648 Add more credits 2022-12-30 01:27:02 +00:00
FossFanatic 65557152fb Add a menu theme 2022-12-30 01:27:02 +00:00
FossFanatic 1357193a78 Add a template for making splashes 2022-12-30 01:27:02 +00:00
FossFanatic aacbaddfe0 Add warped hyphae texture to the right folder 2022-12-30 01:27:02 +00:00
FossFanatic e246bf7ddf Remove stray warped hyphae texture? 2022-12-30 01:27:02 +00:00
FossFanatic 11bd29ed44 Add a couple of splash texts 2022-12-30 01:27:02 +00:00
FossFanatic de574729a2 Make footer have shadow and look better on 1080p monitors 2022-12-30 01:27:02 +00:00
FossFanatic 95e269a61f Add last background 2022-12-30 01:27:02 +00:00
FossFanatic 5bdc145872 Add second batch of backgrounds 2022-12-30 01:27:02 +00:00
FossFanatic 20e178d5d1 Add first batch of backgrounds 2022-12-30 01:27:01 +00:00
FossFanatic bdbc484c48 Delete 'menu/overlay.1.png' 2022-12-30 01:27:01 +00:00
FossFanatic 56c62e9fba Delete 'menu/overlay.2.png' 2022-12-30 01:27:01 +00:00
FossFanatic 3b1acc60db Delete 'menu/overlay.3.png' 2022-12-30 01:27:01 +00:00
FossFanatic 6026687e93 Delete 'menu/overlay.4.png' 2022-12-30 01:27:01 +00:00
FossFanatic e813c48ed5 Delete 'menu/overlay.5.png' 2022-12-30 01:27:01 +00:00
FossFanatic 75716d97e3 Delete 'menu/overlay.png' 2022-12-30 01:27:01 +00:00
ancientmarinerdev 6fe5bf8674 Merge pull request 'Update Code of Conduct email' (#3214) from update_coc_email into master
Reviewed-on: MineClone2/MineClone2#3214
2022-12-29 23:47:50 +00:00
ancientmarinerdev 9574ba7f09 Update Code of Conduct email 2022-12-29 23:47:03 +00:00
ancientmarinerdev 0df4f9518a Merge pull request 'Added credit for Japanese translations' (#3213) from add_japanese_credits into master
Reviewed-on: MineClone2/MineClone2#3213
2022-12-29 22:18:44 +00:00
ancientmarinerdev 3ee4a62107 Added credit for Japanese translations 2022-12-29 22:17:16 +00:00
ancientmarinerdev e6e898671a Merge pull request 'add japanese translation' (#3149) from SakuraRiu/MineClone2:master into master
Reviewed-on: MineClone2/MineClone2#3149
Reviewed-by: Michieal <michieal@noreply.git.minetest.land>
2022-12-29 22:14:48 +00:00
Michieal 87327abfb9 Restructure Commit.
Recipes are in recipes.lua
Bamboo Basic nodes are in bamboo_base.lua
Bamboo items are in bamboo_items.lua
Bamboo api / globals are in globals.lua.
2022-12-29 13:16:48 -05:00
Michieal 34263c2ef3 Change bamboo back to Axey, instead of swordy. 2022-12-29 12:28:42 -05:00
Michieal 38c6969292 Fix mod.conf in mcl_fishing
Fix bamboo nodes on_destruct to handle the alt nodes too.
clean up ToDos
2022-12-29 11:31:13 -05:00
FossFanatic ab1cfde34d Merge pull request 'Put back default sky and fog color.' (#3201) from fix_v6_sky_color into master
Reviewed-on: MineClone2/MineClone2#3201
Reviewed-by: FossFanatic <fossfanatic@noreply.git.minetest.land>
2022-12-29 07:59:28 +00:00
FossFanatic d5f8129ea7 Merge branch 'master' into fix_v6_sky_color 2022-12-29 07:55:49 +00:00
Michieal 1d0968f4f5 Fix bamboo nodes on_destruct to handle the alt nodes too.
clean up ToDos
2022-12-29 01:38:10 -05:00
Michieal 0f9d263e02 Add Bamboo to the Fishing Junk table.
Update the mod.conf to be aware of mcl_bamboo.
2022-12-29 01:29:25 -05:00
Michieal 26c1be3722 Fix bamboo node to be Swordy.
Added in secondary bamboo node types.
Changed the grow_bamboo function to make use of new alt nodes, and removed unneccessary "force" parameter.
2022-12-29 01:03:25 -05:00
ancientmarinerdev 1295b2dc12 Merge pull request 'Dye refactoring; untangle bone meal, lapis, ink sac and cocoa beans from dye items.' (#3176) from redo_dyes into master
Reviewed-on: MineClone2/MineClone2#3176
Reviewed-by: ancientmarinerdev <ancientmariner_dev@proton.me>
2022-12-29 03:11:33 +00:00
kabou 44f724f677 Minor refactoring of mcl_dye, fix dye texture names.
* Reorganize dyes table.
* Rename dye item textures to conform to mcl naming standard.
* Refactor dye item registration.
* Shuffle recipes around in a more logical order.
* Remove unused dye names from lists that are probably equally unused.
2022-12-29 03:08:50 +00:00
kabou 92ee402971 Separate white dye from bone meal.
* Add craftitem for ":mcl_bone_meal:bone_meal" to mcl_dye (temporarily.)
* Add crafting recipe for bone meal.
* Add texture for white dye item.
* Merge craftitem registration for "mcl_dye:white" with generic dyes.
* Add crafting recipe for white dye.
* Add legacy conversion recipe.
* Update dyes table.
* Update translations.
* Update mcl_crimson and sweet berry on_rightclick handlers.
* Update composter output, both as freestanding and to hoppers.
* Update bone block crafting recipes.
* Update tropical fish, cod and salmon mob drops.
2022-12-29 03:08:50 +00:00
kabou 7d8fdc6ec3 Separate brown dye from cocoa beans.
* Add craftitem "mcl_cocoas:cocoa_beans".
* Add texture for brown dye item.
* Merge craftitem registration for "mcl_dye:brown" with generic dyes.
* Add crafting recipe for brown dye.
* Add legacy conversion recipe.
* Update dyes table.
* Update translations.
* Update cookie recipe.
2022-12-29 03:08:49 +00:00
kabou d2edc75407 Separate blue dye from lapis lazuli.
* Add craftitem "mcl_core:lapis".
* Add texture for blue dye item.
* Add crafting recipe for blue dye.
* Add legacy conversion recipe.
* Update dyes table.
* Update translations.
* Update lapis block crafting recipes.
* Update lapis ore drops.
* Update dungeon and shipwreck loot.
* Update enchanting table input.
* Update villager trade.
2022-12-29 03:08:49 +00:00
kabou 7311071303 Separate black dye from squid ink sac.
* Add craftitem "mcl_mobitems:ink_sac".
* Add texture for black dye item.
* Add crafting recipe for black dye.
* Add legacy conversion recipe.
* Update dyes table.
* Update translations.
* Update fishing loot.
2022-12-29 03:08:49 +00:00
ancientmarinerdev 437842134e Merge pull request 'Slime, magma cube and cow spawning fixes.' (#3162) from slime_fixes into master
Reviewed-on: MineClone2/MineClone2#3162
Reviewed-by: ancientmarinerdev <ancientmariner_dev@proton.me>
2022-12-29 02:14:32 +00:00
kabou 60b0cfe89a Remove FIXME about slimes spawning in swamps.
* This has been fixed.
2022-12-29 02:13:57 +00:00
kabou d8a883e81f Limit size of cow herds spawning.
* Cows should spawn in herds of max 4, not 8.
2022-12-29 02:13:57 +00:00
kabou 15f5c3c30a Make slimes spawn at night in swamps.
* Adds spawn definitions for large, small and tiny slimes to spawn in
  Swampland and MangroveSwamp biomes when light levels are less than 7.
2022-12-29 02:13:57 +00:00
kabou 4af8148850 Refactor spawn registrations.
* Unduplicate spawnable biome lists for slimes and magma cubes.
* Rename min and max spawndepth identifiers.
2022-12-29 02:13:57 +00:00
kabou ea6201d32f Add missing biome to slime spawn list.
* Add "MangroveSwamp_underground" to the lists of spawnable biomes for
  big, small and tiny slimes.
2022-12-29 02:13:57 +00:00
kabou da17ff8ea0 Remove stray dependency.
While mobs_mc_gameconfig was deleted at some point during the mob
refactoring, it was still listed in mobs_mc's mod.conf.
2022-12-29 02:13:57 +00:00
kabou 6756ee340c Mob spawning chatcommand refactoring.
* Put calculations that are only used conditionally inside the
  related `if` block.
* Make code logic more explicit.
* Take logging statement out of return value assignment.
* Remove duplicate assignment.
* Fix a typo in the function's description.
2022-12-29 02:13:57 +00:00
kabou 0c454a34c9 Use vectors in `get_next_mob_spawn_pos()` 2022-12-29 02:13:57 +00:00
kabou 8279dcb3dd Add FIXME notes to slime mob code.
Missing features:
* Slimes should not only spawn in caves, but also at night in swamps.
* Slimes should only spawn on 10% of the map ("slime chunks").
* There are no spawn eggs registered for small and tiny slimes and magma
  cubes.
2022-12-29 02:13:57 +00:00
kabou ea19f02e14 Assorted `spawn_children_on_die` fixes.
* Use proper vector semantics.
* Optimize away superfluous temp variables and repetitive local variable
  declarations.
2022-12-29 02:13:57 +00:00
kabou 95cbac78a8 Change number of children spawned on die.
When a slime or magma cube dies, it should spawn between 2 to 4 smaller
children.  The code was always spawning 4 children (3 for big magma
cubes).  This commit makes the following changes to the function
`spawn_children_on_die`:
* Make the number of children spawned a random number between 2 and 4.
* No longer accept the `children_count` as an argument, because this
  number should always be a random number between 2 and 4 anyway.
* Update all callers accordingly.
2022-12-29 02:13:57 +00:00
Michieal acc2be7253 Merge remote-tracking branch 'origin/mcl_bamboo_too' into mcl_bamboo_too 2022-12-28 18:21:39 -05:00
Michieal 3015bfb8c4 Merge branch 'master' into mcl_bamboo_too 2022-12-28 23:16:01 +00:00
Michieal 28cb06421d Merge branch 'master' into mcl_bamboo_too 2022-12-28 18:13:51 -05:00
Michieal 731468cf5a Did a bit of code restructuring.
Removed another magic number.
Add in todo for fishing.
Added in the possibility for bamboo to grow two nodes in one success.
Added in a "force" param to use with bonemealing.
2022-12-28 18:10:12 -05:00
Michieal ff7693937a Did a bit of code restructuring.
Removed another magic number.
Add in todo for fishing.
Added in the possibility for bamboo to grow two nodes in one success.
Added in a "force" param to use with bonemealing.
2022-12-28 15:29:06 -05:00
Michieal 76669e1f3c Moved bamboo grow code to its own function, and made that function global so that it can be called outside of mcl_bamboo. 2022-12-28 14:34:14 -05:00
ancientmarinerdev 81daec14a2 Merge pull request 'Update sounds from MTG' (#3157) from grorp/MineClone2:patch-1 into master
Reviewed-on: MineClone2/MineClone2#3157
Reviewed-by: ancientmarinerdev <ancientmariner_dev@proton.me>
2022-12-27 21:36:33 +00:00
kabou 5e129985f2 Put back default sky and fog color.
Recent changes set the default colors to some pretty psychedelic ones.
The stated purpose was debugging, but in absense of any actual debugging
code other than v6 mapgen inadvertently assuming that role, more sensible
colors were reinstated.

If debugging code is desired, it should probably be added to the main
parts of mcl_weather.
2022-12-27 15:10:24 +01:00
Michieal 6f05992c8b Fix Licensing.
Removed Make_Stairs check.
Made unified protection check.
Began work on the second half of scaffolding.
Removed comments that was no longer needed.
2022-12-25 07:30:31 -05:00
PrairieWind 0dc31611ac Merge pull request 'Adjusts mcl_crimson Doors to have a specified side texture' (#3140) from Wbjitscool/MineClone2:master into master
Reviewed-on: MineClone2/MineClone2#3140
Reviewed-by: PrairieWind <prairie.astronomer1@gmail.com>
2022-12-25 02:09:14 +00:00
PrairieWind b0070a3b83 Merge pull request 'Fix the disapearance of christmas texture of the ender chest once it is placed' (#3184) from 3raven/MineClone2:master into master
Reviewed-on: MineClone2/MineClone2#3184
Reviewed-by: PrairieWind <prairie.astronomer1@gmail.com>
2022-12-25 01:46:14 +00:00
3raven 5964f25fa7 Merge branch 'master' into master 2022-12-24 17:01:13 +00:00
FossFanatic 2db9ea6459 Merge pull request 'Small Useless Textures Cleanup' (#3164) from useless_textures_cleanup into master
Reviewed-on: MineClone2/MineClone2#3164
Reviewed-by: kabou <kabou@noreply.git.minetest.land>
2022-12-24 15:16:28 +00:00
FossFanatic e0a9aca469 Merge branch 'master' into useless_textures_cleanup 2022-12-24 15:05:14 +00:00
FossFanatic fb8f59e918 Merge pull request 'Overworld Biome Sky And Fog Colours' (#3158) from biome_skycolor_overworld into master
Reviewed-on: MineClone2/MineClone2#3158
Reviewed-by: kabou <kabou@noreply.git.minetest.land>
2022-12-24 15:01:43 +00:00
FossFanatic 9eb86f011b Make the code clearer to read 2022-12-24 14:54:48 +00:00
3raven d3e8e24f42 Fix the disapearance of christmas texture of the ender chest once it is placed
Fix the disapearance of christmas texture of the ender chest once it is placed
2022-12-24 14:44:06 +00:00
FossFanatic 770dd0ec47 Merge branch 'master' into useless_textures_cleanup 2022-12-24 12:31:56 +00:00
FossFanatic 00b2afecad Merge branch 'master' into biome_skycolor_overworld 2022-12-24 12:31:10 +00:00
Michieal c55332bf42 Change mod.conf and readme's depends.
Optipng images, after adding in bamboo top image.
Try out a plantlike style top node for bamboo stalks.
Make Bamboo drop 1-2 bamboo.
Fix Bamboo top drops.
2022-12-24 00:57:44 -05:00
ancientmarinerdev cbf090485c Merge pull request 'Fix creative inventory view being reset upon taking damage' (#3102) from CyberMango/MineClone2:bug/mango/creative_inventory_view_resets_on_damage into master
Reviewed-on: MineClone2/MineClone2#3102
Reviewed-by: 𝕵𝖔𝖍𝖆𝖓𝖓𝖊𝖘 𝕱𝖗𝖎𝖙𝖟 <mrrar@noreply.git.minetest.land>
Reviewed-by: ancientmarinerdev <ancientmariner_dev@proton.me>
2022-12-24 01:18:16 +00:00
Michieal 42f8fbf9b8 Added in Fuel Recipes for bamboo slabs / stairs; including mosaics.
Finished Bamboo Mosaic nodes.
2022-12-23 17:27:01 -05:00
CyberMango bd38827f60 Fixes #2976
Now the inventory view on creative is no longer set to the survival
inventory upon taking damage.
Also the initial inventory view when openning a world in creative is at
the search page, not the survival inventory page.

mcl_inventory/init.lua no longer wraps mcl_armor.update_player to also
update the inventory view. This visual update happens anyways since it
is registered to happen on a visual change with
mcl_player.register_on_visual_change .

This also fixes a small visual bug that, on creative mode, if you would
equip/unequip an armor piece, the image of the player would be updated
twice.
2022-12-23 13:54:41 +02:00
Michieal b0978d275d Abstracted variables in bamboo abm.
Fix Base scaffolding in Creative mode.
Fixed Lua Warnings.
2022-12-22 16:08:05 -05:00
FossFanatic 522bbbbe26 Delete 'mods/ENTITIES/mobs_mc/textures/mobs_mc_enderman_block.png' 2022-12-22 12:47:44 +00:00
FossFanatic e1f26ea70d Remove dry grass side texture
The same reason as why the dry grass top texture got removed.
2022-12-22 12:40:36 +00:00
FossFanatic 9ef4a850b1 Remove dry grass top texture
This is a remnant of Minetest Game and used to be for dry biomes before colour palettes were a thing in MineClone 2.
2022-12-22 12:40:10 +00:00
FossFanatic 4c23601d03 Remove useless amethyst texture
This texture is a remnant of the PixelPerfection resource pack and nowhere in the code does this texture get used.
2022-12-22 12:38:05 +00:00
FossFanatic 8d51e16b8e Remove obsolete texture 2022-12-22 12:34:14 +00:00
Michieal 2b11b5c17a Added full node names for bamboo on_place.
Added in bamboo top destruct.
Removed mapgen.lua.
2022-12-21 22:23:46 -05:00
Michieal 9445b02dcc MapGen update. Adjusted decorations. 2022-12-21 20:57:34 -05:00
SakuraRiu 1b980849db Merge branch 'master' into master 2022-12-22 00:55:48 +00:00
Gregor Parzefall 14adcbbecb Make snow sound like snow while digging it 2022-12-21 22:39:26 +01:00
Michieal e0d48400a7 Fix the removal of bamboo extras. 2022-12-21 16:16:53 -05:00
Gregor Parzefall 7312c30f8e Update attribution of sounds
Also: Add myself to CREDITS.md
2022-12-21 22:13:08 +01:00
Michieal 742a625c42 Added in aliasing for scaffolding, to prevent breakage for players using the "mcl_scaffolding" mod. 2022-12-21 15:55:50 -05:00
Michieal 95d3f9be07 Make Lantern API callable from outside of mcl_lanterns 2022-12-21 12:34:47 -05:00
Michieal 16d94a88db moved extras to the proper location 2022-12-21 12:32:09 -05:00
FossFanatic a50908e1eb Fix the flat biome having a beach sky colour 2022-12-21 16:00:04 +00:00
FossFanatic afbb8e2288 Add locals for certain hex codes that occur too many times 2022-12-21 15:57:33 +00:00
FossFanatic 79b1db4b1a Fix underwater fog colour regression 2022-12-21 14:04:47 +00:00
FossFanatic 1c752019f0 Make the explanation shorter 2022-12-21 13:08:23 +00:00
FossFanatic 1977dbf9a1 Remove excessive whitespace 2022-12-21 13:05:52 +00:00
FossFanatic 91836f3a1d Add sky and fog colour for each overworld biome 2022-12-21 13:04:46 +00:00
FossFanatic 35b2f3b638 Make overworld biome specific (daytime) sky and fog colours possible 2022-12-21 13:01:54 +00:00
Gregor Parzefall 4fcbe05be5 Remove a sound I forgot 2022-12-21 13:53:09 +01:00
Riu Sakura 8f80c6e6a6 Added missing word (Breeding). 2022-12-21 14:23:57 +09:00
Michieal b14f055154 Merge branch 'master' into mcl_bamboo_too
# Conflicts:
#	mods/ITEMS/mcl_bamboo/init.lua
2022-12-20 23:19:29 -05:00
Riu Sakura 3faa930bdc Added missing translations.
In addition, the translation of "Grass Block" has been corrected to a better phrase.
2022-12-21 10:24:26 +09:00
ancientmarinerdev a6e0da0e07 Merge pull request 'Fixes MineClone2/MineClone2#3120 | Complete re-upload of the mcl_bamboo branch.' (#3123) from mcl_bamboo_new into master
Reviewed-on: MineClone2/MineClone2#3123
Reviewed-by: ancientmarinerdev <ancientmariner_dev@proton.me>
2022-12-21 00:47:21 +00:00
Michieal 41ab80183e Darken the Warped Hyphae Log (side) texture 2022-12-20 18:02:48 -05:00
ancientmarinerdev 1c24adb714 Merge pull request 'Animated Nether Tree Textures' (#3155) from FossFanatic/MineClone2:animated_nether_trees_possible into master
Reviewed-on: MineClone2/MineClone2#3155
Reviewed-by: ancientmarinerdev <ancientmariner_dev@proton.me>
2022-12-20 21:19:45 +00:00
Michieal 7003459b8d Merge remote-tracking branch 'origin/master' 2022-12-20 16:13:54 -05:00
Michieal 8d440f8464 Made purple warped_hyphae trapdoor so that it matched the sides. (The top was green, the sides were purple.)
Renamed the old trapdoor top to _alt.
2022-12-20 16:13:07 -05:00
ancientmarinerdev 658a08181c Merge pull request 'Nether Ores And Blackstone Fixes' (#3154) from FossFanatic/MineClone2:nether_ores_and_blackstone_fixes into master
Reviewed-on: MineClone2/MineClone2#3154
Reviewed-by: ancientmarinerdev <ancientmariner_dev@proton.me>
2022-12-20 21:04:52 +00:00
Gregor Parzefall 605e4de455 Restore MCL changes to grass / leaves sounds 2022-12-20 21:12:56 +01:00
Gregor Parzefall 8522b87444 Removed two duplicated sound definitions 2022-12-20 21:08:59 +01:00
Gregor Parzefall e4abbbf112 Sound changes in code 2022-12-20 20:57:57 +01:00
Gregor Parzefall 718cdb553d More sound changes from MTG 2022-12-20 18:54:52 +01:00
Gregor Parzefall e2ec660f25 Update sounds from MTG 2022-12-20 18:21:31 +01:00
Wbjitscool 1b4bcda9da Update 'mods/ITEMS/mcl_mangrove/init.lua' 2022-12-20 02:58:58 +00:00
Michieal 39714fb096 optipng the mangrove door sides, and then moved them to the textures directory for mcl_mangrove. 2022-12-19 21:48:51 -05:00
Wbjitscool 258a1534d2 Upload files to 'mods/ITEMS/mcl_mangrove' 2022-12-20 02:42:27 +00:00
Michieal c995c8418c Optipng'd mangrove textures
cleaned up warped door (inv/wield images)
2022-12-19 21:32:44 -05:00
Wbjitscool 00121d9d97 Upload files to 'mods/ITEMS/mcl_crimson/textures'
fixed transperancy issue
2022-12-20 02:18:15 +00:00
Michieal 4f90fbcedd put in green alt warped door textures.
resized large textures to 16px textures.
optipng'd' them.
2022-12-19 20:57:32 -05:00
Michieal c7104a6f72 Made the warped doors purple.
Optipng'd all the textures in this module.
2022-12-19 20:48:47 -05:00
Wbjitscool 223f6640d2 Upload files to 'mods/ITEMS/mcl_crimson/textures' 2022-12-20 01:36:25 +00:00
Michieal feea815604 Warped Hyphae textures update. 2022-12-20 01:32:36 +00:00
Riu Sakura b1b2e06dc7 Removed invisible character codes.
Updated translations with the latest templates.
2022-12-20 08:37:24 +09:00
Michieal 1a56a32fa8 misc. error fix 2022-12-19 16:16:54 -05:00
Michieal 0a4243a0f3 Merge remote-tracking branch 'origin/mcl_bamboo_new' into mcl_bamboo_new
# Conflicts:
#	mods/ITEMS/mcl_bamboo/init.lua
2022-12-19 16:00:05 -05:00
Michieal 66a7c5757e Made bamboo buttons flammable, and made them into a fuel source.
Converted commented code snippet, addgroups() into global function.

Stairs will be a fuel source in part 2.
2022-12-19 15:57:27 -05:00
FossFanatic 083a57a4a1 Allow for animated hyphae textures 2022-12-19 19:36:28 +00:00
FossFanatic c512d28f02 Add blackstone top texture 2022-12-19 19:02:18 +00:00
FossFanatic 1056b6ca14 Add blackstone side texture 2022-12-19 19:02:18 +00:00
FossFanatic c8ec57bdbd Delete 'mods/ITEMS/mcl_blackstone/textures/mcl_blackstone.png' 2022-12-19 19:02:18 +00:00
FossFanatic 2dffe11cdd Add seperate gilded blackstone texture 2022-12-19 19:02:18 +00:00
FossFanatic f29622dd59 Allow for both top/bottom and side textures 2022-12-19 19:02:18 +00:00
FossFanatic d9bd3e2601 Add seperate nether gold ore texture 2022-12-19 19:02:17 +00:00
Michieal e53d7576c3 Made bamboo buttons flammable, and made them into a fuel source.
Converted commented code snippet, addgroups() into global function.

Stairs will be a fuel source in part 2.
2022-12-19 13:44:24 -05:00
Riu Sakura 2b61231f82 add japanese translation 2022-12-19 15:33:31 +09:00
Wbjitscool 40f7215368 upload to 'mods\ITEMS\mcl_crimson\textures'
another update for mcl_crimson png files
2022-12-19 04:33:19 +00:00
Wbjitscool 620cc97bad Upload files to 'mods/ITEMS/mcl_crimson/textures' 2022-12-19 04:22:59 +00:00
Michieal 64c8afc8f0 Undo the revert.
>.< /facepalm *grumbles*
2022-12-19 04:11:25 +00:00
Michieal f737df79e5 revert 7a3f373425
revert Misc. Fixes.
Added in burn times for slabs.
And then amend the commit to remove an oops.
2022-12-19 04:06:33 +00:00
Michieal 7a3f373425 Misc. Fixes.
Added in burn times for slabs.
And then amend the commit to remove an oops.
2022-12-18 22:41:33 -05:00
Michieal 63ea851e63 Merge remote-tracking branch 'origin/mcl_bamboo_new' into mcl_bamboo_new
# Conflicts:
#	mods/ITEMS/mcl_bamboo/init.lua
2022-12-18 22:35:57 -05:00
Michieal fe26f117da Misc. Fixes.
Added in burn times for slabs.
And then amend the commit to remove an oops.
2022-12-18 22:28:50 -05:00
Michieal 5191326fc7 Misc. Fixes.
Added in burn times for slabs.
2022-12-18 21:04:43 -05:00
ancientmarinerdev 45c85841e8 Merge pull request 'Add bookshelves and anvils as structure constructed nodes' (#3133) from structure_construct_nodes into master
Reviewed-on: MineClone2/MineClone2#3133
Reviewed-by: ancientmarinerdev <ancientmariner_dev@proton.me>
2022-12-19 01:14:39 +00:00
Wbjitscool 4b8493f1a4 update 'mods/ITEMS/mcl_crimson/init.lua'
fixed some accidental changes that were not meant to happen sorry
2022-12-19 01:04:59 +00:00
PrairieWind 0a2f57476e Update Woodland Outpost Schematic
Switched double chest with barrels so that they work correctly
2022-12-19 01:03:53 +00:00
PrairieWind 256655df83 Add bookshelves and anvils as structure constructed nodes 2022-12-19 01:03:53 +00:00
Wbjitscool b3a8ba57e7 update 'mods/items/mcl_crimson/init.lua'
some new changes
2022-12-19 00:43:32 +00:00
ancientmarinerdev 20ca34233c Merge pull request 'Respawn Anchor Cleanup & Fixes' (#3129) from FossFanatic/MineClone2:more_respawn_anchor_changes into master
Reviewed-on: MineClone2/MineClone2#3129
Reviewed-by: ancientmarinerdev <ancientmariner_dev@proton.me>
2022-12-18 23:17:53 +00:00
ancientmarinerdev 93814880d0 Merge pull request 'Make Night Sky Darker' (#3138) from FossFanatic/MineClone2:minecraft_like_night_sky into master
Reviewed-on: MineClone2/MineClone2#3138
Reviewed-by: ancientmarinerdev <ancientmariner_dev@proton.me>
2022-12-18 22:44:42 +00:00
Michieal 1861d7d30d Conversation Fix. (Removed extra IF statement.) 2022-12-17 01:23:48 +00:00
Wbjitscool 49fb36bac2 Upload files to 'mods/ITEMS/mcl_crimson/textures'
the png files for thoes changes
2022-12-16 05:27:23 +00:00
Michieal c09ed02801 A more elegant solution for slabs
After a good bit of trial and error, and asking questions... I have rewritten the override code and it works. (tested, slabs can now be used to make composters and barrels with this method.)
2022-12-16 05:24:54 +00:00
Michieal da4e359df0 Merge branch 'master' into mcl_bamboo_new 2022-12-16 04:09:56 +00:00
Michieal 4da20f5e73 Main - Fixed Bamboo Sign Errors.
Fixed Stripped Bamboo Block Description.
Added in Bamboo Plank Recipe that uses Stripped Bamboo Blocks.
Removed double translation of "Bamboo Sign" in sign registration. (Caused the Bamboo Sign Errors.)
Added bamboo plank slabs to the group "wood_slabs" so that the barrel recipe works oob.
2022-12-15 22:35:10 -05:00
ancientmarinerdev 4ba3af5c73 Merge pull request 'Add `.editorconfig` file to enforce codestyle in compatible editors' (#3091) from editorconfig into master
Reviewed-on: MineClone2/MineClone2#3091
Reviewed-by: ancientmarinerdev <ancientmariner_dev@proton.me>
2022-12-15 22:59:08 +00:00
AFCMS 3a619ba8e4 Basic editorconfig file 2022-12-15 22:57:18 +00:00
ancientmarinerdev 1859f44bd6 Merge pull request 'Refactor leaf decay mechanics.' (#3099) from refactor-leaves into master
Reviewed-on: MineClone2/MineClone2#3099
Reviewed-by: ancientmarinerdev <ancientmariner_dev@proton.me>
2022-12-15 22:44:19 +00:00
kabou 4e282df905 Mangrove roots are not leaves and some trivia.
* Remove `leaves` group from mangrove roots node registration.  Mangrove
  roots should not decay like leaves do.
* Fix some formatting weirdness.
* Add a "fixme" comment to some duplicated code that causes luacheck to
  complain.
2022-12-15 22:42:09 +00:00
kabou 1b0b2b8b04 Add `compostability` group to mangrove leaves. 2022-12-15 22:42:09 +00:00
kabou c33d7d0106 Remove duplicate callback registration.
* `on_place` was registered twice in mangrove tree trunk node
  registration.  Remove one.
2022-12-15 22:42:08 +00:00
kabou cec5b1668a Remove unused `leafdecay` group.
* This group is no longer used and is removed from leaves node groups.
* Since it was never added to GROUPS.md, nothing needs changed there.
* Remove the `leafdecay_distance` parameter from node registrations.
2022-12-15 22:42:08 +00:00
kabou adcf03e0c6 Refactor leaf decay ABM.
* The leaf decay ABM no longer scans all leaves nodes.  Now only
  "orphaned" leaves are decayed.  These nodes are placed by callbacks
  in tree trunk nodes upon their destruction.
* This commit also removes the tree trunk node caching system and an
  abm throttling mechanism and its associated globalstep function.
2022-12-15 22:42:08 +00:00
kabou a4ef367708 Add "orphaned" leaves nodes.
* Add "orphaned" leaves nodes, these are copies of the regular leaves
  nodes whose sole purpose is to replace leaves nodes when no more tree
  trunks are present nearby.  The orphaned nodes are swapped in by a
  callback on destruction of tree trunk nodes and will be decayed by a
  dedicated abm that processes all nodes in `group:leaves_orphan`.
* Add `mcl_core.update_leaves()` function, a `after_destruct` callback
  handler for tree trunk nodes.  The function finds leaves nodes nearby
  destroyed tree trunk nodes and swaps these for orphaned leaves nodes
  if no other tree trunk nodes remain near them.
* Add `after_destruct` callbacks to tree trunk node registrations in
  mcl_core/nodes_trees.lua and mcl_mangrove/init.lua to update orphaned
  leaves.
* Add entry for group `leaves_orphan` to GROUPS.md
* Also add entry for group `leaves` to GROUPS.md (it was missing).
2022-12-15 22:42:08 +00:00
ancientmarinerdev 20e78099d7 Merge pull request 'village_schema_fixes' (#2989) from village_schema_fixes into master
Reviewed-on: MineClone2/MineClone2#2989
2022-12-15 21:54:48 +00:00
ancientmarinerdev 94a37790aa Fix incorrectly sized foundations 2022-12-15 21:52:24 +00:00
ancientmarinerdev 89f5d41366 Fix village building foundation material for desert 2022-12-15 21:52:24 +00:00
ancientmarinerdev b33b87b9dd Fix village building foundations 2022-12-15 21:52:24 +00:00
ancientmarinerdev 295970fbac Adding extra row of blocks in front of doors to schemas so villagers can get out 2022-12-15 21:52:24 +00:00
ancientmarinerdev 639825a8da Merge pull request 'release/0.81.1_merge_conflict_fix' (#3132) from release/0.81.1_merge_conflict_fix into master
Reviewed-on: MineClone2/MineClone2#3132
2022-12-15 19:56:59 +00:00
FossFanatic 0f8cfbf106 Some small night sky adjustments 2022-12-15 16:46:47 +00:00
FossFanatic 39e9158c01 Make night sky darker 2022-12-15 16:05:34 +00:00
Michieal 773c760727 Added Bamboo Mosaic.
Added Tiki Lamp (extras) - Requires mcl_lanterns to be fixed to allow API to be called from other mods.
Moved Side Scaffolding to bambootoo.lua
2022-12-14 23:02:08 -05:00
ancientmarinerdev 254caaff37 Merge conflict fixes for release 0.81.1 2022-12-14 21:38:53 +00:00
ancientmarinerdev 1ac6c45c7f Update release readme 2022-12-14 20:17:21 +00:00
ancientmarinerdev 5b68007902 Pre-release update credits and set version 0.81.1 2022-12-14 20:13:06 +00:00
FossFanatic 35967caf71 Change some things 2022-12-14 14:43:45 +00:00
Michieal 29bc74dde9 Code reformat. 2022-12-14 03:26:22 -05:00
Michieal ca1a46efa7 A complete re-upload of MineClone2/MineClone2#3120
Doing this to just fix it.
2022-12-13 23:32:54 -05:00
Michieal 997b6875a2 Merge pull request 'performance_fix_raids' (#3092) from performance_fix_raids into release/0.81.1
Reviewed-on: MineClone2/MineClone2#3092
Increases performance.
Tested by myself, and by other players.
2022-12-11 23:29:13 +00:00
ancientmarinerdev 38e49a4b80 Merge pull request '`mcl_hoppers` fixes' (#2983) from mcl-hoppers-fixes into master
Reviewed-on: MineClone2/MineClone2#2983
Reviewed-by: ancientmarinerdev <ancientmariner_dev@proton.me>
2022-12-11 20:55:59 +00:00
ancientmarinerdev 9b94a752bd Fixed bug that crashes zombie siege in context where z cannot spawn 2022-12-11 20:22:06 +00:00
ancientmarinerdev ab3530c356 Merge pull request 'Nylium Block Fixes' (#3084) from FossFanatic/MineClone2:nylium_block_fixes into master
Reviewed-on: MineClone2/MineClone2#3084
Reviewed-by: kabou <kabou@noreply.git.minetest.land>
Reviewed-by: ancientmarinerdev <ancientmariner_dev@proton.me>
2022-12-11 03:21:11 +00:00
ancientmarinerdev fbed60bd2d Merge pull request 'Bee Block Sounds' (#3085) from FossFanatic/MineClone2:bee_block_fixes into master
Reviewed-on: MineClone2/MineClone2#3085
Reviewed-by: kabou <kabou@noreply.git.minetest.land>
Reviewed-by: ancientmarinerdev <ancientmariner_dev@proton.me>
2022-12-11 02:55:22 +00:00
ancientmarinerdev bf34ca5f50 Merge pull request 'Add Seagrass Item Texture' (#3088) from FossFanatic/MineClone2:seagrass_item_image_fix into master
Reviewed-on: MineClone2/MineClone2#3088
Reviewed-by: kabou <kabou@noreply.git.minetest.land>
Reviewed-by: ancientmarinerdev <ancientmariner_dev@proton.me>
2022-12-11 02:29:06 +00:00
ancientmarinerdev 055432c1f7 Merge pull request 'Fix the bug that baby (non-monster) mobs cant jump over blocks' (#3093) from CyberMango/MineClone2:dev/mango/fix_baby_mobs_jump into master
Reviewed-on: MineClone2/MineClone2#3093
Reviewed-by: ancientmarinerdev <ancientmariner_dev@proton.me>
2022-12-11 02:17:01 +00:00
AFCMS 7a371dc846
Format file again 2022-12-10 22:38:08 +01:00
AFCMS 7deec7ae03
Refactor hopper -> composter ABMs 2022-12-10 22:38:08 +01:00
AFCMS 47eda5b69e
Only register hopper -> composter ABMs if composter mod is enabled 2022-12-10 22:38:07 +01:00
AFCMS 8d921c0671
Add some type annotations 2022-12-10 22:38:07 +01:00
AFCMS 804aa388b5
Some manual formatting 2022-12-10 22:38:07 +01:00
AFCMS fcf9c35324
Use new vectors everywhere 2022-12-10 22:38:06 +01:00
AFCMS 9cc63ed716
Use `table.concat` for formspec generation 2022-12-10 22:38:06 +01:00
AFCMS c49f000894
Fix formating 2022-12-10 22:38:06 +01:00
CyberMango f7f2b97b13 Fixed #2313 - baby mobs cant jump over blocks.
Simply removed a line that specifies they shouldnt do that.
2022-12-10 19:54:44 +02:00
ancientmarinerdev f7f0a2be8b Raids performance optimisation. Check for village less and over less distance. 2022-12-09 22:59:58 +00:00
ancientmarinerdev e408dd45e5 Remove easter egg taking 3% of processing 2022-12-09 19:30:06 +00:00
FossFanatic adead97905 Add seagrass item texture 2022-12-08 17:37:14 +00:00
FossFanatic ef33891b3f Add seagrass item texture 2022-12-08 17:36:28 +00:00
FossFanatic 1c5170d36f Add sounds to bee nests and beehives 2022-12-08 11:43:58 +00:00
FossFanatic cf3e65e34e Add sounds to honey and honeycomb blocks 2022-12-08 11:43:06 +00:00
FossFanatic 0593a63626 Fix nylium blocks 2022-12-08 11:09:30 +00:00
AFCMS 2b46dd60c5 Merge pull request 'Fix right click on copper crash' (#3076) from bugfix/fix_copper_right_click into master
Reviewed-on: MineClone2/MineClone2#3076
Reviewed-by: AFCMS <afcm.contact@gmail.com>
2022-12-07 17:27:47 +00:00
ancientmarinerdev 9d87dcf611
Fix right click on copper crash 2022-12-07 18:27:11 +01:00
AFCMS 0f99373779 Merge pull request '`mobs_mc` silverfish fixes' (#2935) from mc-mobs-silverfish-fixes into master
Reviewed-on: MineClone2/MineClone2#2935
Reviewed-by: kabou <kabou@noreply.git.minetest.land>
2022-12-07 17:24:09 +00:00
AFCMS bbf21762a6
Format again 2022-12-07 18:22:54 +01:00
AFCMS 34a7cf3e9f
Remove duplicated `reach` field 2022-12-07 18:22:54 +01:00
AFCMS 3153c41f3a
Remove mtg compatibility code 2022-12-07 18:22:53 +01:00
AFCMS 489d3b7da6
Format file 2022-12-07 18:22:53 +01:00
ancientmarinerdev 2d05f9bc89 Merge pull request 'mcl_ver_info' (#3043) from mcl_ver_info into master
Reviewed-on: MineClone2/MineClone2#3043
Reviewed-by: ancientmarinerdev <ancientmariner_dev@proton.me>
2022-12-06 23:43:00 +00:00
Michieal 8256fe6f04 remove extraneous messages 2022-12-06 23:40:11 +00:00
Michieal bceb9cd855 Removed the id= line.
Since we don't know when the api will be finished, I removed the ID line just in case.
2022-12-06 23:40:11 +00:00
Michieal 1c1ae53cec Fixed game.conf to work with the workaround by reubenwardy. 2022-12-06 23:40:11 +00:00
Michieal 0bc88b55e5 Added in Workaround for ID not yet implemented in 5.70-Dev Minetest.
For more information, please see: https://github.com/minetest/minetest/pull/12989#issuecomment-1336407807
2022-12-06 23:40:11 +00:00
Michieal d80dd41cb4 Add in template file for translations. 2022-12-06 23:40:11 +00:00
Michieal 43a69c445f Added in Error Handling
The /ver command now has error handling, so that it will work regardless of minetest version, and will tell the user to update the minetest version for support. 

Also updated the mod.conf to have the author field filled out. 

todo: still needs translation files.
2022-12-06 23:40:11 +00:00
Michieal dbe0437201 add in translator code for S("") 2022-12-06 23:40:11 +00:00
Michieal 51372da2b9 update game.conf to have version id code for /ver command. 2022-12-06 23:40:11 +00:00
Michieal 283b7c7410 Add in Versioning info using /ver command. 2022-12-06 23:40:10 +00:00
𝕵𝖔𝖍𝖆𝖓𝖓𝖊𝖘 𝕱𝖗𝖎𝖙𝖟 bfa75dbcd2 Merge pull request 'Pressure plates check for entity contact' (#3033) from pplates into master
Reviewed-on: MineClone2/MineClone2#3033
Reviewed-by: ancientmarinerdev <ancientmariner_dev@proton.me>
2022-12-06 13:48:26 +00:00
𝕵𝖔𝖍𝖆𝖓𝖓𝖊𝖘 𝕱𝖗𝖎𝖙𝖟 7c87ed2d6c Add rightclick support to pplates 2022-12-05 14:25:11 -06:00
𝕵𝖔𝖍𝖆𝖓𝖓𝖊𝖘 𝕱𝖗𝖎𝖙𝖟 d8c16b1f31 Add 1 sec deactivation delay to pplates 2022-12-05 14:25:10 -06:00
𝕵𝖔𝖍𝖆𝖓𝖓𝖊𝖘 𝕱𝖗𝖎𝖙𝖟 ba292aeb5d Pressure plates check for entity contact 2022-12-05 14:25:10 -06:00
ancientmarinerdev 055a93843f Merge pull request 'Fix incorrect call to gopath for raid due to mobs refactor.' (#3063) from bugfix/raids_crash_gopath into master
Reviewed-on: MineClone2/MineClone2#3063
Reviewed-by: kabou <kabou@noreply.git.minetest.land>
2022-12-05 13:10:01 +00:00
ancientmarinerdev a3cded0133 Fix zombie siege calling gopath incorrectly 2022-12-05 00:13:49 +00:00
ancientmarinerdev 2b52eaa6ef Fix incorrect call to gopath for raid due to mobs refactor. 2022-12-04 22:34:31 +00:00
𝕵𝖔𝖍𝖆𝖓𝖓𝖊𝖘 𝕱𝖗𝖎𝖙𝖟 71a03bff6f Merge pull request 'Fix Axelotl crash for right click' (#3057) from axelotl_fix into master
Reviewed-on: MineClone2/MineClone2#3057
Reviewed-by: 𝕵𝖔𝖍𝖆𝖓𝖓𝖊𝖘 𝕱𝖗𝖎𝖙𝖟 <mrrar@noreply.git.minetest.land>
2022-12-04 18:04:02 +00:00
ancientmarinerdev a0a0c69213 Fix Axelotl crash for right click 2022-12-04 11:34:48 -06:00
𝕵𝖔𝖍𝖆𝖓𝖓𝖊𝖘 𝕱𝖗𝖎𝖙𝖟 e57551f764 Merge pull request 'Replace lighting rod nodebox by 3d model' (#3042) from mcl-lightning-rod-model into master
Reviewed-on: MineClone2/MineClone2#3042
Reviewed-by: 𝕵𝖔𝖍𝖆𝖓𝖓𝖊𝖘 𝕱𝖗𝖎𝖙𝖟 <mrrar@noreply.git.minetest.land>
2022-12-04 17:20:29 +00:00
AFCMS 18cfb88ae5 Replace lighting rod nodebox by 3d model 2022-12-04 11:13:36 -06:00
chmodsayshello 826b9fcc45 Merge pull request 'Add Recovery Compasses' (#3049) from recovery_compass into master
Reviewed-on: MineClone2/MineClone2#3049
Reviewed-by: AFCMS <afcm.contact@gmail.com>
2022-12-02 20:57:15 +00:00
chmodsayshello 7dacfe2cba make recovery compass spin randomly in other dimensions 2022-12-02 18:52:31 +01:00
chmodsayshello 7d57e73ae4 fix recovery compass overwriting every other item 2022-12-02 15:43:08 +01:00
chmodsayshello 7f59611914 add crafting recipie 2022-12-02 15:40:18 +01:00
chmodsayshello 927fd60786 translation stuff 2022-12-01 21:20:39 +01:00
chmodsayshello ab031daa5a recovery compass 2022-12-01 21:13:41 +01:00
cora 588425df73 Merge pull request 'Fix twisted vines breaking block when growing' (#3037) from fix_tvines_breaking into master
Reviewed-on: MineClone2/MineClone2#3037
2022-11-29 11:23:21 +00:00
cora 25d0f2b0c4 Fix twisted vines breaking block when growing 2022-11-29 12:21:33 +01:00
cora 85e7de6c14 Merge pull request 'Sweetberry, nethervines: Fix placing in protected area' (#3038) from fix_sweet_berry_protection into master
Reviewed-on: MineClone2/MineClone2#3038
2022-11-29 11:21:14 +00:00
cora d395c82183 Fix bonemeal creative for sweet berries and nether vines 2022-11-29 12:20:39 +01:00
cora 34a558ced9 Sweetberry, nethervines: Fix placing in protected area 2022-11-29 12:20:39 +01:00
cora 17f789550d Merge pull request 'Fix creeper crash (wrong self ref)' (#3044) from fix_creeper_crash into master
Reviewed-on: MineClone2/MineClone2#3044
2022-11-29 02:42:12 +00:00
cora 9508cd4c25 Fix creeper crash 2022-11-29 03:28:19 +01:00
cora c4808beef4 Merge pull request 'Mobs fixes' (#3032) from mobs_cleanup into master
Reviewed-on: MineClone2/MineClone2#3032
2022-11-28 03:26:53 +00:00
cora 69c64a2c24 Fix wrong self ref with mcl_mobs.spawn_child 2022-11-28 03:26:51 +01:00
cora 318da7e3c9 Fix local go_to_pos call 2022-11-28 03:26:51 +01:00
cora 5e022ef083 Merge pull request 'Epic hamburger fight PR' (#2959) from mcl_hamburger into master
Reviewed-on: MineClone2/MineClone2#2959
2022-11-28 02:06:48 +00:00
Michieal c45e4d292a Added in Author Info to the conf file. 2022-11-28 03:03:42 +01:00
Michieal a542503b72 Delete '.idea/vcs.xml' 2022-11-28 03:03:42 +01:00
Michieal 4b570b1aa9 Delete '.idea/modules.xml' 2022-11-28 03:03:42 +01:00
Michieal cc190eeb62 Delete '.idea/misc.xml' 2022-11-28 03:03:42 +01:00
Michieal 7e31ece325 Delete '.idea/MineClone2-mcl_hamburger.iml'
.
2022-11-28 03:03:42 +01:00
Michieal b783e616df Delete '.idea/.gitignore'
.
2022-11-28 03:03:42 +01:00
Michieal f1ae86ede5 Add in the Translation files for the base languages. 2022-11-28 03:03:42 +01:00
Michieal c63533c753 Updated the readme.txt to reflect the changes. 2022-11-28 03:03:42 +01:00
Michieal 81fa7cf74c Removed outdated translate files.
made new translation template.
Changed _alt image.
Updated the readme.txt to reflect the changes.

Added a secondary crafting recipe for the Hamburger.
2022-11-28 03:03:42 +01:00
Michieal 5378aae09e Add in achievement. 2022-11-28 03:03:42 +01:00
Michieal aec16ee62e Textures redo. 2022-11-28 03:03:42 +01:00
cora 0cdf84ab47 Fix translation warning 2022-11-28 03:03:42 +01:00
cora 31395a8830 make setting just hide the hamburger, not disable it 2022-11-28 03:03:42 +01:00
cora 8e74a5a56a some basic burger cleanup 2022-11-28 03:03:42 +01:00
Michieal 2149ca1147 Fixed the name in mod.conf.
updated the mod.conf so that it reflects the coding to come.
2022-11-28 03:03:42 +01:00
Michieal de7696ce69 Changed calling function. 2022-11-28 03:03:42 +01:00
Michieal 4b777b1d9c Fixed Indentation. 2022-11-28 03:03:42 +01:00
Michieal dadb8f9287 fix indentation. 2022-11-28 03:03:42 +01:00
Michieal 83b40f8cff add flavor text, code clean up
Changed to have the flavor text to give it character.
Fixed misspellings.
Cleaned up the code from the initial commit.
Changed from API to single item.
Fixed the mod name, so that it matches "mcl_" format.

Added comments.
2022-11-28 03:03:42 +01:00
cora ce95f034b4 Add setting to turn hamburgers on and off 2022-11-28 03:03:39 +01:00
Michieal 2b3ec8d944 remove .idea files 2022-11-28 03:02:51 +01:00
Michieal 972e9ea0f8 Fix initial commit. 2022-11-28 03:02:51 +01:00
Michieal df62a3aac1 Initial code comit 2022-11-28 03:02:51 +01:00
cora 7cc25c4670 Merge pull request 'grand mcl_mobs cleanup part 1' (#2925) from mobs_cleanup into master
Reviewed-on: MineClone2/MineClone2#2925
2022-11-27 13:57:35 +00:00
cora ebf214c043 Check if spawndef exists when spawning 2022-11-27 14:53:17 +01:00
cora 7bd0b5a9b1 Some more missing arg fixes 2022-11-27 14:53:16 +01:00
cora bc496a8682 Finally indent register_mob and make registered mobs global 2022-11-27 14:53:16 +01:00
cora a3415647d4 Fix do_jump call in combat.lua 2022-11-27 14:53:16 +01:00
cora 4909ef6ff7 Restructure on_step a bit 2022-11-27 14:53:16 +01:00
cora 3c6d79ecb3 Add entity name to debug box 2022-11-27 14:53:16 +01:00
cora 6948b77226 move debug/nametag code back to api.lua 2022-11-27 14:53:16 +01:00
cora 90321ee578 Fix leftover local do_attack call 2022-11-27 14:53:16 +01:00
cora 2b691dea07 Fix some more global var warnings 2022-11-27 14:53:16 +01:00
cora c25287e493 Some cleanup 2022-11-27 14:53:16 +01:00
epCode 762f64a4d1 Fix mob rotation glitching out near 0/360 in degrees
The problem mainly was that the set_yaw function was not allowing for negitive values.
2022-11-27 14:53:16 +01:00
cora db63f1c453 fix leftover pi shortcut 2022-11-27 14:53:16 +01:00
cora faa38ffab8 Fix some warnings 2022-11-27 14:53:16 +01:00
cora 19d6d43b39 move on_blast default to mob default def 2022-11-27 14:53:16 +01:00
cora 28b6fcf289 Move detach_child to mount.lua 2022-11-27 14:53:16 +01:00
cora 80490b4c11 Move smooth rotation to separate function 2022-11-27 14:53:16 +01:00
cora 5e177c61f6 Move on_step despawning to separate function 2022-11-27 14:53:16 +01:00
cora c9c2b874be move relative animation speed to separate function 2022-11-27 14:53:16 +01:00
cora 18c415f6a0 put head swivel in separate function 2022-11-27 14:53:16 +01:00
cora 49670d1d28 put water flow code in separate function 2022-11-27 14:53:16 +01:00
cora a25cd921f2 move do_states to movement.lua 2022-11-27 14:53:16 +01:00
cora 91b5b6266c move stray particle spawner func to effects 2022-11-27 14:53:16 +01:00
cora 148b30694f Fix monster_attack and some other settings issues 2022-11-27 14:53:16 +01:00
cora f4374d9efd Fix item drops 2022-11-27 14:53:16 +01:00
cora b41d6a1cae Fix mob_punch 2022-11-27 14:53:16 +01:00
cora 6548b7fe47 move stray pathfinding funcs to pathfinding file 2022-11-27 14:53:16 +01:00
cora c7681af53e Move registration functions to init.lua 2022-11-27 14:53:16 +01:00
cora cc77e109f5 Split off general movement functions 2022-11-27 14:53:16 +01:00
cora e7d9ded9ab Split off combat funcs 2022-11-27 14:53:16 +01:00
cora 96d697c5cd Split off pathfinding, use metatables 2022-11-27 14:53:16 +01:00
cora 01abfea16d Split off item management 2022-11-27 14:53:16 +01:00
cora bbba7cee41 Add compat for old "wrong" : notation 2022-11-27 14:53:16 +01:00
cora e82c318f0c Split off breeding 2022-11-27 14:53:16 +01:00
cora 70834d0f5d make register functions use the . notation 2022-11-27 14:53:16 +01:00
cora d62dbcb852 effects -> separate file + metatable 2022-11-27 14:53:16 +01:00
cora 67fd8c8b40 split off physics functions into separate file + use metatable 2022-11-27 14:53:16 +01:00
cora 90639ef99d remove unused functions 2022-11-27 14:53:16 +01:00
cora 31ef791cfd Add proper metatable to mobs 2022-11-27 14:53:16 +01:00
cora 4d5104ff8f Merge pull request 'Add disallowed mapgen setting for v6' (#3021) from disable_v6_mapgen into master
Reviewed-on: MineClone2/MineClone2#3021
2022-11-27 13:52:45 +00:00
cora b7962b067f Add disallowed mapgen setting for v6 2022-11-27 14:50:58 +01:00
cora 19dc86c951 Merge pull request 'Cocoa Pods Cleanup' (#2974) from FossFanatic/MineClone2:cocoa_pod_fixes into master
Reviewed-on: MineClone2/MineClone2#2974
Reviewed-by: cora <cora@noreply.git.minetest.land>
2022-11-27 13:49:24 +00:00
cora e3ee224532 Merge pull request 'version -> 0.82.0 (indev)' (#3030) from release_0.81.0 into master
Reviewed-on: MineClone2/MineClone2#3030
2022-11-27 13:36:22 +00:00
cora c209bff157 version -> 0.82.0 (indev) 2022-11-27 14:35:54 +01:00
cora 59a7608dfc Merge pull request 'Release 0.81.0' (#2952) from release_0.81.0 into master
Reviewed-on: MineClone2/MineClone2#2952
2022-11-27 12:59:28 +00:00
cora 8b08707e3f Add Faerraven to texture credits 2022-11-27 04:54:30 +01:00
cora dd8f64e039 Add Ranko Saotome to credits 2022-11-27 04:40:14 +01:00
cora 56519c881e Set version to 0.81 2022-11-27 04:40:14 +01:00
cora 944d53111a Update credits 2022-11-27 04:40:14 +01:00
PrairieWind 33c3007709 Merge pull request 'Final fixes for 0.81' (#3027) from final_fixes into master
Reviewed-on: MineClone2/MineClone2#3027
Reviewed-by: PrairieWind <prairie.astronomer1@gmail.com>
2022-11-27 03:38:14 +00:00
PrairieWind 8d5aea9743 Fix New Button Names 2022-11-27 03:36:38 +00:00
cora fa2a2bb8ac Remove mcl_copper screenshot 2022-11-27 03:36:38 +00:00
cora ee808e8f84 optimize excessively large mcl_shield_hud.png texture 2022-11-27 03:36:38 +00:00
cora 53d11ec71b Add new wood types buttons 2022-11-27 03:36:38 +00:00
cora f1aca79f9c Merge pull request 'Player location using mcl_info' (#3022) from mcl_info_player_coords into master
Reviewed-on: MineClone2/MineClone2#3022
2022-11-27 03:33:48 +00:00
cora fb8b3d5f55 Cleanup mcl_info clutter and messy var localization 2022-11-27 04:31:24 +01:00
Michieal 8184d4938c Modify init.lua to allow normal player usage.
Changes made:
* Put in new chatcommand /whereami to allow normal players to turn on / off player location coords without needing special privs.
* Made Debug Coords level 2, Player Location level 1, and Off level 0. (Allows turning the location off.)
* Put in nil value check into get_text, to prevent errors caused by definitions accidentally not returning a value.
* Cached pairs, ipairs, and table because the code is called every 0.63 seconds, and it made sense to do so. (Hopefully, will help
  to mitigate the added load on framerate.)
2022-11-27 04:31:24 +01:00
Michieal da64a10403 mcl_info: Add player coords field to debug hud 2022-11-27 04:31:24 +01:00
cora 2a54ea6e74 mcl_info: Allow debug field that's visible for everyone 2022-11-27 04:31:24 +01:00
PrairieWind 8b7b2f02e9 Merge pull request 'Fish buckets save and restore object properties in item entity' (#3013) from fish_bucket_save into master
Reviewed-on: MineClone2/MineClone2#3013
Reviewed-by: PrairieWind <prairie.astronomer1@gmail.com>
2022-11-27 03:10:11 +00:00
cora 927eff691c Fix node on_rightclick with fishbucket 2022-11-27 04:02:34 +01:00
cora efdd22d69f Fix fishbuckets placing water in the nether 2022-11-27 00:17:13 +01:00
cora f14bfdc0cd Clear item meta when turning fishbucket to empty bucket
before it simply set a different itemstring, now it creates a
whole new itemstack
2022-11-26 22:18:46 +01:00
cora 66322a873b Fix infinite fishbucket placement in survival/creative 2022-11-26 22:18:46 +01:00
cora e134cc5e65 make it possible to place fishbucket in flowing riverwater 2022-11-26 22:18:46 +01:00
cora 1fcedd1375 Fix fishbucket _on_dispense 2022-11-26 22:18:46 +01:00
cora bb73e5f1cd Make it possible to pick up fish with river water bucket 2022-11-26 22:18:46 +01:00
cora d4c2501d62 Axolotl cleanup, remove clutter 2022-11-26 22:18:46 +01:00
cora 708fcfb368 Axolotl: remove cod-inherited swarming code 2022-11-26 22:18:46 +01:00
cora ebf4678e54 mcl_buckets whitespace fixes 2022-11-26 22:18:46 +01:00
cora b4971b298d Move fish bucket code to separate file 2022-11-26 22:18:46 +01:00
cora d3349396b4 Save tropical fish properties in item meta on bucket pickup 2022-11-26 22:18:46 +01:00
cora 665e8a06a2 Save axolotl properties in item meta on bucket pickup 2022-11-26 22:18:46 +01:00
cora 67e8f13a96 Axolotl whitespace fixes 2022-11-26 22:18:46 +01:00
cora 99db678a44 Fish buckets set properties from bucket item meta 2022-11-26 22:18:46 +01:00
cora dd58bed5d1 refactor fish bucket code to not use bucket api
it was clearly not made for this
2022-11-26 22:18:46 +01:00
cora 9cf910c47f Merge pull request 'Event api, Raids, Zombie sieges' (#2833) from events into master
Reviewed-on: MineClone2/MineClone2#2833
Reviewed-by: 𝕵𝖔𝖍𝖆𝖓𝖓𝖊𝖘 𝕱𝖗𝖎𝖙𝖟 <mrrar@noreply.git.minetest.land>
2022-11-26 21:12:46 +00:00
cora 69f5bad0bb Document mcl_events 2022-11-26 17:06:04 +01:00
cora ac7038e7a5 Raids/raidcaptain: Nil check cmi_cause
apparently is nil sometimes
2022-11-26 17:06:04 +01:00
cora 3b368fdd5a Fix wrong var name for mob table 2022-11-26 17:06:04 +01:00
cora 624092ddd3 Search the area before giving up when no mobs in table left
otherwise it will advance stages prematurely
2022-11-26 17:06:04 +01:00
cora dabc09adb2 Lower and unify distance check 2022-11-26 17:06:04 +01:00
cora d0ea7c4059 Set events metatable correctly 2022-11-26 17:06:04 +01:00
cora 87d5cdc439 Make raid end firework last a bit longer 2022-11-26 17:06:04 +01:00
cora c6fc388597 Add _harmless option for rocket arrows
so event fireworks dont grief things
2022-11-26 17:06:04 +01:00
cora 93e5034317 Add fireworks when raid complete 2022-11-26 17:06:04 +01:00
cora 8564a12398 Nerf vex summoning so evoker doesnt spawn infinite vexes 2022-11-26 17:06:04 +01:00
cora e5515ed119 Add debug field: active event counter
to verify it doesn't memleak
2022-11-26 17:06:04 +01:00
cora 94057aa7e5 Code cleanup 2022-11-26 17:06:04 +01:00
cora db4f9ec5a3 Fix raid instawin when no spawnable blocks found 2022-11-26 17:06:04 +01:00
cora 057a78ed30 Fix raid registering as completed when unloading the area 2022-11-26 17:06:04 +01:00
cora 22fa5096c9 Add debug command status feedback 2022-11-26 17:06:04 +01:00
cora 2147790b44 Add setting to disable events 2022-11-26 17:06:04 +01:00
PrairieWind a1e21b44c8 Add code to unlock Voluntary Exile advancement 2022-11-26 17:06:04 +01:00
cora 358250012f Remove banner when not attached 2022-11-26 17:06:04 +01:00
cora 608da950e4 Abort events when no player is near 2022-11-26 17:06:04 +01:00
cora c3455de604 Clear bad omen when raid complete 2022-11-26 17:06:04 +01:00
cora 6251c623dd Give player bad omen effect when killing captain 2022-11-26 17:06:04 +01:00
cora 62fe08de59 Make illagers pick up ominous banners and promote themselves to captain 2022-11-26 17:06:04 +01:00
cora af0c718538 Add natural raidcaptain spawning 2022-11-26 17:06:04 +01:00
cora 3600bc8066 Spawn raidcaptain in raids 2022-11-26 17:06:04 +01:00
cora d1788b5643 Add actual banner pattern, drop banner on death 2022-11-26 17:06:04 +01:00
cora c7cc9ccb3e Add raid captain spawn func with banner attach 2022-11-26 17:06:04 +01:00
cora 097ee8b4d4 Z sieges happen in 10% of the nights 2022-11-26 17:06:04 +01:00
cora 59d384020e Finx spawn positions in 16-radius 2022-11-26 17:06:04 +01:00
cora 1d18482103 Comment out excessive logging 2022-11-26 17:06:04 +01:00
cora b82912f30d Add zombie sieges 2022-11-26 17:06:04 +01:00
PrairieWind 48a8511052 Make bossbars enablable/disablable per event type. Update some capitalization. 2022-11-26 17:06:04 +01:00
PrairieWind 160d7ca6fa Add Voluntary Exile Advancement 2022-11-26 17:06:04 +01:00
cora ae90cbe3ef Set raiders on path to village after spawn 2022-11-26 17:06:04 +01:00
cora 9893dee1aa Add debug chatcommand to start events 2022-11-26 17:06:04 +01:00
cora 232f57c247 Add hero of the village achievement 2022-11-26 17:06:04 +01:00
cora dc017864fd raids: properly integrate potions api
supports "level" now, bad omen > 1 means extra wave additionally
the playername is saved in the event object now for later access
and events can be made exclusive to a certain radius now.
2022-11-26 17:06:04 +01:00
cora 2159edba05 Remove dependency on mcl_potions 2022-11-26 17:06:04 +01:00
cora 37144f8787 Check for actual raid conditions and positions 2022-11-26 17:06:04 +01:00
cora 7ab2c5fecd Make debug output an opt-in setting 2022-11-26 17:06:04 +01:00
cora 99fce095ef fix closure style function declarations
its BANNED in CONTRIB.md
2022-11-26 17:06:04 +01:00
cora 390aec5d7a Integrate raids with mcl_events 2022-11-26 17:06:04 +01:00
cora 052e76bfcc start at effective stage 1 2022-11-26 17:06:04 +01:00
cora f17a9220bb Add bossbar support 2022-11-26 17:06:04 +01:00
cora 627ce0dc3b Finish at max_stage not max_stage + 1 2022-11-26 17:06:04 +01:00
cora f06d5a1ee3 Add event api
prototype state, test with chatcommand /infest (debug priv)
2022-11-26 17:06:03 +01:00
PrairieWind 5dc1a3d456 Village Finder Tweaks 2022-11-26 17:06:03 +01:00
PrairieWind 1b6d778dd1 Add Village Checks 2022-11-26 17:06:03 +01:00
PrairieWind 96ac31bec3 Add Bad Omen Effect 2022-11-26 17:06:03 +01:00
PrairieAstronomer 8b6409b7f1 Add mcl_raids 2022-11-26 17:06:03 +01:00
cora 6e6f163b71 Merge pull request 'Fix pressure plates getting pressed by new chest size' (#3019) from pressureplates_chest_fix into master
Reviewed-on: MineClone2/MineClone2#3019
2022-11-26 16:03:53 +00:00
cora ba7da6a885 Fix pressure plates being pressed by new chest size
this fixes the problem for chests, with paintings it would need to
go down considerably ( .65 was the value i determined)
2022-11-26 16:52:19 +01:00
cora 3066d966a1 Add the missing wood types pressure plates 2022-11-26 16:52:19 +01:00
cora 626f61c2c1 Merge pull request 'Nether Plank Fixes' (#3023) from FossFanatic/MineClone2:nether_plank_fixes into master
Reviewed-on: MineClone2/MineClone2#3023
Reviewed-by: cora <cora@noreply.git.minetest.land>
2022-11-26 12:58:21 +00:00
FossFanatic f71759f184 Fix crimson & warped planks 2022-11-26 11:54:34 +00:00
cora 0942949c5d Merge pull request 'Fix axolotl breeding' (#3007) from Axolotl into master
Reviewed-on: MineClone2/MineClone2#3007
Reviewed-by: cora <cora@noreply.git.minetest.land>
2022-11-25 02:48:55 +00:00
cora b255c8c23e Merge pull request 'Fix Baby Striders being extra small' (#3010) from baby_strider_size_fix into master
Reviewed-on: MineClone2/MineClone2#3010
Reviewed-by: cora <cora@noreply.git.minetest.land>
2022-11-24 22:31:14 +00:00
PrairieWind e1ba319616 Fix Baby Striders being extra small 2022-11-24 14:46:54 -07:00
𝕵𝖔𝖍𝖆𝖓𝖓𝖊𝖘 𝕱𝖗𝖎𝖙𝖟 88897566d9 Fix axolotl breeding 2022-11-24 09:10:17 -06:00
PrairieWind 4cc0a5b0f1 Merge pull request 'Remove tools/remove_end.py' (#3000) from remove_remove_end into master
Reviewed-on: MineClone2/MineClone2#3000
Reviewed-by: AFCMS <afcm.contact@gmail.com>
Reviewed-by: PrairieWind <prairie.astronomer1@gmail.com>
2022-11-23 17:08:18 +00:00
cora ab0f88ad37 Remove remove_end.py 2022-11-23 09:49:32 +01:00
cora 53c1ed9fbf Merge pull request 'Axolotl' (#2870) from TheOnlyJoeEnderman/MineClone2:Axolotl into master
Reviewed-on: MineClone2/MineClone2#2870
Reviewed-by: cora <cora@noreply.git.minetest.land>
2022-11-23 03:18:36 +00:00
cora a3fbb2e0c9 Merge pull request 'Grass Block Underside Fix' (#2987) from FossFanatic/MineClone2:grass_block_underside_fix into master
Reviewed-on: MineClone2/MineClone2#2987
Reviewed-by: cora <cora@noreply.git.minetest.land>
2022-11-21 10:34:12 +00:00
cora 22063a64db Merge pull request 'update .gitignore' (#2994) from gitignore_update into master
Reviewed-on: MineClone2/MineClone2#2994
2022-11-21 02:29:56 +00:00
Michieal 9fc27da873 update .gitignore
Preventing .idea directories from being uploaded to the branches. 
Makes it easier for devs that use IntelliJ's IDEA. (at least 2 developers here currently use it)
2022-11-21 02:05:27 +00:00
PrairieWind 556316ae34 Merge pull request 'Make waterlogged roots more water looking' (#2992) from waterlogged_roots_visual_update into master
Reviewed-on: MineClone2/MineClone2#2992
Reviewed-by: PrairieWind <prairie.astronomer1@gmail.com>
2022-11-20 19:28:28 +00:00
Michieal 9ffdd13fa5 Make waterlogged roots more water looking
A quick change to the setting within the wlroots definition that makes the water translucent.
It's not perfect, but I think it looks better blended than opaque.
2022-11-20 19:16:39 +00:00
PrairieWind 9cfbbef41d Merge pull request 'Fix lightning boat crash' (#2990) from fix_lightning_boat_crash into master
Reviewed-on: MineClone2/MineClone2#2990
Reviewed-by: PrairieWind <prairie.astronomer1@gmail.com>
2022-11-20 19:12:38 +00:00
cora adfbf4bc64 Fix lightning boat crash 2022-11-20 02:54:42 +01:00
FossFanatic 1a5aed704c Fix underside of grass block 2022-11-19 11:28:31 +00:00
cora d738eb0554 Merge pull request 'Updated colors.txt' (#2986) from Ranko_Saotome/MineClone2:master into master
Reviewed-on: MineClone2/MineClone2#2986
2022-11-19 01:24:55 +00:00
Ranko_Saotome 0fb6d20bc7 Updated colors.txt 2022-11-19 01:11:40 +00:00
cora 94e7520b08 Merge pull request '`mcl_tnt` fixes' (#2937) from mcl-tnt-fixes into master
Reviewed-on: MineClone2/MineClone2#2937
Reviewed-by: cora <cora@noreply.git.minetest.land>
2022-11-19 00:28:04 +00:00
AFCMS 029769f48f Fixes to `mcl_tnt`
- reorder code
- fix potential crashes with not handeled nil values
- use new vectors
2022-11-19 01:27:32 +01:00
cora 0fb040476b Merge pull request 'mcl_enchanting: Add missing dependency on mcl_experience.' (#2984) from missing-dep-ench-xp into master
Reviewed-on: MineClone2/MineClone2#2984
2022-11-18 20:35:51 +00:00
Daniel Cassidy 79192d51ed mcl_enchanting: Add missing dependency on mcl_experience. 2022-11-18 21:30:50 +01:00
cora 6051731645 Merge pull request 'Respawn Anchor Top Animation' (#2981) from FossFanatic/MineClone2:respawn_anchor_animation into master
Reviewed-on: MineClone2/MineClone2#2981
Reviewed-by: cora <cora@noreply.git.minetest.land>
2022-11-18 13:47:53 +00:00
FossFanatic dec2c2bade Merge branch 'master' into cocoa_pod_fixes 2022-11-18 08:27:19 +00:00
FossFanatic e25415e047 Merge branch 'master' into respawn_anchor_animation 2022-11-18 08:24:57 +00:00
FossFanatic f93af56bf6 Remove MineCraft derivative texture 2022-11-18 08:16:53 +00:00
FossFanatic f8b98d784b Add animated top texture 2022-11-18 08:12:16 +00:00
FossFanatic e898b72f3d Add animated top texture 2022-11-18 08:11:39 +00:00
cora 90bd0ee315 Merge pull request 'signs_crafting_fix' (#2980) from signs_crafting_fix into master
Reviewed-on: MineClone2/MineClone2#2980
Reviewed-by: cora <cora@noreply.git.minetest.land>
2022-11-17 23:52:44 +00:00
cora 7d63b07e09 Fix mangrove sign registrations 2022-11-18 00:51:45 +01:00
Michieal 197e807684 Fix the crafting recipes for the signs.
Placed in the proper place. Ugh.
2022-11-18 00:51:45 +01:00
Michieal 467700591b revert 62fb34a029a78e74a4b768a30827961329719551
revert Fix the crafting recipes for the signs.
2022-11-18 00:51:45 +01:00
Michieal a7e643818f Fix the crafting recipes for the signs. 2022-11-18 00:51:45 +01:00
cora cf282a5154 Merge pull request 'Make Raw Copper (Block) smeltable in the blast furnace' (#2978) from blast_f_smelt_copper into master
Reviewed-on: MineClone2/MineClone2#2978
Reviewed-by: cora <cora@noreply.git.minetest.land>
2022-11-17 23:39:35 +00:00
PrairieWind 1877f7261e Make Raw Copper (Block) smeltable in the blast furnace 2022-11-18 00:33:17 +01:00
cora adeb6c42e5 Merge pull request 'Make kelp cookable in the smoker' (#2979) from anarquimico/MineClone2:kelp_smoker into master
Reviewed-on: MineClone2/MineClone2#2979
Reviewed-by: cora <cora@noreply.git.minetest.land>
2022-11-17 23:30:21 +00:00
anarquimico e658e29179 Make kelp cookable by smoker. 2022-11-17 20:16:58 -03:00
PrairieWind 7e3cb59863 Merge pull request 'Base mcl_skins templates off old PP skins' (#2977) from old_pp_skins into master
Reviewed-on: MineClone2/MineClone2#2977
Reviewed-by: PrairieWind <prairie.astronomer1@gmail.com>
2022-11-17 21:53:45 +00:00
𝕵𝖔𝖍𝖆𝖓𝖓𝖊𝖘 𝕱𝖗𝖎𝖙𝖟 a6db44b71f Base mcl_skins templates off old PP skins 2022-11-17 21:52:35 +00:00
PrairieWind eaccd71558 Merge pull request 'Sweet berries: Add rightclick harvesting' (#2971) from sweet_berries into master
Reviewed-on: MineClone2/MineClone2#2971
Reviewed-by: PrairieWind <prairie.astronomer1@gmail.com>
2022-11-17 19:48:30 +00:00
cora 142f3d6d5a Handle bonemealing in the sweetberry on_rightclick 2022-11-17 19:42:02 +00:00
cora 328a377940 export apply_bone_meal function in mcl_dye
this is essentially just a hack to not put any more sweetberry code
in mcl_dye because the architecture makes it necessary for mcl_dye
to depend on mcl_farming, not the other way around - hence all the
plant bonemealing is done in mcl_dye...
2022-11-17 19:42:02 +00:00
cora c5ec3c770c Sweet berries: Add rightclick harvesting 2022-11-17 19:42:02 +00:00
cora 5a9d428151 Merge pull request 'Hoppers pulling from chest minecart' (#2954) from anarquimico/MineClone2:hoppers_mc_chest into master
Reviewed-on: MineClone2/MineClone2#2954
Reviewed-by: ancientmarinerdev <ancientmariner_dev@proton.me>
Reviewed-by: cora <cora@noreply.git.minetest.land>
2022-11-17 05:38:39 +00:00
cora 883ca05c3a Merge pull request 'Add missing EndBarrens biome definition' (#2970) from endbarrens into master
Reviewed-on: MineClone2/MineClone2#2970
2022-11-17 05:33:44 +00:00
cora dea647129e Add missing EndBarrens biome definition 2022-11-17 06:32:38 +01:00
cora 35e30df552 Merge pull request 'Make Steve hair unlike MC' (#2963) from steve_hair into master
Reviewed-on: MineClone2/MineClone2#2963
Reviewed-by: cora <cora@noreply.git.minetest.land>
2022-11-17 05:31:40 +00:00
𝕵𝖔𝖍𝖆𝖓𝖓𝖊𝖘 𝕱𝖗𝖎𝖙𝖟 d764c3eac3 Make Steve hair unlike MC 2022-11-17 05:30:55 +00:00
cora f397ff83ff Merge pull request 'Honey and Beehives' (#2911) from honey into master
Reviewed-on: MineClone2/MineClone2#2911
Reviewed-by: MysticTempest <mystictempest@noreply.git.minetest.land>
Reviewed-by: cora <cora@noreply.git.minetest.land>
2022-11-17 02:28:11 +00:00
PrairieWind 89a342a34f Add Bee Nest Tree Schematics and generation 2022-11-17 03:16:45 +01:00
PrairieWind b17dcf26da Make beehives transparent and not launch entities, thanks MysticTempest! 2022-11-17 03:16:45 +01:00
PrairieWind c767c617f8 Add waxing copper blocks 2022-11-17 03:16:45 +01:00
PrairieWind fb651a4922 Wax On and Wax Off Advancements 2022-11-17 03:16:45 +01:00
PrairieWind 16f878d3dc Make Honey Blocks Sticky
Uses slime block stickiness code.
2022-11-17 03:16:45 +01:00
PrairieWind bbb908239b Total Beelocation Advancement 2022-11-17 03:16:45 +01:00
PrairieWind 0aaaa05164 Bee Our Guest Advancement 2022-11-17 03:16:45 +01:00
PrairieWind 8a3c1eaa6e Add harvest and digging damage, and campfire usage
Damage is temporary until bees are implemented
2022-11-17 03:16:45 +01:00
PrairieWind a79692a68b Add harvesting functionality to bee nests
Still has temporary abm updating
2022-11-17 03:16:45 +01:00
PrairieWind cb60338f10 Add basic functionality to beehives
Uses a temporary ABM to progress through honey levels
2022-11-17 03:16:45 +01:00
PrairieWind 89b02c126a Add basic beehives and bee nests
Still need to add functionality
2022-11-17 03:16:45 +01:00
PrairieWind db0b44326b Add crafting recipe item replacements 2022-11-17 03:16:45 +01:00
PrairieWind 4bb824cd38 Add mcl_honey mod.conf file along with translation templates 2022-11-17 03:16:45 +01:00
PrairieWind daf5bf90a4 Add Honey, Honeycomb, and respective blocks 2022-11-17 03:16:45 +01:00
cora d5b5d80a1a Merge pull request 'fix frames and signs to reset after /clearobjects' (#2919) from fix_clearobjs_signs_frames into master
Reviewed-on: MineClone2/MineClone2#2919
Reviewed-by: cora <cora@noreply.git.minetest.land>
2022-11-17 02:09:00 +00:00
Michieal 9dc27e535b revert 020a9510cbd7adf7419c166af5c2baba7c96cf45
revert "This has the achievement in there."

The only difference is the placement of a single comment, not worth a full on commit.
2022-11-17 02:55:14 +01:00
Michieal 439ac600fd This has the achievement in there. 2022-11-17 02:55:14 +01:00
Michieal bee40c55ec Fix KillAura bug destroying the Displayed Item. 2022-11-17 02:55:14 +01:00
Michieal 2577a70a65 Made displayed entities immortal
Added in extended placement. 
Registered the Achievement "Glow and Behold!"
2022-11-17 02:55:14 +01:00
Michieal e2e86ae9a8 Final commit
Add in the ability to place frames on surfaces. Has minor visual bugs. Should be modified to disallow placing on top of items to prevent visual bugging.

Signed-off-by: Michieal <michieal@noreply.git.minetest.land>
2022-11-17 02:55:14 +01:00
Michieal 577f9f7785 Change Frames to only use the timer if it's displaying an object. 2022-11-17 02:55:14 +01:00
Michieal 67296c7a37 Update Signs API to only use timer functions when there is text to display. 2022-11-17 02:55:14 +01:00
Michieal 4a1e37d9c6 fix typo that somehow propagated. 2022-11-17 02:55:14 +01:00
Michieal e67c6e1ada fix signs to reset after /clearobjects
Additionally, added in the register_hanging_sing_craft() for future use.
2022-11-17 02:55:14 +01:00
Michieal 10a3a022b6 fix frames to reset after /clearobjects 2022-11-17 02:55:14 +01:00
Michieal b2660e8c63 fix signs to reset after /clearobjects
Also, added in register_hanging_sign_craft() for future use.
2022-11-17 02:55:14 +01:00
Michieal c93f66295b fix frames to reset after /clearobjects 2022-11-17 02:55:14 +01:00
cora 4dba6a62cf Merge pull request 'Allow villagers to resettle and not run back to job and and old bed' (#2967) from feature/villager_pt_6 into master
Reviewed-on: MineClone2/MineClone2#2967
Reviewed-by: cora <cora@noreply.git.minetest.land>
2022-11-17 01:52:52 +00:00
cora a28f667b20 Villagers only summon golems when monsters are near 2022-11-17 02:26:51 +01:00
ancientmarinerdev 1a670bc41b Allow villagers to resettle and not run back to job and and old bed 2022-11-17 02:26:51 +01:00
cora cdf28ec684 Merge pull request 'Fix the Pumpkin/Melon grass position.' (#2973) from gourd_fix into master
Reviewed-on: MineClone2/MineClone2#2973
Reviewed-by: cora <cora@noreply.git.minetest.land>
2022-11-17 01:24:36 +00:00
Michieal 99a7df7ce6 Fix the Pumpkin/Melon grass position.
Also, updated the license.
2022-11-17 02:16:59 +01:00
𝕵𝖔𝖍𝖆𝖓𝖓𝖊𝖘 𝕱𝖗𝖎𝖙𝖟 7630b1ca00 Merge pull request 'Fix crash when trying to place meshhand' (#2934) from fix_meshnode_crash into master
Reviewed-on: MineClone2/MineClone2#2934
Reviewed-by: 𝕵𝖔𝖍𝖆𝖓𝖓𝖊𝖘 𝕱𝖗𝖎𝖙𝖟 <mrrar@noreply.git.minetest.land>
2022-11-16 18:33:24 +00:00
cora eeecc52ff8 Fix crash when trying to place meshhand 2022-11-16 12:23:39 -06:00
cora 661424ad23 Merge pull request 'better water visuals' (#2960) from better_visuals_water into master
Reviewed-on: MineClone2/MineClone2#2960
Reviewed-by: cora <cora@noreply.git.minetest.land>
2022-11-16 16:14:38 +00:00
FossFanatic 9b392fcefc Upload files to 'mods/ITEMS/mcl_cocoas/models' 2022-11-16 13:44:35 +00:00
FossFanatic d091d634bb Delete 'mods/ITEMS/mcl_cocoas/models/emptyfile' 2022-11-16 13:44:23 +00:00
FossFanatic 16746f962f Upload files to 'mods/ITEMS/mcl_cocoas/models' 2022-11-16 13:44:15 +00:00
FossFanatic 00c596c126 Add 'mods/ITEMS/mcl_cocoas/models/emptyfile' 2022-11-16 13:43:40 +00:00
FossFanatic 993d7b6873 Delete 'mods/ITEMS/mcl_cocoas/models' 2022-11-16 13:43:23 +00:00
FossFanatic ceff91e2c3 Add 'mods/ITEMS/mcl_cocoas/models/' 2022-11-16 13:43:11 +00:00
FossFanatic 6bfcd9b1ea Delete 'mods/ITEMS/mcl_cocoas/models/emptyfile' 2022-11-16 13:42:49 +00:00
FossFanatic 6b826b45e1 Add 'mods/ITEMS/mcl_cocoas/models/emptyfile' 2022-11-16 13:42:36 +00:00
FossFanatic 3de1f9e4d6 Delete 'mods/ITEMS/mcl_cocoas/mcl_cocoas_cocoa_stage_2.obj' 2022-11-16 13:39:41 +00:00
FossFanatic 348434adf1 Delete 'mods/ITEMS/mcl_cocoas/mcl_cocoas_cocoa_stage_1.obj' 2022-11-16 13:39:36 +00:00
FossFanatic 6946573e65 Delete 'mods/ITEMS/mcl_cocoas/mcl_cocoas_cocoa_stage_0.obj' 2022-11-16 13:39:32 +00:00
FossFanatic 862d6a9e3e Upload files to 'mods/ITEMS/mcl_cocoas' 2022-11-16 13:39:19 +00:00
FossFanatic 78d45d23c2 change the code 2022-11-16 13:38:44 +00:00
FossFanatic b11d65cc82 Update cocoa textures 2022-11-16 13:35:01 +00:00
FossFanatic f4f57a9fe6 Delete 'mods/ITEMS/mcl_cocoas/textures/mcl_cocoas_cocoa_top_stage_2.png' 2022-11-16 13:33:42 +00:00
TheOnlyJoeEnderman 9e73c2cd46 Remove spaces on line 70 (71)
Actually delete the spaces this time.
2022-11-16 08:00:35 +00:00
TheOnlyJoeEnderman 50e6dd94b2 Code cleaning
Remove outdated comment. Fix spaces on lines 40, 67, 70.
2022-11-16 07:58:07 +00:00
epCode 7ed8370eb0 localize var/fix weather not changing brightness while underwater. 2022-11-15 22:36:06 +00:00
epCode 3f8f6f8e44 deeper-darker image 2022-11-15 22:36:05 +00:00
epCode a5eb1d240e add deeper = darker 2022-11-15 22:36:05 +00:00
epCode ce724ee926 make sky color change when submerged 2022-11-15 22:36:05 +00:00
PrairieWind e0419f3568 Merge pull request 'Turn villagers to zombie villagers when killed by zombies half the time' (#2962) from villagers_to_zs into master
Reviewed-on: MineClone2/MineClone2#2962
Reviewed-by: PrairieWind <prairie.astronomer1@gmail.com>
2022-11-15 22:30:41 +00:00
cora f66a241188 turn villagers to z villagers not normal zs 2022-11-15 22:20:04 +00:00
cora 80fb648447 Turn villagers to zombies half the time when killed by zombies 2022-11-15 22:20:04 +00:00
PrairieWind 4255143087 Merge pull request 'Add colors.txt file to tools/' (#2953) from add_colors_txt into master
Reviewed-on: MineClone2/MineClone2#2953
Reviewed-by: PrairieWind <prairie.astronomer1@gmail.com>
2022-11-15 22:16:52 +00:00
RankoSaotome 51d4f075b2 Add credits to colors.txt file 2022-11-15 22:12:27 +00:00
RankoSaotome a607444e60 Add colors.txt for minetestmapper 2022-11-15 22:12:27 +00:00
PrairieWind ebd38fd44e Merge pull request 'Fix crash when new player rightclicks a bed' (#2958) from fix_bed_meta_crash into master
Reviewed-on: MineClone2/MineClone2#2958
Reviewed-by: ancientmarinerdev <ancientmariner_dev@proton.me>
Reviewed-by: PrairieWind <prairie.astronomer1@gmail.com>
2022-11-15 22:08:42 +00:00
cora dbef60c558 Fix crash when new player rightclicks a bed 2022-11-15 22:02:37 +00:00
PrairieWind 4e9190bbcf Merge pull request 'Fix crash when rightclicking parrot' (#2965) from fix_parrot_rightclick_crash into master
Reviewed-on: MineClone2/MineClone2#2965
Reviewed-by: AFCMS <afcm.contact@gmail.com>
Reviewed-by: PrairieWind <prairie.astronomer1@gmail.com>
2022-11-15 21:50:17 +00:00
AFCMS 96e83e866c
Make `mcl_item_entity` API public 2022-11-15 21:48:58 +01:00
AFCMS 3bb86fd436
Fix warnings + add type annotations
- fix wrong usage of `mcl_enchanting.get_enchantments`
- use new vectors everywhere
- simplify code
- make code lines less long
2022-11-15 21:48:57 +01:00
cora 033b051689 Fix crash when rightclicking parrot 2022-11-15 21:16:48 +01:00
cora 589bf75e6a Merge pull request 'Fix creative mode inventory search crash' (#2956) from fix_creative_inv_search into master
Reviewed-on: MineClone2/MineClone2#2956
Reviewed-by: MysticTempest <mystictempest@noreply.git.minetest.land>
2022-11-15 14:53:15 +00:00
My favourite Minetest cheat clients are Dragonfire and Waspsaliva. 94960b64d4 Fix creative mode inventory search crash
Before this patch it was possible for any user to to crash Minetest in
creative mode. This was possible because queries in the search field
were interpreted as search patterns for string.find().

A search for a single square bracket would reliably crash the server.
Also, a search for 6000 times the string “a?” would hang the server.

The solution to both bugs is to not interpret the query as a pattern.
2022-11-15 04:41:01 +01:00
anarquimico 507f14c317 Modified function and ABM 2022-11-15 00:01:28 -03:00
cora 12a31ee5ba Merge pull request 'Add ocean temple' (#2907) from ocean_temple into master
Reviewed-on: MineClone2/MineClone2#2907
2022-11-15 00:35:27 +00:00
cora 63225c20e5 change schematics for gold and sponges instead of chests 2022-11-15 01:28:51 +01:00
PrairieWind 54d4a97a27 Add Ocean Temple Loot 2022-11-15 01:28:51 +01:00
cora 61b5783e73 Make temple rarer 2022-11-15 01:28:51 +01:00
cora 04cb919f2b structure-spawning: make water spawns possible 2022-11-15 01:28:51 +01:00
cora 4ceecffc8b Add ocean temple 2022-11-15 01:28:51 +01:00
cora 3c287d84d2 Merge pull request 'Fix a couple issues in mcl_structures' (#2940) from fix_struct_construct_nodes into master
Reviewed-on: MineClone2/MineClone2#2940
2022-11-15 00:27:35 +00:00
cora 00541cbfb8 Fix end spike wrong vector.add usage 2022-11-15 01:26:06 +01:00
cora 36a6a353a3 Fix local construct_nodes 2022-11-15 01:26:06 +01:00
cora 8fa0371c63 Merge pull request 'Fix undeclared global variable in mcl_playerplus' (#2950) from playerplus into master
Reviewed-on: MineClone2/MineClone2#2950
Reviewed-by: cora <cora@noreply.git.minetest.land>
2022-11-15 00:22:38 +00:00
𝕵𝖔𝖍𝖆𝖓𝖓𝖊𝖘 𝕱𝖗𝖎𝖙𝖟 3d6ff573e7 Fix undeclared global variable in mcl_playerplus 2022-11-14 12:40:45 -06:00
cora b7f766e7cc Merge pull request 'Who doesn't love hopper minecarts?' (#2941) from feature/hopper_minecarts into master
Reviewed-on: MineClone2/MineClone2#2941
Reviewed-by: cora <cora@noreply.git.minetest.land>
2022-11-14 03:25:47 +00:00
cora 489ef43458 Don't transfer whole stacks 2022-11-14 04:07:41 +01:00
ancientmarinerdev e6d778b214 Remove WIP flag for hopper minecart 2022-11-14 04:07:41 +01:00
ancientmarinerdev 70a7fb9387 Hoppers now take from hopper minecarts 2022-11-14 04:07:41 +01:00
ancientmarinerdev a2732b655f Code cleanup 2022-11-14 04:07:41 +01:00
ancientmarinerdev 9065170b1c Clean up hopper minecart 2022-11-14 04:07:41 +01:00
ancientmarinerdev ce457eb351 Who doesn't love hopper minecarts? 2022-11-14 04:07:41 +01:00
cora c21527d207 Merge pull request 'add mycelium townaura particles' (#2946) from mycelium_aura_particle into master
Reviewed-on: MineClone2/MineClone2#2946
Reviewed-by: cora <cora@noreply.git.minetest.land>
2022-11-14 01:48:08 +00:00
epCode c288b6ab93 make townaura more preformant 2022-11-14 02:38:02 +01:00
epCode 28f952309e add mycelium townaura particles 2022-11-14 02:38:02 +01:00
cora 55375a7476 Merge pull request 'fix all chests size with selectionbox/collisionbox' (#2944) from fix_chests into master
Reviewed-on: MineClone2/MineClone2#2944
Reviewed-by: cora <cora@noreply.git.minetest.land>
2022-11-13 22:20:30 +00:00
epCode 080182ab15 Fix ender and shulker nodeboxes 2022-11-13 22:18:00 +00:00
epCode 6c6e21b63e fix chests 2022-11-13 22:18:00 +00:00
cora b36b2058ab Merge pull request 'Pot nether roots and fungi' (#2945) from 3raven/MineClone2-pot:master into master
Reviewed-on: MineClone2/MineClone2#2945
Reviewed-by: MysticTempest <mystictempest@noreply.git.minetest.land>
Reviewed-by: cora <cora@noreply.git.minetest.land>
2022-11-13 22:00:01 +00:00
AFCMS 4acee8e64e
Fixes to `mcl_meshhand`
- fix actual crash when placing hand in world (undefined function)
- remove node fields redundant with default values
- remove support for `use_texture_alpha_string_modes`
- type annotation
- more explicit functions
2022-11-13 21:54:59 +01:00
3raven d01aa36d09 Pot nether roots and fungi
Pot nether roots and fungi
2022-11-13 17:44:21 +00:00
cora daa455c41b Merge pull request 'Integrate hoppers with composter' (#2917) from anarquimico/MineClone2:hoppers_w_composter into master
Reviewed-on: MineClone2/MineClone2#2917
Reviewed-by: cora <cora@noreply.git.minetest.land>
2022-11-12 12:28:50 +00:00
cora b625fba4f2 Merge branch 'master' into hoppers_w_composter 2022-11-12 12:27:49 +00:00
anarquimico 3ef8838a11 Fixed indentation. 2022-11-12 06:28:36 -03:00
cora 99b26f5e3f Merge pull request 'Villagers will now claim more than red beds. Villagers don't steal players beds.' (#2924) from feature/villagers_pt5 into master
Reviewed-on: MineClone2/MineClone2#2924
Reviewed-by: cora <cora@noreply.git.minetest.land>
2022-11-12 01:43:55 +00:00
ancientmarinerdev 59808c5190 Fix race condition where many villagers are fighting for same job 2022-11-12 02:35:00 +01:00
ancientmarinerdev 3000a378f3 Villagers can claim any bed. Player can steal villager bed. Villager won't take player bed 2022-11-12 02:35:00 +01:00
ancientmarinerdev 3e1a475442 Logging improvements 2022-11-12 02:35:00 +01:00
ancientmarinerdev e5c639c779 Logging improvements 2022-11-12 02:35:00 +01:00
ancientmarinerdev ff0fea8978 Add default logger to make logging easier 2022-11-12 02:35:00 +01:00
ancientmarinerdev 814ad39c09 Villagers can now claim any type of bed. 2022-11-12 02:35:00 +01:00
cora 1dfc71c76c Merge pull request 'mcl_playerplus fixes' (#2906) from playerplus into master
Reviewed-on: MineClone2/MineClone2#2906
Reviewed-by: epCode <epcode@noreply.git.minetest.land>
Reviewed-by: cora <cora@noreply.git.minetest.land>
2022-11-11 17:58:55 +00:00
𝕵𝖔𝖍𝖆𝖓𝖓𝖊𝖘 𝕱𝖗𝖎𝖙𝖟 8ff4a94889 mcl_playerplus: Fix bows 2022-11-11 17:53:13 +00:00
𝕵𝖔𝖍𝖆𝖓𝖓𝖊𝖘 𝕱𝖗𝖎𝖙𝖟 c66e184373 mcl_playerplus fixes 2022-11-11 17:53:13 +00:00
cora 8ad79fbeed Merge pull request 'Check object on mob (lightning) tranformation' (#2918) from fix_lightning_crash into master
Reviewed-on: MineClone2/MineClone2#2918
2022-11-11 15:44:54 +00:00
cora 41055d5abe Check object on mob tranformation 2022-11-11 16:43:45 +01:00
cora 468b46a920 Merge pull request 'Lightning Rod Fixes' (#2838) from lightning-rod-fixes into master
Reviewed-on: MineClone2/MineClone2#2838
Reviewed-by: cora <cora@noreply.git.minetest.land>
2022-11-11 15:42:52 +00:00
AFCMS 7dbe6489be Change lighting rod activation time to 0.4 2022-11-11 16:39:19 +01:00
AFCMS 5f626cf1b0 Make lightning rods send redstone signal when struck by lighting (0.5s) 2022-11-11 16:39:19 +01:00
AFCMS 47e46efa6f Add french translation 2022-11-11 16:39:19 +01:00
AFCMS a11948c5f3 Add new texture 2022-11-11 16:39:19 +01:00
AFCMS cb7d5e3790 Make lightning rod texture look better 2022-11-11 16:39:19 +01:00
AFCMS 2c5d3861f6 Add locale template to mcl_lightning_rods 2022-11-11 16:39:19 +01:00
AFCMS e56fa0d809 Lightning Rod Fixes
- give node a proper nodebox
- add better texture compatible with MC texture packs
- set use_texture_alpha = "opaque"
- fix invalid translator
- disable node placement prediction
- simplificate placement code
2022-11-11 16:39:19 +01:00
TheOnlyJoeEnderman 6a9387b752 Reverse axolotl model to fix the head look direction 2022-11-11 03:50:39 +00:00
TheOnlyJoeEnderman cbb7a8edb0 Reverse axolotl model to fix the head look direction 2022-11-11 03:50:04 +00:00
anarquimico cb721f37ce Fixed minor bug and removed TODO commentary 2022-11-10 21:11:32 -03:00
cora 7e1c9a86e4 Merge pull request 'Fix random-interval crash when not using luajit' (#2928) from fix_non_luajit_crash into master
Reviewed-on: MineClone2/MineClone2#2928
2022-11-10 20:44:16 +00:00
cora c44b29925a Fix random-interval crash when not using luajit 2022-11-10 01:45:42 +01:00
cora 470d7dbe39 Merge pull request 'Fix insta-digging crash when punching stairs.' (#2926) from stairs_dig_fix into master
Reviewed-on: MineClone2/MineClone2#2926
Reviewed-by: cora <cora@noreply.git.minetest.land>
2022-11-09 13:55:15 +00:00
MysticTempest 6a0bcf9881 Fix insta-digging crash when punching stairs. 2022-11-09 04:26:41 -06:00
anarquimico 3072d44b66 Bugs fixed. 2022-11-08 19:18:35 -03:00
anarquimico f61b072d39 Fixed compostable item comsumption. 2022-11-07 22:10:35 -03:00
cora bbd2ac904d Merge pull request 'Better fix for creative digging drops, and fix the itemframes LBM.' (#2915) from fix_itemdrops_and_itemframes into master
Reviewed-on: MineClone2/MineClone2#2915
Reviewed-by: cora <cora@noreply.git.minetest.land>
2022-11-07 16:32:15 +00:00
TheOnlyJoeEnderman 012fe4b37e Move axolotl_bucket to buckets mod 2022-11-07 08:20:13 +00:00
TheOnlyJoeEnderman 3110f97868 Move axolotl_bucket to buckets mod 2022-11-07 08:19:44 +00:00
TheOnlyJoeEnderman dff028595c Remove old axolotl spawn icon 2022-11-07 08:13:26 +00:00
Michieal dd869afea0 fixed typo error
had a list inside of an extra set of {}'s
2022-11-07 01:20:03 +00:00
Michieal c277229c1b Changed the Item Frames' LBM method.
Moved the custom lbm function call out of create_custom_frame() into init.
Changed how the custom lbm handles frames lbm regeneration.
2022-11-06 21:00:14 +00:00
anarquimico 91ef21c55b Integrate hoppers with composter 2022-11-06 17:49:32 -03:00
MysticTempest 2be75c9628 Better fix for creative digging drops, and fix the itemframes LBM. 2022-11-06 07:08:49 -06:00
TheOnlyJoeEnderman 6e328153d4 axolotls are no longer mislabelled as passive 2022-11-06 02:18:47 +00:00
TheOnlyJoeEnderman 4695707188 Fix damage value for axolotls 2022-11-06 02:14:58 +00:00
TheOnlyJoeEnderman 432e196794 code cleaning
fixed some messy tabs/spaces, removed old comments.
2022-11-06 02:05:14 +00:00
TheOnlyJoeEnderman a592d69990 add all current underwater creatures to list of mob to kill 2022-11-06 02:00:28 +00:00
TheOnlyJoeEnderman 310237be33 Fix axolotl hitbox, clean up some comments 2022-11-06 01:47:31 +00:00
TheOnlyJoeEnderman cf6d04c716 fix flipped UVs on gill.right
That simple
2022-11-05 22:05:31 +00:00
TheOnlyJoeEnderman c22997db09 Add persistence, attempt to fix breeding, add random look at player event
They look away from the player randomly for some reason. I think the rotation needs to be mirrored, but I am unsure how one would do that.
2022-11-05 21:44:51 +00:00
cora 4c94bee22f Merge pull request 'Add mason profession for villagers' (#2910) from add_villager_mason into master
Reviewed-on: MineClone2/MineClone2#2910
2022-11-05 02:26:10 +00:00
anarquimico f977b1a253 Fix mason texture 2022-11-05 03:21:36 +01:00
anarquimico ff3438f729 Add villager mason profession 2022-11-05 03:20:58 +01:00
cora f7ac679c0f Merge pull request 'Add Missing Crafting Recipes to Warped and Crimson Doors' (#2908) from warped_crimson_doors into master
Reviewed-on: MineClone2/MineClone2#2908
Reviewed-by: cora <cora@noreply.git.minetest.land>
2022-11-05 01:28:35 +00:00
PrairieWind 6f8d854f8a Fix texture issue and capitalization in Stripped Warped Hyphae Bark 2022-11-04 19:17:39 -06:00
PrairieWind 92723cab9f Add Crafting Recipes for the crimson and warped (trap)doors, fences, and gates 2022-11-04 19:17:39 -06:00
cora 8db3071c2d Merge pull request 'Add crimson and warped doors, trapdoors and fences' (#2901) from warped_crimson_doors into master
Reviewed-on: MineClone2/MineClone2#2901
2022-11-05 00:50:24 +00:00
Nicu 8162a4af2d Add custom door and trapdoor textures for mcl_crimson 2022-11-05 01:47:35 +01:00
Nicu 30d2022b4a Optimize textures in mcl_crimson 2022-11-05 01:47:35 +01:00
cora df216cb847 Add crimson fence and gate 2022-11-05 01:47:35 +01:00
cora 4dec3e1382 Add warped fence and gate 2022-11-05 01:47:35 +01:00
cora 43425279a3 Add crimson and warped doors and trapdoors 2022-11-05 01:47:35 +01:00
cora faf75a3ce5 Merge pull request 'mcl_itemframes_rewrite' (#2897) from mcl_itemframes_rewrite into master
Reviewed-on: MineClone2/MineClone2#2897
Reviewed-by: cora <cora@noreply.git.minetest.land>
2022-11-05 00:28:45 +00:00
Michieal b62f61db10 Added in the API Doc file, and adjusted the created items' names.
Added the ":" to the front of the item creation so that it can be called from an external mod.
Put in an optional inventory and wield image parameter to add in colorized inventory / wield images.
2022-11-05 01:26:15 +01:00
Michieal c4981d894c Removed the local cached copy of the built in TGA encoder. 2022-11-05 01:26:15 +01:00
Michieal 93913ed780 Fix accidental conversion of tabs to spaces. 2022-11-05 01:26:15 +01:00
Michieal 3409c5a220 Prereview code, but with the spaces converted to tabs.
* Cleaned up all of the code, checked to make sure that there were no erraneous debug logging.
* To enable debugging, turn it on in the api by changing the following line in item_frames_api.lua:
mcl_itemframes.DEBUG = false -- set to true to see debug output.
* Made the standard Item Frame and the new Glow Frame use the frames API. 
Added in backwards compatibility mode.
* Made frames pop out items into the world on the old frames' entities when they are a hidden / broken entity. (Part of the backwards compatibility.)

* Tested locally.

* *Converted the spaces to tabs!*

Should be fully functional and ready for review.
2022-11-05 01:26:15 +01:00
Michieal 76991fcba9 Pre-review Item frames code
* Cleaned up all of the code, checked to make sure that there were no erraneous debug logging.
* To enable debugging, turn it on in the api by changing the following line in item_frames_api.lua:
mcl_itemframes.DEBUG = false -- set to true to see debug output.
* Made the standard Item Frame and the new Glow Frame use the frames API. 
Added in backwards compatibility mode.
* Made frames pop out items into the world on the old frames' entities when they are a hidden / broken entity. (Part of the backwards compatibility.)

* Tested locally.

Should be fully functional and ready for review.
2022-11-05 01:26:14 +01:00
Michieal 61df48e46e Translations for the Item Frames. 2022-11-05 01:26:14 +01:00
Michieal 18e83e5763 Added in display item rotation
Updated the Readme. Added in the ability to rotate the displayed item with a screwdriver. Made the Screwdriver mod required, due to rotating the item being fundamental behavoir.

Finalized a few bug fixes... still have to remove the all of the forced debug code, and move the item frames and glow frames over to the new api, and do a final test.
2022-11-05 01:26:14 +01:00
Michieal 8a21b9e99c Changed detection code custom frames.
todo: figure out why the standard item frame is using the wrong item entities.
todo: fix screwdriver rotating the item displayed.
2022-11-05 01:26:14 +01:00
Michieal 6d1b1b3c74 Added a return code to load_maps
Added a return code to load_maps to check for if dynamic_add_media registers a fail.
Used by mcl_itemframes when reloading a map placed into an itemframe.
2022-11-05 01:26:14 +01:00
Michieal 1f5b92f7bf code clean up. testing & debugging custom frames.
cleaned up a LOT of duplicate code. Added in the custom frames, and a couple of calls in init.lua to begin testing custom frames out.

to do: fix the freaking maps. (It looks like it's client side that is failing, to be honest.)
2022-11-05 01:26:14 +01:00
Michieal 4d74e4d9c1 update the translation template 2022-11-05 01:26:14 +01:00
Michieal ef504e90c1 glowframe model commit 2022-11-05 01:26:14 +01:00
Michieal 09d452667b glowframe textures commit 2022-11-05 01:26:14 +01:00
Michieal 9b37ca460e Initial code comit 2022-11-05 01:26:14 +01:00
cora ffc5fe06ed Merge pull request 'Add second pillager outpost schematic' (#2905) from 2nd_pillager_outpost_schem into master
Reviewed-on: MineClone2/MineClone2#2905
Reviewed-by: epCode <epcode@noreply.git.minetest.land>
2022-11-05 00:23:48 +00:00
cora e146b173b3 Replace "oning" with cages 2022-11-05 01:18:03 +01:00
cora 51d34c9f3d Add second pillager outpost schematic 2022-11-05 01:18:03 +01:00
cora 0d19a66bdd Merge pull request 'Mob lightning transformation / fix on_lightning_strike api' (#2904) from mob_lighting_transforms_2 into master
Reviewed-on: MineClone2/MineClone2#2904
Reviewed-by: MysticTempest <mystictempest@noreply.git.minetest.land>
2022-11-05 00:17:26 +00:00
MysticTempest 15542d4878 Fix player not getting damage from lightning 2022-11-05 01:16:27 +01:00
cora fcba67b7e7 Make on_lightning_strike available to non-mob entities 2022-11-05 01:16:27 +01:00
cora 2c4a768685 Transform villager with on_lightning_strike 2022-11-05 01:16:27 +01:00
cora 95db6104e9 Transform pig with on_lightning_strike 2022-11-05 01:16:27 +01:00
cora 5cf2f488a8 Transform creeper with on_lightning_strike 2022-11-05 01:16:27 +01:00
cora 97468cde0c Add mcl_util to mobs_mc depends 2022-11-05 01:16:27 +01:00
cora 220b542cbf Mooshroom color change with on_lightning_strike 2022-11-05 01:16:27 +01:00
cora 21f3782439 Fix lightning on_strike api + rename to on_lightning_strike 2022-11-05 01:16:27 +01:00
cora d18f55aa48 Merge pull request 'Villager tries to get closest bed and jobsite. Villager will wait if failed to path recently' (#2898) from feature/villagers_pt4 into master
Reviewed-on: MineClone2/MineClone2#2898
Reviewed-by: cora <cora@noreply.git.minetest.land>
2022-11-05 00:15:46 +00:00
cora 32e4a122a1 Comment out stray debug lines 2022-11-05 01:14:54 +01:00
TheOnlyJoeEnderman 8e74209c9b add axolotl to translation template 2022-11-04 02:32:59 +00:00
TheOnlyJoeEnderman faa7ca1f68 Change axolotl spawn egg to palette instead of texture 2022-11-04 02:21:58 +00:00
TheOnlyJoeEnderman 7e3d5f3553 add axolotl to bucket translation template 2022-11-04 01:58:04 +00:00
ancientmarinerdev 8b0c4c17ad Slightly more frequent failed pathing attempts for villagers 2022-11-03 21:34:15 +00:00
ancientmarinerdev 2d0ea5e205 Enable concurrent pathing so pathing orders aren't queued 2022-11-03 21:34:14 +00:00
ancientmarinerdev ad137304bc Fix bug where if it finds wrong door and can't plot route it hogs the pathing 2022-11-03 21:34:14 +00:00
ancientmarinerdev ac45dec544 Villager should find the closest bed to claim 2022-11-03 21:34:14 +00:00
ancientmarinerdev ea9c9e74b0 Failed check should come before last pathed check to avoid a failed check taking up a good opportunity to path 2022-11-03 21:34:14 +00:00
ancientmarinerdev 5866983bf5 Villager will try to take the job block closest to them 2022-11-03 21:34:14 +00:00
ancientmarinerdev 17e3e83f43 Villagers should not try and path if they have failed recently 2022-11-03 21:34:14 +00:00
cora 06d4845955 Merge pull request 'Add setting for mob-movement stop range' (#2896) from mob_move_setting into master
Reviewed-on: MineClone2/MineClone2#2896
2022-11-03 13:34:31 +00:00
cora da9f253117 Add setting for mob-movement stop range 2022-11-03 14:32:50 +01:00
cora b144a93fd8 Merge pull request 'Add a setting to disable hunger' (#2895) from hunger_setting into master
Reviewed-on: MineClone2/MineClone2#2895
2022-11-03 13:32:17 +00:00
cora 3a37b1c8cc Add a setting to disable hunger 2022-11-03 14:31:08 +01:00
cora f1cdb24545 Merge pull request 'Fix frequent ABM warning when lots of lava is in active block range' (#2894) from fix_lava_abms into master
Reviewed-on: MineClone2/MineClone2#2894
2022-11-03 13:14:31 +00:00
cora 48d6a2fd72 Add some ABM limits for lava ABMs 2022-11-03 14:11:03 +01:00
cora e9e76d2c1e Optimize snow pile-up ABM 2022-11-03 14:11:03 +01:00
cora cdd8ea1dbc Optimize dripping ABMs 2022-11-03 14:11:03 +01:00
cora 5355234af1 Merge pull request 'Signs fixes' (#2899) from mcl_signs_rewrite_tranlsations into master
Reviewed-on: MineClone2/MineClone2#2899
2022-11-03 12:12:13 +00:00
Michieal fb10320550 Quickfix: changed standing sign rotate replacement node.
Replaced the standing sign (90 degrees) starting replacement node for on_rotate().
Tested on all signs, testing all degrees of rotation (all 16 of them).

fixes newly found bug: non-oak standing sign becomes oak standing sign when initially rotated with a screwdriver.
2022-11-03 13:10:50 +01:00
Michieal 5a68c876fb new translations for the additional signs. 2022-11-03 13:10:50 +01:00
Michieal dd1e4ca927 Added in Crimson Hyphae and Warped Hyphae Signs
Added in Crimson Hyphae and Warped Hyphae Signs.

Didn't do the the translations for them.
2022-11-03 13:10:50 +01:00
Michieal 162bd36101 Translations for the signs 2022-11-03 13:10:50 +01:00
Michieal d48100c427 Translations for the signs 2022-11-03 13:10:50 +01:00
TheOnlyJoeEnderman 126de74904 add axolotl to language template 2022-11-02 22:54:21 +00:00
TheOnlyJoeEnderman fbc57192a0 Merge pull request 'Fix axolotl model' (#1) from MrRar/MineClone2:Axolotl into Axolotl
Reviewed-on: #1
2022-11-02 22:08:31 +00:00
cora ab00297077 Merge pull request 'Villagers gather at lunch time, reset trade when they get to work.' (#2873) from feature/villagers_pt3 into master
Reviewed-on: MineClone2/MineClone2#2873
Reviewed-by: cora <cora@noreply.git.minetest.land>
2022-11-02 21:15:00 +00:00
ancientmarinerdev 2f4622909e Right click shouldn't stop work and allow a reset of trades 2022-11-02 22:09:35 +01:00
ancientmarinerdev 5ff4ce7116 Less verbose logging 2022-11-02 22:09:35 +01:00
ancientmarinerdev c606092066 Pathfinding fix for villagers 2022-11-02 22:09:35 +01:00
ancientmarinerdev 5d5babdb20 Tweak distance to current_target check 2022-11-02 22:09:35 +01:00
ancientmarinerdev 7f33287e18 Reset trade counter when unlocking trades 2022-11-02 22:09:35 +01:00
ancientmarinerdev 1d667c26b5 Villagers will open and close doors when pathing through. Any failing steps now have a threshold to abandon failed pathing. 2022-11-02 22:09:35 +01:00
ancientmarinerdev a01c3d1342 Pumkin price unreasonable and fix logging. 2022-11-02 22:09:35 +01:00
ancientmarinerdev f9ec402b29 Only to door if we can get from door to target 2022-11-02 22:09:35 +01:00
ancientmarinerdev cabe299456 Villager fixes 2022-11-02 22:09:35 +01:00
ancientmarinerdev bf491c35a1 Fix bug 2022-11-02 22:09:35 +01:00
ancientmarinerdev 04cac7156e Villagers gather at lunch time, reset trade when they get to work. 2022-11-02 22:09:35 +01:00
𝕵𝖔𝖍𝖆𝖓𝖓𝖊𝖘 𝕱𝖗𝖎𝖙𝖟 963547a0ca Fix axolotl model 2022-11-02 12:45:12 -05:00
cora 6851a53c6c Merge pull request 'Playable nether' (#2836) from nether_mg_settings into master
Reviewed-on: MineClone2/MineClone2#2836
2022-11-02 04:32:01 +00:00
TheOnlyJoeEnderman d5ca4fca9b fix constant need to run for the hills, restore ability to jump
previous commit just added comments.
2022-11-02 04:30:09 +00:00
TheOnlyJoeEnderman 3bdd1ea160 Update 'mods/ENTITIES/mobs_mc/axolotl.lua' 2022-11-02 04:15:40 +00:00
TheOnlyJoeEnderman 5cc835df93 fix indentation ln 53, 72, 73; change list on ln 50 to seperate lines 2022-11-02 03:25:10 +00:00
cora 646a341f52 Fix mob api can_spawn callback 2022-11-02 03:47:23 +01:00
cora ae9173f7ec Grow legs under outpost with bridges 2022-11-02 00:13:29 +01:00
cora b4cb06b5ed Tweak basalt delta floors 2022-11-01 04:52:17 +01:00
cora 009ca7535c Add nether outpost with bridges
just via spawnstruct for now
2022-11-01 04:52:17 +01:00
cora 3629f88dc0 Make strider usable 2022-11-01 04:52:17 +01:00
cora 21f5586669 Fix strider spawning 2022-11-01 04:52:17 +01:00
cora d393e6a181 fix single mob spawning and poutpost walls 2022-11-01 04:52:17 +01:00
cora f324e150ea Don't generate glowstone in the ceiling 2022-11-01 04:52:17 +01:00
cora aa2661341b less lava springs, no ceiling lava springs 2022-11-01 04:52:17 +01:00
cora 72224a392a Add more nether bulwark variations 2022-11-01 04:52:17 +01:00
cora 376aeda495 change bulwark to use soulless fire for piggy comfort 2022-11-01 04:52:17 +01:00
cora fb67bc74ba Fix strider riding 2022-11-01 04:52:17 +01:00
cora 6485545269 Add warped fungus on a stick item 2022-11-01 04:52:17 +01:00
cora fb1c1a483e Add strider 2022-11-01 04:52:17 +01:00
cora fe68e1eaac Generate netherrack and ores under the lava
another hack using minetest.generate_ores this time
2022-11-01 04:52:17 +01:00
cora 0f01a28c93 Add structure spawning to other structures 2022-11-01 04:52:17 +01:00
cora 27a434641d Make structure spawning respect caps 2022-11-01 04:52:17 +01:00
cora 77bdce5cea Add structure mob respawning mechanic
this sets a metadata field "spawnblock" in the nodes mobs spawn on
and registers an abm to respan them
2022-11-01 04:52:17 +01:00
cora 1f58cfb240 Fix merge conflict 2022-11-01 04:52:17 +01:00
cora d1f0ade2e8 Grow wither rose when wither kills mob 2022-11-01 04:52:17 +01:00
cora dec207368c Add wither rose 2022-11-01 04:52:17 +01:00
cora eef4b52ce4 Remove "wild" nether wart, remove natural wither skelly spawning
wither skellys spawn on bridges now, enough wart in outposts
and bulwarks
2022-11-01 04:52:17 +01:00
cora 6b8236e8f3 Fix crash in villagegen 2022-11-01 04:52:17 +01:00
cora 5d26595f4a enforce cavern setting for nether generation
people unticking the "caverns" box probably do not expect that this
only applies to nether "terrain"
2022-11-01 04:52:17 +01:00
cora 1c6d1c958a Add more nether bridge variants 2022-11-01 04:52:17 +01:00
Michieal c3433bd003 Warped Fungus redo.
Changed the colors and added in the old drips because they look pretty cool on it.
Wanted it to match the surrounding color scheme more than the green and orange one.

texture license: full usage under the standard MineClone2 texture license.

Created by Michieal, based off of the Minecraft Warped Fungus.
2022-11-01 04:52:17 +01:00
cora 8aedd6a761 add nether bridge fragment 2022-11-01 04:52:17 +01:00
cora 6bc12ec5ec mcl_structures Check if file exists before placing schematics 2022-11-01 04:52:17 +01:00
cora 62f353d54f Spawn hoglins in stable bullwarks 2022-11-01 04:52:17 +01:00
cora 4ad1abde14 Fix basalt pillar artifacts above the nether roof 2022-11-01 04:52:17 +01:00
cora 768345a91c Fix top node and magma patches in nether wastes 2022-11-01 04:52:17 +01:00
cora 98dad0b191 Generate netherrack under the bedrock ceiling
this is a somewhat ugly hack that uses minetest.generate_decorations
which generates decorations regardless of biome so additional steps
had to be taken to ensure no other decorations "spill over" due to
this.
2022-11-01 04:52:17 +01:00
cora 302b18833a Add variable interior for nether bulwark 2022-11-01 04:52:17 +01:00
cora f76e0628e4 initial daughter structure support 2022-11-01 04:52:17 +01:00
cora 24476caf7e Add nether bulwark 2022-11-01 04:52:17 +01:00
cora 68039e0fb6 Fix nether outpost schematic voids (air inside now) 2022-11-01 04:52:17 +01:00
cora d866b61d1c Add lower cavern threshhold for all mgs that support it 2022-11-01 04:52:17 +01:00
cora a91586b2b5 Fix a few nether biomes settings 2022-11-01 04:52:17 +01:00
cora a03973a80b tweak v7 cavern threshhold for larger nether caves 2022-11-01 04:52:17 +01:00
cora 9ea286428c Merge pull request 'Fix buckets on Android and open gate with bucket' (#2882) from buckets into master
Reviewed-on: MineClone2/MineClone2#2882
Reviewed-by: cora <cora@noreply.git.minetest.land>
2022-11-01 03:49:53 +00:00
𝕵𝖔𝖍𝖆𝖓𝖓𝖊𝖘 𝕱𝖗𝖎𝖙𝖟 8faa6aa9eb Fix buckets on Android 2022-11-01 03:46:45 +00:00
cora 56cbe50a02 Merge pull request 'Fix mobs flopping for the first second when in thier own element' (#2889) from mob_fly_check_fix into master
Reviewed-on: MineClone2/MineClone2#2889
Reviewed-by: cora <cora@noreply.git.minetest.land>
2022-11-01 03:41:42 +00:00
epCode 4575fd0d81 Fix prexisting villagers getting rid of job clothes 2022-11-01 04:40:51 +01:00
epCode 8a2962cd46 Fix all mobs being givin armor list (Fix Villager loosing jobs) 2022-11-01 04:40:51 +01:00
epCode 9099f3ac7a Fix mobs flopping for the first second when in thier own element 2022-11-01 04:40:51 +01:00
epCode 1d3f52004f Merge pull request 'Uncommenting yaw change on go to pos. Breaks pathfinding.' (#2888) from bugfix/fix_pathfinding into master
Reviewed-on: MineClone2/MineClone2#2888
Reviewed-by: epCode <epcode@noreply.git.minetest.land>
2022-10-31 23:25:17 +00:00
ancientmarinerdev 532fc22f62 Uncommenting yaw change on go to pos. Breaks pathfinding. 2022-10-31 23:19:04 +00:00
cora fb29abcd50 Merge pull request 'Fix crash related to awards' (#2884) from awards_crashfix into master
Reviewed-on: MineClone2/MineClone2#2884
Reviewed-by: cora <cora@noreply.git.minetest.land>
2022-10-31 22:55:05 +00:00
chmodsayshello e9703c409e correct if/else in line 42 2022-10-31 21:53:51 +00:00
chmodsayshello c572c27326 implement suggestions by cora (https://is.gd/jJRf3y) 2022-10-31 21:40:38 +00:00
TheOnlyJoeEnderman 88d02da047 Update 'mods/ENTITIES/mobs_mc/init.lua' 2022-10-31 18:17:14 +00:00
chmodsayshello c1af4935a1 improve my poor (old) fix 2022-10-31 16:22:28 +01:00
chmodsayshello 910b3d57ac fix crash iteself 2022-10-31 16:19:38 +01:00
TheOnlyJoeEnderman 7aafb67923 fix flipped UVs 2022-10-31 00:07:30 +00:00
TheOnlyJoeEnderman e7bcc89e65 Merge branch 'master' into Axolotl 2022-10-30 21:14:49 +00:00
TheOnlyJoeEnderman 1e003a2571 Remove cold and non-water biomes from spawn list, add "LushCaves" to biome list
I will change it to only Lush Caves if/when they are added.
2022-10-29 22:29:09 +00:00
TheOnlyJoeEnderman 3001832b8f Update 'mods/ENTITIES/mobs_mc/init.lua' 2022-10-29 21:44:39 +00:00
cora a1637486bb Merge pull request 'Fix warning in mcl_dye' (#2881) from fix_dye_warning into master
Reviewed-on: MineClone2/MineClone2#2881
2022-10-29 10:27:40 +00:00
cora dc84b28d54 Fix warning in mcl_dye 2022-10-29 12:26:11 +02:00
cora 138c0e8668 Merge pull request 'dogshoot_enhancments/mob_fire_mechs' (#2872) from dogshoot_enhancments/mob_fire_mechs into master
Reviewed-on: MineClone2/MineClone2#2872
Reviewed-by: cora <cora@noreply.git.minetest.land>
2022-10-29 10:22:31 +00:00
epCode 2b2c2cf9cc remove debug and remove resetting value 20 times per second 2022-10-29 12:08:06 +02:00
epCode 5378d8eba7 add random horse speed per mc wiki 2022-10-29 12:08:06 +02:00
epCode 4fa1c445cc add customizable speed to mounts, not set value. 2022-10-29 12:08:06 +02:00
epCode 83d92e08ca add an adjustable variable for avoid distance 2022-10-29 12:08:06 +02:00
epCode eed5ec6f63 return pathfinding changes 2022-10-29 12:08:06 +02:00
epCode 702ba25283 Fix dogshooter animation when moving back 2022-10-29 12:08:06 +02:00
epCode de73129c2b Make skeleton strafe and avoid enemies 2022-10-29 12:08:06 +02:00
epCode d1d9f76c5d Mobs set players on fire if they are/dogshoot strafing and enemy avoidance 2022-10-29 12:08:06 +02:00
cora e34e2ba03f Merge pull request 'Don't spawn multiple mobs at the same position' (#2867) from fix_multispawn into master
Reviewed-on: MineClone2/MineClone2#2867
2022-10-29 10:07:15 +00:00
cora 672e44bbb1 Don't spawn multiple mobs at the same position
this was originally intended to simulate group spawning i think
2022-10-29 11:50:45 +02:00
TheOnlyJoeEnderman e2107601f4 move axolotl from MCL to voxelgoodenough 2022-10-29 05:40:13 +00:00
TheOnlyJoeEnderman 0624d9d169 Change spaces to tabs on line 127 2022-10-29 04:29:13 +00:00
TheOnlyJoeEnderman 2d7d577f31 Add Cutest Predator advancement 2022-10-29 04:20:13 +00:00
TheOnlyJoeEnderman 0fc09c6e89 revert 0ab82b5317
revert add cutest predator advancement, Fix accidental deletions.
2022-10-29 04:05:26 +00:00
TheOnlyJoeEnderman 35ac5c75f5 Update 'mods/ENTITIES/mobs_mc/init.lua' 2022-10-29 03:52:38 +00:00
cora b3553fe3b8 Merge pull request 'Grand mapgen cleanup 3 - end portal to structure api' (#2849) from mapgen_cleanup_3 into master
Reviewed-on: MineClone2/MineClone2#2849
Reviewed-by: NO11 <no11@noreply.git.minetest.land>
2022-10-28 19:32:15 +00:00
cora c850c0dfbb move remaining api code to mcl_structures/api.lua 2022-10-28 21:25:43 +02:00
cora 9aaa13408a Remove get_structure_data_construct
the positions are available from the registered structure
2022-10-28 21:25:43 +02:00
cora c30e2c33b9 Move end portal shrine generation to structure api 2022-10-28 21:25:43 +02:00
cora 146e2de1a5 Structure-api: add initial rotation support 2022-10-28 21:25:43 +02:00
TheOnlyJoeEnderman b1355513dd Merge branch 'master' into Axolotl 2022-10-28 07:18:37 +00:00
TheOnlyJoeEnderman 77bf8e0fb0 add axolotl 2022-10-28 07:15:49 +00:00
cora c1174360d1 Merge pull request 'Remove potentially copyrighted music track and replace by cc music' (#2874) from fix_copyrighted_music into master
Reviewed-on: MineClone2/MineClone2#2874
2022-10-28 03:07:07 +00:00
cora 11cc8745a2 Remove potentially copyrighted music track and replace by cc music
Soaring over the sea by mactonite (cc-by)
http://ccmixter.org/files/mactonite/65379
2022-10-28 05:00:17 +02:00
TheOnlyJoeEnderman 92d4e4f1e1 add axolotl to mob list 2022-10-27 04:39:22 +00:00
TheOnlyJoeEnderman ca0786f549 add animations to axolotl
they do not appear in-game. If you can fix it, please do.
2022-10-27 04:33:38 +00:00
TheOnlyJoeEnderman 7f291aa109 add animations to axolotl
They should appear in game, but they don't.
2022-10-27 04:32:17 +00:00
TheOnlyJoeEnderman 4683384da1 add animations to axolotl
They don't appear in game for some reason. I did everything correctly to my knowledge.
2022-10-27 04:31:00 +00:00
cora 4f191754b8 Merge pull request 'Mob animation/head/jumping improvments/fixes' (#2865) from mob_head_code_improvments into master
Reviewed-on: MineClone2/MineClone2#2865
Reviewed-by: cora <cora@noreply.git.minetest.land>
2022-10-27 02:19:18 +00:00
epCode ef923deff1 Merge branch 'master' into mob_head_code_improvments 2022-10-27 01:34:39 +00:00
epCode ee9301467c give zombie's the ability to wear armor. 2022-10-27 01:32:40 +00:00
epCode 239eca8988 make mob's not switch armor lying on the ground if they are already equiped. 2022-10-27 01:14:04 +00:00
epCode 86eef8827a Add working mob armor api
TODO: make mobs only put on a piece if they don't already have it.
2022-10-27 01:08:36 +00:00
cora e6b3458018 Merge pull request 'Add sweet berries from mcl5' (#2842) from sweet_berries into master
Reviewed-on: MineClone2/MineClone2#2842
Reviewed-by: PrairieWind <prairie.astronomer1@gmail.com>
2022-10-26 22:50:22 +00:00
cora 9e3163ec42 Drop sweet berry item when bone mealing mature bush 2022-10-27 00:19:38 +02:00
TheOnlyJoeEnderman d34710be85 add axolotl blender file so others can edit 2022-10-26 21:45:40 +00:00
TheOnlyJoeEnderman d324197609 Fix duplicate/unnecessary "fish" in several names 2022-10-26 21:43:41 +00:00
cora ba9d10055e always advance growth stage by 1 on bonemeal 2022-10-26 23:40:06 +02:00
TheOnlyJoeEnderman e01f103723 add axolotl sounds 2022-10-26 21:37:11 +00:00
TheOnlyJoeEnderman 109d162bca add temporary axolotl model witn no animations 2022-10-26 21:15:19 +00:00
TheOnlyJoeEnderman d89c1c0e5e change axolotl texture name 2022-10-26 21:09:57 +00:00
TheOnlyJoeEnderman 1efacd5a1b change axolotl texture name 2022-10-26 21:09:17 +00:00
TheOnlyJoeEnderman 5abf7d187c Delete 'mods/ENTITIES/mobs_mc/textures/extra_mobs_spawn_icon_axolotl.png' 2022-10-26 21:06:19 +00:00
TheOnlyJoeEnderman 2f975f2155 Delete 'mods/ENTITIES/mobs_mc/textures/extra_mobs_axolotl_white.png' 2022-10-26 21:06:02 +00:00
TheOnlyJoeEnderman fbb1aaf29f Delete 'mods/ENTITIES/mobs_mc/textures/extra_mobs_axolotl_purple.png' 2022-10-26 21:05:49 +00:00
TheOnlyJoeEnderman 4bee5268cd Delete 'mods/ENTITIES/mobs_mc/textures/extra_mobs_axolotl_pink.png' 2022-10-26 21:05:36 +00:00
TheOnlyJoeEnderman d575e8394d Delete 'mods/ENTITIES/mobs_mc/textures/extra_mobs_axolotl_green.png' 2022-10-26 21:05:22 +00:00
TheOnlyJoeEnderman a8250e2544 Delete 'mods/ENTITIES/mobs_mc/textures/extra_mobs_axolotl_brown.png' 2022-10-26 21:05:08 +00:00
TheOnlyJoeEnderman 7e54597a25 Delete 'mods/ENTITIES/mobs_mc/textures/extra_mobs_axolotl_yellow.png' 2022-10-26 21:04:46 +00:00
TheOnlyJoeEnderman a47df3dcdc Delete 'mods/ENTITIES/mobs_mc/textures/extra_mobs_axolotl_black.png' 2022-10-26 21:04:20 +00:00
TheOnlyJoeEnderman 0ab82b5317 add cutest predator advancement 2022-10-26 20:33:41 +00:00
TheOnlyJoeEnderman eaa397a7da add new advancement, remove ability to jump 2022-10-26 20:27:14 +00:00
TheOnlyJoeEnderman e4995524de change axolotl model, texture, sound names 2022-10-26 20:24:48 +00:00
epCode 6c0e29891d Fix a problem with smooth turning 2022-10-26 19:03:33 +00:00
PrairieWind e8b983bcc5 Place sweet berries on wet farmland and bonemeal the sweet berries to progress growth 2022-10-26 15:57:17 +00:00
cora ae91640234 Add missing biomes, correct saturation 2022-10-26 15:57:17 +00:00
cora d6c0561d5a Only do damage from stage 1 and up 2022-10-26 15:57:17 +00:00
cora 2664fb871b sweet berries plantable not only on farming soil 2022-10-26 15:57:17 +00:00
cora 2b08f9ac53 Slow down player movement while inside sweet berry 2022-10-26 15:57:17 +00:00
cora 8d456d8ff9 implement sweet berry damage
0.5 per second while moving inside it
2022-10-26 15:57:17 +00:00
cora b00f2784ff Sweet berry bushes are flammable 2022-10-26 15:57:17 +00:00
cora 280bcddcb2 Move sweet berry decoration to mcl_biomes 2022-10-26 15:57:17 +00:00
balazsszalab 495378b85e Register sweet berry bush by add_plant function to enable plant growth
Without calling the add_plant function, sweet berry bushes will not go through growth stages and it is impossible to farm them. Sweet berry bush and beetroot have the same number of growth stages, so I used beetroot's interval and chance values here. If somebody has a better approximation of these values, feel free to change them.
2022-10-26 15:57:16 +00:00
cora 5f4d7774ae Add sweet berry compostability 2022-10-26 15:57:16 +00:00
kay27 a7c3878cae [mineclone5] Tune sweet berries a bit 2022-10-26 15:57:16 +00:00
kay27 eb313f9482 [mineclone5] Move sweet berries into farming as a quick fix 2022-10-26 15:57:16 +00:00
cora 63a360674d Merge pull request 'Villagers will now path through doors. Villagers don't stand around whne not working.' (#2864) from feature/villagers_pt2 into master
Reviewed-on: MineClone2/MineClone2#2864
Reviewed-by: cora <cora@noreply.git.minetest.land>
2022-10-26 09:32:39 +00:00
epCode 306db6b609 make shooting mobs calculate raycast bool for shooting with shoot_offset
Basically makes skeletons accurately when to shoot and when not to.
2022-10-25 23:52:16 +00:00
ancientmarinerdev f8ee473383 Fix villager work times 2022-10-26 00:17:29 +01:00
ancientmarinerdev eebea4a7a9 Clean up and add pathfinding constant 2022-10-26 00:11:55 +01:00
ancientmarinerdev 37e4dd5556 Villagers will now path through doors. Villagers don't stand around whne not working. 2022-10-26 00:11:55 +01:00
epCode 65289de86e Mobs jump over 1-2 block pits 2022-10-25 23:00:03 +00:00
epCode 6fa85a3a0c fix passive mobs twisting their heads unnaturally 2022-10-25 19:18:08 +00:00
epCode de4c40f60a When mobs stop, don't stop animations easier
fixes mob punch animation.
2022-10-25 18:57:58 +00:00
epCode 636e5545a7 Attacking mobs don't care if they cant make a jump.
they try anyway
2022-10-25 18:54:57 +00:00
epCode 70beaf6b3d Give mobs more room to judge a jump 2022-10-25 18:52:51 +00:00
epCode b89a9375da Some performance improvements
also add a bit to make mobs look at any player getting too close
2022-10-25 18:51:40 +00:00
cora 6a512139c9 Merge pull request 'Make `mcl_dripping` API public + fix code style' (#2861) from mcl-dripping-api-public into master
Reviewed-on: MineClone2/MineClone2#2861
Reviewed-by: cora <cora@noreply.git.minetest.land>
2022-10-25 10:05:24 +00:00
AFCMS 4d6e79b07f Rewrite mcl_dripping README to Markdown, add API exemple and update infos 2022-10-25 12:00:03 +02:00
AFCMS 3432734c37 Refactor mcl_dripping 2022-10-25 12:00:03 +02:00
cora 8b566cddf3 Merge pull request 'make mob constant for velocity rotate with mob.' (#2855) from fix_runaway_mobs_sliding into master
Reviewed-on: MineClone2/MineClone2#2855
Reviewed-by: cora <cora@noreply.git.minetest.land>
2022-10-25 09:57:18 +00:00
AFCMS bacec2c7e6
Make 2 last params of `mcl_vars.get_node` optional 2022-10-25 11:01:44 +02:00
AFCMS a3d459f020
Refactor `mcl_init`
- use new vectors
- make code less confuse
- type annotations
2022-10-25 11:01:44 +02:00
epCode 970011e02b make mob constant for velocity rotate with mob.
this simply makes the constant value for continually adding velocity to a mob rotate when the mob rotates. this is because the constant velocity value was not called often enough.
2022-10-25 00:15:13 +00:00
cora 8778ee6e9e Merge pull request 'fix cave spiders not the correct size/eyes being damagable' (#2856) from cave_spider_scale into master
Reviewed-on: MineClone2/MineClone2#2856
Reviewed-by: cora <cora@noreply.git.minetest.land>
2022-10-24 20:39:57 +00:00
epCode 97c062a1ef fix cave spiders not the correct size/eyes being damageable 2022-10-24 20:14:37 +00:00
cora cb0b618d39 Merge pull request 'Set signs debug output to default to false' (#2848) from signs_debug_default into master
Reviewed-on: MineClone2/MineClone2#2848
2022-10-24 00:51:59 +00:00
cora 58a4a9d048 Set signs debug output to default to false 2022-10-24 02:47:56 +02:00
cora ae0b5381e4 Merge pull request 'Villagers - Work, sleep and wander. Check and claim beds etc.' (#2816) from ancientmarinerdev/MineClone2:feature/villager_improvement_rb into master
Reviewed-on: MineClone2/MineClone2#2816
Reviewed-by: cora <cora@noreply.git.minetest.land>
2022-10-23 23:36:49 +00:00
cora 426ee6e167 Merge pull request 'undelcared global yaw in mob api fix' (#2840) from epcode-patch-1 into master
Reviewed-on: MineClone2/MineClone2#2840
Reviewed-by: cora <cora@noreply.git.minetest.land>
2022-10-23 22:13:38 +00:00
epCode 063325082d undelcared global yaw in mob api fix
Fixes #2839
2022-10-23 21:23:50 +00:00
ancientmarinerdev b9d58c2f79 Cows and villagers can go into attack state and become non-functional 2022-10-23 22:16:35 +01:00
cora 2d1125c04e Merge pull request 'MineClone2 Signs Rewrite - move from GitHub to MeseHub' (#2822) from Michieal/MineClone2:mcl_signs_rewrite into master
Reviewed-on: MineClone2/MineClone2#2822
Reviewed-by: cora <cora@noreply.git.minetest.land>
2022-10-23 16:57:09 +00:00
cora 3de3a58828 Merge pull request 'Add missing texture for zombie horse' (#2829) from add_z_horse_texture into master
Reviewed-on: MineClone2/MineClone2#2829
2022-10-23 16:47:30 +00:00
cora ddb64421d0 Add missing texture for zombie horse
the one in pixelperfection seems to be the mc one - this one is
made from horse_grey and horse_skeleton by me, cora, cc0
2022-10-23 18:46:02 +02:00
cora 7e60207603 Merge pull request 'mcl_attached fixes' (#2831) from mcl-attached-fixes into master
Reviewed-on: MineClone2/MineClone2#2831
Reviewed-by: cora <cora@noreply.git.minetest.land>
2022-10-23 16:45:03 +00:00
AFCMS 9f16bfe6c5 mcl_attached fixes
- deprecated usage of vector.new()
- use new vectors everywhere
- use `minetest` instead of `core`
- make some more functions local
2022-10-23 18:39:08 +02:00
cora bbe4224b79 Merge pull request 'mcl_explosions fixes' (#2830) from mcl-explosions-fixes into master
Reviewed-on: MineClone2/MineClone2#2830
Reviewed-by: cora <cora@noreply.git.minetest.land>
2022-10-23 16:37:01 +00:00
AFCMS 8da8040324 mcl_explosions_fixes
- use new vectors
- remove deprecated use of vector.new()
- add some type annotations
2022-10-23 18:35:22 +02:00
cora 0a68562301 Merge pull request 'Remove unnecessary media files from mcl_chests' (#2813) from chests into master
Reviewed-on: MineClone2/MineClone2#2813
Reviewed-by: cora <cora@noreply.git.minetest.land>
2022-10-23 16:24:54 +00:00
𝕵𝖔𝖍𝖆𝖓𝖓𝖊𝖘 𝕱𝖗𝖎𝖙𝖟 7579e430c8 Remove unnecessary media files from mcl_chests 2022-10-23 18:23:45 +02:00
cora 9b1d0233d5 Merge pull request 'version -> 0.81 indev' (#2837) from release_0.80 into master
Reviewed-on: MineClone2/MineClone2#2837
2022-10-23 16:04:40 +00:00
cora 6032cfb744 version -> 0.81 indev 2022-10-23 18:03:46 +02:00
cora e126a5f96d Merge pull request 'Release 0.80' (#2757) from release_0.80 into master
Reviewed-on: MineClone2/MineClone2#2757
2022-10-23 15:48:32 +00:00
cora 3d5c653263 Set version to 0.80 2022-10-23 15:59:24 +02:00
cora 05bd2b0e83 Update end credits again 2022-10-23 15:59:24 +02:00
cora 6325b892f1 Change to the correct gustavo in mcl5 credits 2022-10-23 15:59:24 +02:00
cora 1ba57b5c6e Add Fearraven alt "Michieal" to credits 2022-10-23 15:59:24 +02:00
cora 1ffcc98ba8 Update end credits 2022-10-23 15:59:23 +02:00
cora ace47f8bf5 Add talamh to devs 2022-10-23 15:59:23 +02:00
cora 2b769ad2ff Add GuyLiner to credits 2022-10-23 15:59:23 +02:00
cora 730debb0a6 Add Herbert West to contributors 2022-10-23 15:59:23 +02:00
cora f5e8f8716c Add Faerraven and FossFanatic to credits 2022-10-23 15:59:23 +02:00
cora bffa214c77 Merge pull request 'Protect on_pick_up against unsafe usage' (#2835) from fix_unsafe_on_pick_up into master
Reviewed-on: MineClone2/MineClone2#2835
2022-10-23 13:58:21 +00:00
cora 34dcba0b70 Protect on_pick_up against unsafe usage 2022-10-23 13:46:27 +02:00
Michieal d4b9918ed4 Added in Documentation, changed the inventory image to be more minecraft-like (hand made), changed some licensing, and tracked down an out of place debug log line. 2022-10-23 03:20:34 -04:00
ancientmarinerdev ccf7b54481 Fix work times 2022-10-23 01:17:51 +01:00
ancientmarinerdev e1b685429d Texture now changes when villager loses job. 2022-10-23 01:12:19 +01:00
cora d00f5a695f Merge pull request 'Fix possible crash in v6 and singlenode mapgens' (#2826) from fix_v6_singlenode_crash into master
Reviewed-on: MineClone2/MineClone2#2826
2022-10-22 10:16:48 +00:00
cora a8a55f9d6e don't run block fixes at all in singlenode 2022-10-22 12:10:29 +02:00
cora 2a10be4174 Fix possible crash in v6 / singlenode mapgen 2022-10-22 12:10:29 +02:00
cora dc039e31b6 Merge pull request 'Fix redstone ore not calling on_punchnode callbacks' (#2827) from fix_redstone_punchnode into master
Reviewed-on: MineClone2/MineClone2#2827
2022-10-22 10:09:55 +00:00
Michieal 7095876af1 Forgot to add in the greysacle images. 2022-10-21 22:55:26 -04:00
Michieal 9bbb065967 Complete signs acess using new API.
Has compatibility layer for signs_dark, the original signs, etc.

Has added greyscale sign for making your own signs. :)

TODO: add in translations, tweak the sign colors.
2022-10-21 22:50:39 -04:00
ancientmarinerdev a8b336381d Villagers - On die, clear job and bed. Get same job if already traded. Thunderstorms go to bed 2022-10-22 01:28:45 +01:00
Michieal c0e4c96d87 set up for new api.
Setting up for the NEW inclusive API. (prelude to).
2022-10-21 23:54:26 +00:00
Michieal 23654916cf Update DEBUG to use the global variable.
Added in a debug variable entry into settings. This commit uses that variable for all of the Signs API's debugging needs.
2022-10-21 23:31:00 +00:00
Michieal 78c7ec6121 Added in MCL_SIGNS' debug setting. 2022-10-21 19:22:33 -04:00
cora 724105bb61 Fix redstone ore not calling on_punchnode callbacks 2022-10-22 01:05:53 +02:00
TheOnlyJoeEnderman 0589816c75 fix missing parts of textures 2022-10-21 01:10:55 +00:00
TheOnlyJoeEnderman 162fe3bc1c fix missing parts of textures 2022-10-21 01:10:35 +00:00
TheOnlyJoeEnderman f352e99eb6 add axolotl to list of bucketable fish 2022-10-21 00:44:18 +00:00
TheOnlyJoeEnderman 05329c908f add axolotl spawn icon 2022-10-21 00:41:27 +00:00
TheOnlyJoeEnderman f8fe943fa6 add axolotl skin 2022-10-21 00:40:34 +00:00
TheOnlyJoeEnderman 6ee8e98ae3 add axolotl skin 2022-10-21 00:40:12 +00:00
TheOnlyJoeEnderman 65c7b741bb Add axolotl bucket texture 2022-10-21 00:39:15 +00:00
TheOnlyJoeEnderman 8001a1ea07 add axolotl lua file 2022-10-21 00:38:24 +00:00
cora d4b1e30b61 Merge pull request 'Fix crash when golem tries to pickup item' (#2820) from fix_golem_pickup_crash into master
Reviewed-on: MineClone2/MineClone2#2820
2022-10-20 23:42:38 +00:00
cora 9245c85296 Fix crash when golem tries to pickup item 2022-10-21 01:40:37 +02:00
cora ec4d431835 Merge pull request 'Make mob walk velocity be more normal' (#2821) from epcode-patch-1 into master
Reviewed-on: MineClone2/MineClone2#2821
Reviewed-by: cora <cora@noreply.git.minetest.land>
2022-10-20 03:45:15 +00:00
epCode 3ae3bc7f4e fix non-moving entities having no animations 2022-10-20 03:35:16 +00:00
epCode 14e7fea6c2 Make mob walk velocity be more normal
fixes: #2819
2022-10-20 03:35:16 +00:00
cora 3e56ca1843 Merge pull request 'fix zpigmen textures' (#2817) from fix_zpigmen into master
Reviewed-on: MineClone2/MineClone2#2817
Reviewed-by: cora <cora@noreply.git.minetest.land>
2022-10-20 03:25:23 +00:00
Michieal 9f32a4c692 MineClone2 Signs Rewrite - move from GitHub to MeseHub
GitHub link: https://github.com/michieal/Mineclone2-Signs
2022-10-19 18:55:07 -04:00
epCode 18283fb593 fix zpigmen textures 2022-10-19 11:02:20 -07:00
cora e56167136b Merge pull request 'Fix chest boats' (#2810) from chest_boats into master
Reviewed-on: MineClone2/MineClone2#2810
Reviewed-by: cora <cora@noreply.git.minetest.land>
2022-10-19 10:58:13 +00:00
ancientmarinerdev d148e6d4ba Villagers - Work, sleep and wander. Check and claim beds etc. 2022-10-19 01:10:16 +01:00
𝕵𝖔𝖍𝖆𝖓𝖓𝖊𝖘 𝕱𝖗𝖎𝖙𝖟 cb2c01b1e2 Fix chest boat model 2022-10-18 08:14:20 -05:00
cora 53dd88eaea Merge pull request 'Adjust hand range to mc's 4.5, make hand ranges configurable' (#2792) from hand_range into master
Reviewed-on: MineClone2/MineClone2#2792
2022-10-18 09:49:37 +00:00
cora 47efde7f2e Make hand range configurable 2022-10-18 11:45:56 +02:00
Guy Liner 22f6c38c1a Changed hand_range to reflect that of Minecraft Java Edition in both creative and survival 2022-10-18 11:45:56 +02:00
cora dda85ea141 Merge pull request 'Use dig_node instead of remove in creative dig' (#2807) from fix_creative_dig into master
Reviewed-on: MineClone2/MineClone2#2807
2022-10-18 09:44:49 +00:00
cora e6aeb9ffba Use dig_node instead of remove in creative dig 2022-10-18 11:42:56 +02:00
cora 9eb1e8373e Merge pull request 'Add piglins and hoglins from mcl5/extra_mobs' (#2714) from piglins into master
Reviewed-on: MineClone2/MineClone2#2714
Reviewed-by: PrairieWind <prairie.astronomer1@gmail.com>
2022-10-17 21:59:21 +00:00
cora 663900bee3 Add hoglin to piglin attack list
doesn't appear to work though
2022-10-17 13:57:42 -06:00
cora 88de3656b1 Fix possible crash when spawning piglin 2022-10-17 13:57:42 -06:00
cora d13d50333f Don't drop trades inside nodes 2022-10-17 13:57:42 -06:00
cora bb640b4f1c make villager item pickup use new api feature 2022-10-17 13:57:42 -06:00
cora 1ac0da335a on_pick_up api: remove empty stack entities 2022-10-17 13:57:41 -06:00
cora efb3072458 Add spawn egg colors, fix translator 2022-10-17 13:57:41 -06:00
cora 0b9fcae8ea document api addition 2022-10-17 13:57:41 -06:00
cora 4570226536 De-spaghettify piglin code a bit 2022-10-17 13:57:41 -06:00
cora 71ad3b91db Add hoglin and zoglin 2022-10-17 13:57:41 -06:00
cora f7703c2889 Fix piglins taking whole stacks 2022-10-17 13:57:41 -06:00
cora 8cb73ee509 Fix on_pick_up api
accepts a returned itemstring from the callback now
2022-10-17 13:57:41 -06:00
cora 79265a596b enable zombie piglin transformation 2022-10-17 13:57:41 -06:00
cora eed7c67f60 Fix piglin arrows 2022-10-17 13:57:41 -06:00
cora f8777220a3 trade on item pickup instead of on_rightclick 2022-10-17 13:57:41 -06:00
cora 5b3480860a Add piglin from mcl5 2022-10-17 13:57:41 -06:00
1023 changed files with 27848 additions and 9145 deletions

12
.editorconfig Normal file
View File

@ -0,0 +1,12 @@
root = true
[*]
end_of_line = lf
[*.lua]
charset = utf8
indent_style = tab
insert_final_newline = true
trim_trailing_whitespace = true
keep_one_space_between_table_and_bracket = false
spaces_around_operators = true

View File

@ -0,0 +1,36 @@
---
name: "Bug report"
about: "File a bug report"
labels:
- unconfirmed
- bug
---
<!--
Thanks for taking the time to fill out this bug report!
Please follow our contributing guidelines first:
https://git.minetest.land/MineClone2/MineClone2/src/branch/master/CONTRIBUTING.md#rules-about-both-bugs-and-feature-requests
By submitting this issue, you agree to follow our Code of Conduct:
https://git.minetest.land/MineClone2/MineClone2/src/branch/master/CODE_OF_CONDUCT.md
-->
<!--
What version of MineClone2 are you using? We do not provide support for outdated versions of MineClone2.
Current latest version is listed here, at the top:
https://git.minetest.land/MineClone2/MineClone2/tags
-->
MineClone2 version:
### What happened?
Report about the bug! Please send large log snippets as an attachement file.
### What should happen:
Tell us what should happen!
### Steps to reproduce
Tell us how we can reproduce the bug!

View File

@ -0,0 +1,26 @@
---
name: "Feature request"
about: "File a feature request not in Minecraft"
labels:
- "non-Minecraft feature"
- "needs discussion"
---
<!--
Got a new non-Minecraft feature request? Explain to us why we should consider your idea.
Please follow our contributing guidelines first:
https://git.minetest.land/MineClone2/MineClone2/src/branch/master/CONTRIBUTING.md#rules-about-both-bugs-and-feature-requests
By submitting this issue, you agree to follow our Code of Conduct:
https://git.minetest.land/MineClone2/MineClone2/src/branch/master/CODE_OF_CONDUCT.md
-->
### Feature
Tell us about your requested feature not in Minecraft!
### Why
Tell us why should we implement it!

View File

@ -0,0 +1,25 @@
---
name: "Missing Feature request"
about: "File a missing feature request in Minecraft but not in MineClone2"
labels:
- "missing feature"
---
<!--
Thanks for taking the time to fill out this missing feature request!
Please follow our contributing guidelines first:
https://git.minetest.land/MineClone2/MineClone2/src/branch/master/CONTRIBUTING.md#rules-about-both-bugs-and-feature-requests
By submitting this issue, you agree to follow our Code of Conduct:
https://git.minetest.land/MineClone2/MineClone2/src/branch/master/CODE_OF_CONDUCT.md
-->
### Current feature in Minecraft
Tell us about the feature currently in Minecraft! What is it like on Minecraft?
### Current feature in MineClone2
Tell us about the feature currently in MineClone2! What is different?

View File

@ -0,0 +1,20 @@
---
name: "Pull request"
about: "Submit a pull request"
labels:
---
<!--
Please follow our contributing guidelines first:
https://git.minetest.land/MineClone2/MineClone2/src/branch/master/CONTRIBUTING.md#how-you-can-help-as-a-programmer
By submitting this pull request, you agree to follow our Code of Conduct:
https://git.minetest.land/MineClone2/MineClone2/src/branch/master/CODE_OF_CONDUCT.md
-->
Tell us about your pull request! Reference related issues, if necessary
### Testing
Tell us how to test your changes!

2
.gitignore vendored
View File

@ -3,3 +3,5 @@
*.blend1
*.blend2
*.blend3
/.idea/
*.xcf

View File

@ -60,7 +60,7 @@ representative at an online or offline event.
Instances of abusive, harassing, or otherwise unacceptable behavior may be
reported to the community leaders responsible for enforcement at
eliasfleckenstein@web.de.
ancientmariner_dev@proton.me.
All complaints will be reviewed and investigated promptly and fairly.
All community leaders are obligated to respect the privacy and security of the

View File

@ -8,12 +8,13 @@
## Maintainers
* AncientMariner
* Nicu
* cora
## Previous Maintainers
* Fleckenstein
* jordan4ibanez
* cora
## Developers
* bzoss
@ -33,6 +34,9 @@
* RandomLegoBrick
* SumianVoice
* MrRar
* talamh
* Faerraven / Michieal
* FossFanatic
## Contributors
* Laurent Rocher
@ -66,7 +70,6 @@
* Benjamin Schötz
* Doloment
* Sydney Gems
* talamh
* Emily2255
* Emojigit
* FinishedFragment
@ -85,6 +88,17 @@
* opfromthestart
* snowyu
* FaceDeer
* Faerraven / Michieal
* FossFanatic
* Herbert West
* GuyLiner
* 3raven
* anarquimico
* TheOnlyJoeEnderman
* Ranko Saotome
* Gregor Parzefall
* Wbjitscool
* b3nderman
## MineClone5
* kay27
@ -95,7 +109,7 @@
* chmodsayshello
* 3raven
* PrairieWind
* Gustavo1
* Gustavo6046 / wallabra
* CableGuy67
* MrRar
@ -136,11 +150,13 @@
* jordan4ibanez
* paramat
* cora
* Faerraven / Michieal
## 3D Models
* 22i
* tobyplowy
* epCode
* Faerraven / Michieal
## Textures
* XSSheep
@ -154,6 +170,8 @@
* MysticTempest
* RandomLegoBrick
* cora
* Faerraven / Michieal
* Nicu
## Translations
* Wuzzy
@ -167,9 +185,12 @@
* Emojigit
* snowyu
* 3raven
* SakuraRiu
## Funders
* 40W
* bauknecht
* Cora
## Special thanks
* celeron55 for creating Minetest
@ -177,3 +198,4 @@
* wsor for working tirelessly in the shadows for the good of all of us, particularly helping with solving contentDB and copyright issues.
* The workaholics who spent way too much time writing for the Minecraft Wiki. It's an invaluable resource for creating this game
* Notch and Jeb for being the major forces behind Minecraft
* Dark Reaven Music (https://soundcloud.com/dark-reaven-music) for the main menu theme (Calmed Cube), which is licensed under https://creativecommons.org/licenses/by-sa/3.0/

View File

@ -74,6 +74,8 @@ Please read <http://minecraft.gamepedia.com/Breaking> to learn how digging times
* `coral_species=X`: Specifies the species of a coral; equal X means equal species
* `set_on_fire=X`: Sets any (not fire-resistant) mob or player on fire for X seconds when touching
* `compostability=X`: Item can be used on a composter block; X (1-100) is the % chance of adding a level of compost
* `leaves=X`: Node will spotaneously decay if no tree trunk nodes remain within 6 blocks distance.
* `leaves_orphan`: See above, these nodes are in the process of decayed.
#### Footnotes

21
HOW_TO_PLAY.md Normal file
View File

@ -0,0 +1,21 @@
Survive, farm, build, explore, play with friends, and do much more. Inspired by a well known block game, pushing beyond.
How to play:
#### Download Minetest
- Navigate to https://www.minetest.net/ to download the client.
- Once installed, open and select the "Content" tab
#### Install MineClone2 from ContentDB
- Click "Browse Online Content" and filter by Games (select "Games" from the dropdown box)
- Find "MineClone2" (should be first on the list or on the first page)
- Click the [+] button next to MineClone2 and wait for download to finish
- Click "Back to Main Menu"
#### Create new world and play
- Click "Start Game" tab
- At the bottom click the MineClone2 icon (the 2 dirt with grass blocks)
- Click "New", give your world a name
- You can leave seed blank or put in a word of your choice
- Select your new world
- Click "Play Game" and enjoy!

View File

@ -2,8 +2,6 @@
An unofficial Minecraft-like game for Minetest. Forked from MineClone by davedevils.
Developed by many people. Not developed or endorsed by Mojang AB.
Version: 0.80 (in development)
### Gameplay
You start in a randomly-generated world made entirely of cubes. You can explore
the world and dig and build almost every block in the world to create new
@ -158,7 +156,7 @@ The following features are incomplete:
* Some monsters and animals
* Redstone-related things
* Special minecarts
* Some special minecarts (hopper and chest minecarts work)
* A couple of non-trivial blocks and items
Bonus features (not found in Minecraft):

22
RELEASE.md Normal file
View File

@ -0,0 +1,22 @@
#File to document release steps with a view to evolving into a script
#Update CREDITS.md
#Update version in game.conf
lua tools/generate_ingame_credits.lua
git add CREDITS.md
git add mods/HUD/mcl_credits/people.lua
git add game.conf
#git add RELEASE.md
git commit -m "Pre-release update credits and set version 0.82.0"
git tag 0.82.0
git push origin 0.82.0
#Update version in game.conf to -SNAPSHOT
git commit -m "Post-release set version 0.82.0-SNAPSHOT"

View File

@ -1,2 +1,4 @@
title = MineClone 2
description = A survival sandbox game. Survive, gather, hunt, build, explore, and do much more.
disallowed_mapgens = v6
version=0.82.0-SNAPSHOT

BIN
menu/HeaderTemplate.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 83 KiB

BIN
menu/background.1.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 MiB

BIN
menu/background.10.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 990 KiB

BIN
menu/background.2.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.3 MiB

BIN
menu/background.3.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 MiB

BIN
menu/background.4.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.7 MiB

BIN
menu/background.5.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.3 MiB

BIN
menu/background.6.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.6 MiB

BIN
menu/background.7.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.0 MiB

BIN
menu/background.8.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 865 KiB

BIN
menu/background.9.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 916 KiB

BIN
menu/background.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 606 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 628 B

After

Width:  |  Height:  |  Size: 1.4 KiB

BIN
menu/header.1.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 82 KiB

BIN
menu/header.2.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 81 KiB

BIN
menu/header.3.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 82 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 76 KiB

After

Width:  |  Height:  |  Size: 82 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 68 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 119 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 121 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 118 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 122 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 91 KiB

BIN
menu/theme.ogg Normal file

Binary file not shown.

View File

@ -5,6 +5,8 @@
-- Nodes in group "supported_node" can be placed on any node that does not
-- have the "airlike" drawtype. Carpets are an example of this type.
local pairs = pairs
local math = math
local vector = vector
local facedir_to_dir = minetest.facedir_to_dir
@ -22,15 +24,17 @@ local add_item = minetest.add_item
-- We need this to do the exact same dropping node handling in our override
-- minetest.check_single_for_falling() function as in the builtin function.
--
---@param p Vector
local function drop_attached_node(p)
local n = get_node(p)
local drops = get_node_drops(n, "")
local def = registered_nodes[n.name]
if def and def.preserve_metadata then
local oldmeta = get_meta(p):to_table().fields
-- Copy pos and node because the callback can modify them.
local pos_copy = vector.new(p)
local node_copy = {name=n.name, param1=n.param1, param2=n.param2}
local pos_copy = vector.copy(p)
local node_copy = { name = n.name, param1 = n.param1, param2 = n.param2 }
local drop_stacks = {}
for k, v in pairs(drops) do
drop_stacks[k] = ItemStack(v)
@ -38,16 +42,18 @@ local function drop_attached_node(p)
drops = drop_stacks
def.preserve_metadata(pos_copy, node_copy, oldmeta, drops)
end
if def and def.sounds and def.sounds.fall then
core.sound_play(def.sounds.fall, {pos = p}, true)
minetest.sound_play(def.sounds.fall, { pos = p }, true)
end
remove_node(p)
for _, item in pairs(drops) do
local pos = {
x = p.x + math.random()/2 - 0.25,
y = p.y + math.random()/2 - 0.25,
z = p.z + math.random()/2 - 0.25,
}
local pos = vector.offset(p,
math.random() / 2 - 0.25,
math.random() / 2 - 0.25,
math.random() / 2 - 0.25
)
add_item(pos, item)
end
end
@ -90,4 +96,3 @@ function minetest.check_single_for_falling(pos)
return false
end

View File

@ -12,6 +12,7 @@ mcl_damage = {
drown = {bypasses_armor = true},
starve = {bypasses_armor = true, bypasses_magic = true},
cactus = {},
sweet_berry = {},
fall = {bypasses_armor = true},
fly_into_wall = {bypasses_armor = true}, -- unused
out_of_world = {bypasses_armor = true, bypasses_magic = true, bypasses_invulnerability = true, bypasses_totem = true},
@ -154,7 +155,6 @@ end, true)
minetest.register_on_player_hpchange(function(player, hp_change, mt_reason)
if not damage_enabled then return 0 end
if player:get_hp() > 0 then
mt_reason.approved = true
if hp_change < 0 then
mcl_damage.run_damage_callbacks(player, -hp_change, mcl_damage.from_mt(mt_reason))
end
@ -162,9 +162,7 @@ minetest.register_on_player_hpchange(function(player, hp_change, mt_reason)
end, false)
minetest.register_on_dieplayer(function(player, mt_reason)
if mt_reason.approved then
mcl_damage.run_death_callbacks(player, mcl_damage.from_mt(mt_reason))
end
mcl_damage.run_death_callbacks(player, mcl_damage.from_mt(mt_reason))
minetest.log("action","Player "..player:get_player_name().." died at "..minetest.pos_to_string(vector.round(player:get_pos())))
end)

View File

@ -0,0 +1,27 @@
## mcl_events
### Registering Events
`mlc_events.register_event("name",def)`
#### Event Definition
{
stage = 0,
max_stage = 1,
percent = 100,
bars = {},
completed = false,
cond_start = function() end,
--return table of paramtables e.g. { { player = playername, pos = position, ... } }, custom parameters will be passed to the event object/table
on_step = function(event) end,
--this function is run every game step when the event is active
on_start = function(event) end,
-- this function is run when the event starts
on_stage_begin = function(event) end,
-- this function runs when a new stage of the event starts
cond_progress = function(event) end, --return false or next stage id
--this function checks if the event should progress to the next (or any other) stage
cond_complete = function(event) end,
--return true if event finished successfully
}
### Debugging
* /event_start <event> -- starts the given event at the current player coordinates

View File

@ -0,0 +1,155 @@
mcl_events = {}
mcl_events.registered_events = {}
local disabled_events = minetest.settings:get("mcl_disabled_events")
if disabled_events then disabled_events = disabled_events:split(",")
else disabled_events = {} end
local DBG = minetest.settings:get_bool("mcl_logging_event_api",false)
local active_events = {}
local event_tpl = {
stage = 0,
max_stage = 1,
percent = 100,
bars = {},
completed = false,
cond_start = function(event) end, --return table of positions
on_step = function(event) end,
on_start = function(event) end,
on_stage_begin = function(event) end,
cond_progress = function(event) end, --return next stage
cond_complete = function(event) end, --return success
}
local function mcl_log(m,l)
if DBG then
if not l then l = "action" end
minetest.log(l,"[mcl_events] "..m)
end
end
function mcl_events.register_event(name,def)
if table.indexof(disabled_events,name) ~= -1 then return end
mcl_events.registered_events[name] = def
mcl_events.registered_events[name].name = name
end
local function addbars(self)
if not self.enable_bossbar then return end
for _,player in pairs(minetest.get_connected_players()) do
if vector.distance(self.pos,player:get_pos()) < 64 then
local bar = mcl_bossbars.add_bar(player, {color = "red", text = self.readable_name .. ": Wave "..self.stage.." / "..self.max_stage, percentage = self.percent }, true,1)
table.insert(self.bars,bar)
end
end
end
local function start_event(p,e)
mcl_log("[mcl_events] Event started: "..e.readable_name.." at "..minetest.pos_to_string(vector.round(p.pos)))
local idx = #active_events + 1
active_events[idx] = table.copy(e)
setmetatable(active_events[idx],{__index = event_tpl})
for k,v in pairs(p) do active_events[idx][k] = v end
active_events[idx].stage = 0
active_events[idx].percent = 100
active_events[idx].bars = {}
active_events[idx].time_start = os.time()
if active_events[idx].on_start then
active_events[idx]:on_start(p.pos)
end
addbars(active_events[idx])
end
local function finish_event(self,idx)
mcl_log("[mcl_events] Finished: "..self.readable_name.." at "..minetest.pos_to_string(vector.round(self.pos)))
if self.on_complete then self:on_complete() end
for _,b in pairs(self.bars) do
mcl_bossbars.remove_bar(b)
end
table.remove(active_events,idx)
end
local etime = 0
function check_events(dtime)
--process active events
for idx,ae in pairs(active_events) do
if ae.cond_complete and ae:cond_complete() then
ae.finished = true
finish_event(ae,idx)
elseif not ae.cond_complete and ae.max_stage and ae.max_stage <= ae.stage then
ae.finished = true
finish_event(ae,idx)
elseif not ae.finished and ae.cond_progress then
local p = ae:cond_progress()
if p == true then
ae.stage = ae.stage + 1
if ae:on_stage_begin() == true then
mcl_log("[mcl_events] Event "..ae.readable_name.." at "..minetest.pos_to_string(vector.round(ae.pos)).." failed at stage_begin of stage "..ae.stage )
active_events[idx] = nil
end
elseif tonumber(p) then
ae.stage = tonumber(p) or ae.stage + 1
ae:on_stage_begin()
end
elseif not ae.finished and ae.on_step then
ae:on_step(dtime)
end
addbars(ae)
end
-- check if a new event should be started
etime = etime - dtime
if etime > 0 then return end
etime = 10
for _,e in pairs(mcl_events.registered_events) do
local pp = e.cond_start()
if pp then
--minetest.log("It's gonna start the raid maybe")
for _,p in pairs(pp) do
local start = true
if e.exclusive_to_area then
for _,ae in pairs(active_events) do
if e.name == ae.name and vector.distance(p.pos,ae.pos) < e.exclusive_to_area then start = false end
end
end
if start then
--minetest.log("It's gonna start the raid definitely")
start_event(p,e)
elseif DBG then
mcl_log("[mcl_events] Event "..e.readable_name.." already active at "..minetest.pos_to_string(vector.round(p.pos)))
end
end
else
--minetest.log("Do not start this raid")
end
end
for idx,ae in pairs(active_events) do
local player_near = false
for _,pl in pairs(minetest.get_connected_players()) do
if ae.pos and vector.distance(pl:get_pos(),ae.pos) < 64 then player_near = true end
end
if ae.pos and not player_near then
mcl_log("[mcl_events] Event "..ae.readable_name.." at "..minetest.pos_to_string(vector.round(ae.pos)).." aborted - no players near." )
active_events[idx] = nil
end
end
end
minetest.register_globalstep(check_events)
mcl_info.register_debug_field("Active Events",{
level = 4,
func = function(pl,pos)
return tostring(#active_events)
end
})
minetest.register_chatcommand("event_start",{
privs = {debug = true},
description = "Debug command to start events",
func = function(pname,param)
local p = minetest.get_player_by_name(pname)
local evdef = mcl_events.registered_events[param]
if not evdef then return false,"Event "..param.." doesn't exist.'" end
start_event({pos=p:get_pos(),player=pname,factor=1},evdef)
return true,"Started event "..param
end,
})

View File

@ -0,0 +1,3 @@
name = mcl_events
author = cora
depends = mcl_mobs,mcl_bossbars, mcl_info

View File

@ -130,10 +130,10 @@ local function add_particles(pos, radius)
time = 0.125,
minpos = pos,
maxpos = pos,
minvel = {x = -radius, y = -radius, z = -radius},
maxvel = {x = radius, y = radius, z = radius},
minacc = vector.new(),
maxacc = vector.new(),
minvel = vector.new(-radius, -radius, -radius),
maxvel = vector.new(radius, radius, radius),
minacc = vector.zero(),
maxacc = vector.zero(),
minexptime = 0.5,
maxexptime = 1.0,
minsize = radius * 0.5,
@ -207,7 +207,7 @@ local function trace_explode(pos, strength, raydirs, radius, info, direct, sourc
local npos_z = math.floor(rpos_z + 0.5)
local npos = { x = npos_x, y = npos_y, z = npos_z }
local idx = (npos_z - emin_z) * zstride + (npos_y - emin_y) * ystride +
npos_x - emin_x + 1
npos_x - emin_x + 1
local cid = data[idx]
local br = node_blastres[cid] or INDESTRUCT_BLASTRES
@ -288,7 +288,7 @@ local function trace_explode(pos, strength, raydirs, radius, info, direct, sourc
rdir_y = rdir_y / rdir_len
rdir_z = rdir_z / rdir_len
for i=0, rdir_len / STEP_LENGTH do
for i = 0, rdir_len / STEP_LENGTH do
rpos_x = rpos_x + rdir_x * STEP_LENGTH
rpos_y = rpos_y + rdir_y * STEP_LENGTH
rpos_z = rpos_z + rdir_z * STEP_LENGTH
@ -296,7 +296,7 @@ local function trace_explode(pos, strength, raydirs, radius, info, direct, sourc
local npos_y = math.floor(rpos_y + 0.5)
local npos_z = math.floor(rpos_z + 0.5)
local idx = (npos_z - emin_z) * zstride + (npos_y - emin_y) * ystride +
npos_x - emin_x + 1
npos_x - emin_x + 1
local cid = data[idx]
@ -333,16 +333,17 @@ local function trace_explode(pos, strength, raydirs, radius, info, direct, sourc
end
if sleep_formspec_doesnt_close_mt53 then
minetest.after(0.3, function() -- 0.2 is minimum delay for closing old formspec and open died formspec -- TODO: REMOVE THIS IN THE FUTURE
if not obj:is_player() then
return
end
mcl_util.deal_damage(obj, damage, {type = "explosion", direct = direct, source = source})
minetest.after(0.3,
function() -- 0.2 is minimum delay for closing old formspec and open died formspec -- TODO: REMOVE THIS IN THE FUTURE
if not obj:is_player() then
return
end
mcl_util.deal_damage(obj, damage, { type = "explosion", direct = direct, source = source })
obj:add_velocity(vector.multiply(punch_dir, impact * 20))
end)
obj:add_velocity(vector.multiply(punch_dir, impact * 20))
end)
else
mcl_util.deal_damage(obj, damage, {type = "explosion", direct = direct, source = source})
mcl_util.deal_damage(obj, damage, { type = "explosion", direct = direct, source = source })
if obj:is_player() or ent.tnt_knockback then
obj:add_velocity(vector.multiply(punch_dir, impact * 20))
@ -388,23 +389,24 @@ local function trace_explode(pos, strength, raydirs, radius, info, direct, sourc
-- We use bulk_set_node instead of LVM because we want to have on_destruct and
-- on_construct being called
if #airs > 0 then
bulk_set_node(airs, {name="air"})
bulk_set_node(airs, { name = "air" })
end
if #fires > 0 then
bulk_set_node(fires, {name="mcl_fire:fire"})
bulk_set_node(fires, { name = "mcl_fire:fire" })
end
-- Update falling nodes
for a=1, #airs do
for a = 1, #airs do
local p = airs[a]
check_for_falling({x=p.x, y=p.y+1, z=p.z})
check_for_falling(vector.offset(p, 0, 1, 0))
end
for f=1, #fires do
for f = 1, #fires do
local p = fires[f]
check_for_falling({x=p.x, y=p.y+1, z=p.z})
check_for_falling(vector.offset(p, 0, 1, 0))
end
-- Log explosion
minetest.log("action", "Explosion at "..pos_to_string(pos).." with strength "..strength.." and radius "..radius)
minetest.log("action", "Explosion at " .. pos_to_string(pos) .. " with strength " .. strength .. " and radius " ..
radius)
end
-- Create an explosion with strength at pos.
@ -428,6 +430,11 @@ end
-- griefing - If true, the explosion will destroy nodes (default: true)
-- grief_protected - If true, the explosion will also destroy nodes which have
-- been protected (default: false)
---@param pos Vector
---@param strength number
---@param info {drop_chance: number, max_blast_resistance: number, sound: boolean, particles: boolean, fire: boolean, griefing: boolean, grief_protected: boolean}
---@param direct? ObjectRef
---@param source? ObjectRef
function mcl_explosions.explode(pos, strength, info, direct, source)
if info == nil then
info = {}

View File

@ -0,0 +1,2 @@
# textdomain:mcl_explosions
@1 was caught in an explosion.=@1は爆発に巻き込まれた。

View File

@ -3,26 +3,26 @@ mcl_vars = {}
mcl_vars.redstone_tick = 0.1
--- GUI / inventory menu settings
-- GUI / inventory menu settings
mcl_vars.gui_slots = "listcolors[#9990;#FFF7;#FFF0;#000;#FFF]"
-- nonbg is added as formspec prepend in mcl_formspec_prepend
mcl_vars.gui_nonbg = mcl_vars.gui_slots ..
"style_type[image_button;border=false;bgimg=mcl_inventory_button9.png;bgimg_pressed=mcl_inventory_button9_pressed.png;bgimg_middle=2,2]"..
"style_type[button;border=false;bgimg=mcl_inventory_button9.png;bgimg_pressed=mcl_inventory_button9_pressed.png;bgimg_middle=2,2]"..
"style_type[field;textcolor=#323232]"..
"style_type[label;textcolor=#323232]"..
"style_type[textarea;textcolor=#323232]"..
"style_type[checkbox;textcolor=#323232]"
mcl_vars.gui_nonbg = table.concat({
mcl_vars.gui_slots,
"style_type[image_button;border=false;bgimg=mcl_inventory_button9.png;bgimg_pressed=mcl_inventory_button9_pressed.png;bgimg_middle=2,2]",
"style_type[button;border=false;bgimg=mcl_inventory_button9.png;bgimg_pressed=mcl_inventory_button9_pressed.png;bgimg_middle=2,2]",
"style_type[field;textcolor=#323232]",
"style_type[label;textcolor=#323232]",
"style_type[textarea;textcolor=#323232]",
"style_type[checkbox;textcolor=#323232]",
})
-- Background stuff must be manually added by mods (no formspec prepend)
mcl_vars.gui_bg_color = "bgcolor[#00000000]"
mcl_vars.gui_bg_img = "background9[1,1;1,1;mcl_base_textures_background9.png;true;7]"
-- Legacy
mcl_vars.inventory_header = ""
-- Tool wield size
mcl_vars.tool_wield_scale = { x = 1.8, y = 1.8, z = 1 }
mcl_vars.tool_wield_scale = vector.new(1.8, 1.8, 1)
-- Mapgen variables
local mg_name = minetest.get_mapgen_setting("mg_name")
@ -35,55 +35,69 @@ mcl_vars.chunksize = math.max(1, tonumber(minetest.get_mapgen_setting("chunksize
mcl_vars.MAP_BLOCKSIZE = math.max(1, minetest.MAP_BLOCKSIZE or 16)
mcl_vars.mapgen_limit = math.max(1, tonumber(minetest.get_mapgen_setting("mapgen_limit")) or 31000)
mcl_vars.MAX_MAP_GENERATION_LIMIT = math.max(1, minetest.MAX_MAP_GENERATION_LIMIT or 31000)
local central_chunk_offset = -math.floor(mcl_vars.chunksize / 2)
mcl_vars.central_chunk_offset_in_nodes = central_chunk_offset * mcl_vars.MAP_BLOCKSIZE
mcl_vars.chunk_size_in_nodes = mcl_vars.chunksize * mcl_vars.MAP_BLOCKSIZE
local central_chunk_min_pos = central_chunk_offset * mcl_vars.MAP_BLOCKSIZE
local central_chunk_max_pos = central_chunk_min_pos + mcl_vars.chunk_size_in_nodes - 1
local ccfmin = central_chunk_min_pos - mcl_vars.MAP_BLOCKSIZE -- Fullminp/fullmaxp of central chunk, in nodes
local ccfmax = central_chunk_max_pos + mcl_vars.MAP_BLOCKSIZE
local mapgen_limit_b = math.floor(math.min(mcl_vars.mapgen_limit, mcl_vars.MAX_MAP_GENERATION_LIMIT) / mcl_vars.MAP_BLOCKSIZE)
local mapgen_limit_b = math.floor(math.min(mcl_vars.mapgen_limit, mcl_vars.MAX_MAP_GENERATION_LIMIT) /
mcl_vars.MAP_BLOCKSIZE)
local mapgen_limit_min = -mapgen_limit_b * mcl_vars.MAP_BLOCKSIZE
local mapgen_limit_max = (mapgen_limit_b + 1) * mcl_vars.MAP_BLOCKSIZE - 1
local numcmin = math.max(math.floor((ccfmin - mapgen_limit_min) / mcl_vars.chunk_size_in_nodes), 0) -- Number of complete chunks from central chunk
local numcmax = math.max(math.floor((mapgen_limit_max - ccfmax) / mcl_vars.chunk_size_in_nodes), 0) -- fullminp/fullmaxp to effective mapgen limits.
mcl_vars.mapgen_edge_min = central_chunk_min_pos - numcmin * mcl_vars.chunk_size_in_nodes
mcl_vars.mapgen_edge_max = central_chunk_max_pos + numcmax * mcl_vars.chunk_size_in_nodes
---@param x integer
---@return integer
local function coordinate_to_block(x)
return math.floor(x / mcl_vars.MAP_BLOCKSIZE)
end
---@param x integer
---@return integer
local function coordinate_to_chunk(x)
return math.floor((coordinate_to_block(x) - central_chunk_offset) / mcl_vars.chunksize)
end
---@param pos Vector
---@return Vector
function mcl_vars.pos_to_block(pos)
return {
x = coordinate_to_block(pos.x),
y = coordinate_to_block(pos.y),
z = coordinate_to_block(pos.z)
}
return vector.new(
coordinate_to_block(pos.x),
coordinate_to_block(pos.y),
coordinate_to_block(pos.z)
)
end
---@param pos Vector
---@return Vector
function mcl_vars.pos_to_chunk(pos)
return {
x = coordinate_to_chunk(pos.x),
y = coordinate_to_chunk(pos.y),
z = coordinate_to_chunk(pos.z)
}
return vector.new(
coordinate_to_chunk(pos.x),
coordinate_to_chunk(pos.y),
coordinate_to_chunk(pos.z)
)
end
local k_positive = math.ceil(mcl_vars.MAX_MAP_GENERATION_LIMIT / mcl_vars.chunk_size_in_nodes)
local k_positive_z = k_positive * 2
local k_positive_y = k_positive_z * k_positive_z
---@param pos Vector
---@return integer
function mcl_vars.get_chunk_number(pos) -- unsigned int
local c = mcl_vars.pos_to_chunk(pos)
return
(c.y + k_positive) * k_positive_y +
return (c.y + k_positive) * k_positive_y +
(c.z + k_positive) * k_positive_z +
c.x + k_positive
c.x + k_positive
end
if not superflat and not singlenode then
@ -117,11 +131,8 @@ elseif singlenode then
mcl_vars.mg_bedrock_is_rough = false
else
-- Classic superflat
local ground = minetest.get_mapgen_setting("mgflat_ground_level")
ground = tonumber(ground)
if not ground then
ground = 8
end
local ground = tonumber(minetest.get_mapgen_setting("mgflat_ground_level")) or 8
mcl_vars.mg_overworld_min = ground - 3
mcl_vars.mg_overworld_max_official = mcl_vars.mg_overworld_min + minecraft_height_limit
mcl_vars.mg_bedrock_overworld_min = mcl_vars.mg_overworld_min
@ -138,6 +149,7 @@ mcl_vars.mg_nether_min = -29067 -- Carefully chosen to be at a mapchunk border
mcl_vars.mg_nether_max = mcl_vars.mg_nether_min + 128
mcl_vars.mg_bedrock_nether_bottom_min = mcl_vars.mg_nether_min
mcl_vars.mg_bedrock_nether_top_max = mcl_vars.mg_nether_max
mcl_vars.mg_nether_deco_max = mcl_vars.mg_nether_max -11 -- this is so ceiling decorations don't spill into other biomes as bedrock generation calls minetest.generate_decorations to put netherrack under the bedrock
if not superflat then
mcl_vars.mg_bedrock_nether_bottom_max = mcl_vars.mg_bedrock_nether_bottom_min + 4
mcl_vars.mg_bedrock_nether_top_min = mcl_vars.mg_bedrock_nether_top_max - 4
@ -180,14 +192,16 @@ minetest.craftitemdef_default.stack_max = 64
math.randomseed(os.time())
local chunks = {} -- intervals of chunks generated
---@param pos Vector
function mcl_vars.add_chunk(pos)
local n = mcl_vars.get_chunk_number(pos) -- unsigned int
local prev
for i, d in pairs(chunks) do
if n <= d[2] then -- we've found it
if (n == d[2]) or (n >= d[1]) then return end -- already here
if n == d[1]-1 then -- right before:
if prev and (prev[2] == n-1) then
if n == d[1] - 1 then -- right before:
if prev and (prev[2] == n - 1) then
prev[2] = d[2]
table.remove(chunks, i)
return
@ -195,17 +209,20 @@ function mcl_vars.add_chunk(pos)
d[1] = n
return
end
if prev and (prev[2] == n-1) then --join to previous
if prev and (prev[2] == n - 1) then --join to previous
prev[2] = n
return
end
table.insert(chunks, i, {n, n}) -- insert new interval before i
table.insert(chunks, i, { n, n }) -- insert new interval before i
return
end
prev = d
end
chunks[#chunks+1] = {n, n}
chunks[#chunks + 1] = { n, n }
end
---@param pos Vector
---@return boolean
function mcl_vars.is_generated(pos)
local n = mcl_vars.get_chunk_number(pos) -- unsigned int
for i, d in pairs(chunks) do
@ -216,47 +233,46 @@ function mcl_vars.is_generated(pos)
return false
end
-- "Trivial" (actually NOT) function to just read the node and some stuff to not just return "ignore", like mt 5.4 does.
-- p: Position, if it's wrong, {name="error"} node will return.
-- force: optional (default: false) - Do the maximum to still read the node within us_timeout.
-- us_timeout: optional (default: 244 = 0.000244 s = 1/80/80/80), set it at least to 3000000 to let mapgen to finish its job.
--
-- returns node definition, eg. {name="air"}. Unfortunately still can return {name="ignore"}.
function mcl_vars.get_node(p, force, us_timeout)
---"Trivial" (actually NOT) function to just read the node and some stuff to not just return "ignore", like mt 5.4 does.
---@param pos Vector Position, if it's wrong, `{name="error"}` node will return.
---@param force? boolean Optional (default: `false`), Do the maximum to still read the node within us_timeout.
---@param us_timeout? number Optional (default: `244 = 0.000244 s = 1/80/80/80`), set it at least to `3000000` to let mapgen to finish its job
---@return node # Node definition, eg. `{name="air"}`. Unfortunately still can return `{name="ignore"}`.
---@nodiscard
function mcl_vars.get_node(pos, force, us_timeout)
-- check initial circumstances
if not p or not p.x or not p.y or not p.z then return {name="error"} end
if not pos or not pos.x or not pos.y or not pos.z then return { name = "error" } end
-- try common way
local node = minetest.get_node(p)
local node = minetest.get_node(pos)
if node.name ~= "ignore" then
return node
end
-- copy table to get sure it won't changed by other threads
local pos = {x=p.x,y=p.y,z=p.z}
-- copy vector to get sure it won't changed by other threads
local pos_copy = vector.copy(pos)
-- try LVM
minetest.get_voxel_manip():read_from_map(pos, pos)
node = minetest.get_node(pos)
minetest.get_voxel_manip():read_from_map(pos_copy, pos_copy)
node = minetest.get_node(pos_copy)
if node.name ~= "ignore" or not force then
return node
end
-- all ways failed - need to emerge (or forceload if generated)
local us_timeout = us_timeout or 244
if mcl_vars.is_generated(pos) then
if mcl_vars.is_generated(pos_copy) then
minetest.chat_send_all("IMPOSSIBLE! Please report this to MCL2 issue tracker!")
minetest.forceload_block(pos)
minetest.forceload_block(pos_copy)
else
minetest.emerge_area(pos, pos)
minetest.emerge_area(pos_copy, pos_copy)
end
local t = minetest.get_us_time()
node = minetest.get_node(pos)
node = minetest.get_node(pos_copy)
while (not node or node.name == "ignore") and (minetest.get_us_time() - t < us_timeout) do
node = minetest.get_node(pos)
while (not node or node.name == "ignore") and (minetest.get_us_time() - t < (us_timeout or 244)) do
node = minetest.get_node(pos_copy)
end
return node

View File

@ -11,42 +11,22 @@ Creative Commons Attribution 3.0 Unported (CC BY-SA 3.0)
http://creativecommons.org/licenses/by/3.0/
Glass breaking sounds (CC BY 3.0):
1: http://www.freesound.org/people/cmusounddesign/sounds/71947/
2: http://www.freesound.org/people/Tomlija/sounds/97669/
3: http://www.freesound.org/people/lsprice/sounds/88808/
1: http://www.freesound.org/people/cmusounddesign/sounds/71947/
2: http://www.freesound.org/people/Tomlija/sounds/97669/
3: http://www.freesound.org/people/lsprice/sounds/88808/
default_tool_breaks.ogg by EdgardEdition (CC BY 3.0), http://www.freesound.org/people/EdgardEdition
Mito551 (sounds) (CC BY-SA 3.0):
default_dig_choppy.ogg
default_dig_cracky.ogg
default_dig_crumbly.1.ogg
default_dig_crumbly.2.ogg
default_dig_crumbly.ogg
default_dig_oddly_breakable_by_hand.ogg
default_dug_node.1.ogg
default_dug_node.2.ogg
default_grass_footstep.1.ogg
default_grass_footstep.2.ogg
default_grass_footstep.3.ogg
default_gravel_footstep.1.ogg
default_gravel_footstep.2.ogg
default_gravel_footstep.3.ogg
default_gravel_footstep.4.ogg
default_grass_footstep.1.ogg
default_place_node.1.ogg
default_place_node.2.ogg
default_place_node.3.ogg
default_place_node_hard.1.ogg
default_place_node_hard.2.ogg
default_hard_footstep.1.ogg
default_hard_footstep.2.ogg
default_hard_footstep.3.ogg
default_sand_footstep.1.ogg
default_sand_footstep.2.ogg
default_wood_footstep.1.ogg
default_wood_footstep.2.ogg
default_dirt_footstep.1.ogg
default_dirt_footstep.2.ogg
default_dug_node.*.ogg
default_grass_footstep.*.ogg
default_gravel_footstep.*.ogg
default_place_node.*.ogg
default_place_node_hard.*.ogg
default_wood_footstep.*.ogg
default_dirt_footstep.*.ogg
default_glass_footstep.ogg
Metal sounds:
@ -54,35 +34,64 @@ Metal sounds:
- https://www.freesound.org/people/yadronoff/sounds/320397/
default_dug_metal.*.ogg - Iwan Gabovitch - qubodup - CC0
- http://opengameart.org/users/qubodup
default_metal_footstep.*.ogg - Ottomaani138 - CC0
- https://www.freesound.org/people/Ottomaani138/sounds/232692/
default_metal_footstep.*.ogg - (CC0 1.0) - CC0 1.0
- https://freesound.org/people/mypantsfelldown/sounds/398937/
default_place_node_metal.*.ogg - Ogrebane - CC0
- http://opengameart.org/content/wood-and-metal-sound-effects-volume-2
AGFX (CC BY 3.0)
AGFX (CC BY 3.0):
https://www.freesound.org/people/AGFX/packs/1253/
default_water_footstep.1.ogg
default_water_footstep.2.ogg
default_water_footstep.3.ogg
(default_water_footstep.4.ogg is silent)
default_water_footstep.*.ogg
blukotek (CC0 1.0)
blukotek (CC0 1.0):
https://www.freesound.org/people/blukotek/sounds/251660/
default_dig_snappy.ogg
sonictechtonic (CC BY 3.0)
sonictechtonic (CC BY 3.0):
https://www.freesound.org/people/sonictechtonic/sounds/241872/
player_damage.ogg
Voxelands project <http://www.voxelands.com/> (CC BY-SA 3.0)
Sheyvan (CC0 1.0):
https://freesound.org/people/Sheyvan/sounds/476113/
default_dig_choppy.*.ogg
lolamadeus (CC0 1.0):
https://freesound.org/people/lolamadeus/sounds/179341/
default_gravel_dig.*.ogg
default_gravel_dug.*.ogg
Benboncan (CC BY 3.0):
https://freesound.org/people/Benboncan/sounds/71823/
default_dig_cracky.*.ogg
Erdie (CC BY 3.0):
https://freesound.org/people/Erdie/sounds/41579/
default_hard_footstep.*.ogg
worthahep88 (CC0 1.0):
https://freesound.org/people/worthahep88/sounds/319224/
default_sand_footstep.*.ogg
dheming (CC BY 3.0):
https://freesound.org/people/dheming/sounds/268023/
default_ice_dig.*.ogg
InspectorJ (CC BY 3.0):
https://freesound.org/people/InspectorJ/sounds/416967/
default_ice_footstep.*.ogg
Angel_Perez_Grandi (CC BY 3.0):
https://freesound.org/people/Angel_Perez_Grandi/sounds/49190/
default_ice_dug.ogg
Voxelands project <http://www.voxelands.com/> (CC BY-SA 3.0):
mcl_sounds_place_node_water.ogg
mcl_sounds_dug_water.ogg
(Note: Artists from the Voxelands project include: sdzen, darkrose, sapier,
Tom Peter, Telaron, juskiddink)
Michel Baradari <https://opengameart.org/content/lava-splash> (CC BY 3.0)
Michel Baradari <https://opengameart.org/content/lava-splash> (CC BY 3.0):
default_place_node_lava.ogg
Adam_N (CC0 1.0):
@ -90,7 +99,7 @@ Adam_N (CC0 1.0):
Source: <https://www.freesound.org/people/Adam_N/sounds/346692/>
Alecia Shepherd (CC BY-SA 4.0):
mcl_sounds_cloth.ogg
mcl_sounds_cloth.*.ogg
Source: SnowSong sound and music pack <https://opengameart.org/content/snowsong-sound-and-music-pack>
Unknown authors (WTFPL):

View File

@ -11,7 +11,7 @@ function mcl_sounds.node_sound_defaults(table)
table.dug = table.dug or
{name="default_dug_node", gain=0.25}
table.dig = table.dig or
{name="default_dig_oddly_breakable_by_hand", gain=1.0}
{name="default_dig_oddly_breakable_by_hand", gain=0.5}
table.place = table.place or
{name="default_place_node_hard", gain=1.0}
return table
@ -20,11 +20,11 @@ end
function mcl_sounds.node_sound_stone_defaults(table)
table = table or {}
table.footstep = table.footstep or
{name="default_hard_footstep", gain=0.5}
{name="default_hard_footstep", gain=0.2}
table.dug = table.dug or
{name="default_hard_footstep", gain=1.0}
table.dig = table.dig or
{name="default_dig_cracky", gain=1.0}
{name="default_dig_cracky", gain=0.5}
mcl_sounds.node_sound_defaults(table)
return table
end
@ -32,13 +32,13 @@ end
function mcl_sounds.node_sound_metal_defaults(table)
table = table or {}
table.footstep = table.footstep or
{name="default_metal_footstep", gain=0.5}
{name="default_metal_footstep", gain=0.2}
table.dug = table.dug or
{name="default_dug_metal", gain=1.0}
{name="default_dug_metal", gain=0.5}
table.dig = table.dig or
{name="default_dig_metal", gain=1.0}
{name="default_dig_metal", gain=0.5}
table.place = table.place or
{name="default_place_node_metal", gain=1.0}
{name="default_place_node_metal", gain=0.5}
mcl_sounds.node_sound_defaults(table)
return table
end
@ -46,11 +46,11 @@ end
function mcl_sounds.node_sound_dirt_defaults(table)
table = table or {}
table.footstep = table.footstep or
{name="default_dirt_footstep", gain=1.0}
{name="default_dirt_footstep", gain=0.25}
table.dug = table.dug or
{name="default_dirt_footstep", gain=1.5}
{name="default_dirt_footstep", gain=1.0}
table.dig = table.dig or
{name="default_dig_crumbly", gain=1.0}
{name="default_dig_crumbly", gain=0.4}
table.place = table.place or
{name="default_place_node", gain=1.0}
mcl_sounds.node_sound_defaults(table)
@ -60,11 +60,25 @@ end
function mcl_sounds.node_sound_sand_defaults(table)
table = table or {}
table.footstep = table.footstep or
{name="default_sand_footstep", gain=0.5}
{name="default_sand_footstep", gain=0.05}
table.dug = table.dug or
{name="default_sand_footstep", gain=1.0}
{name="default_sand_footstep", gain=0.15}
table.dig = table.dig or
{name="default_dig_crumbly", gain=1.0}
{name="default_dig_crumbly", gain=0.4}
table.place = table.place or
{name="default_place_node", gain=1.0}
mcl_sounds.node_sound_defaults(table)
return table
end
function mcl_sounds.node_sound_gravel_defaults(table)
table = table or {}
table.footstep = table.footstep or
{name="default_gravel_footstep", gain=0.25}
table.dug = table.dug or
{name="default_gravel_dug", gain=1.0}
table.dig = table.dig or
{name="default_gravel_dig", gain=0.35}
table.place = table.place or
{name="default_place_node", gain=1.0}
mcl_sounds.node_sound_defaults(table)
@ -78,21 +92,33 @@ function mcl_sounds.node_sound_snow_defaults(table)
table.dug = table.dug or
{name="pedology_snow_soft_footstep", gain=1.0}
table.dig = table.dig or
{name="default_dig_crumbly", gain=1.0}
{name="pedology_snow_soft_footstep", gain=1.0}
table.place = table.place or
{name="default_place_node", gain=1.0}
mcl_sounds.node_sound_defaults(table)
return table
end
function mcl_sounds.node_sound_ice_defaults(table)
table = table or {}
table.footstep = table.footstep or
{name="default_ice_footstep", gain=0.15}
table.dug = table.dug or
{name="default_ice_dug", gain=0.5}
table.dig = table.dig or
{name="default_ice_dig", gain=0.5}
mcl_sounds.node_sound_defaults(table)
return table
end
function mcl_sounds.node_sound_wood_defaults(table)
table = table or {}
table.footstep = table.footstep or
{name="default_wood_footstep", gain=0.5}
{name="default_wood_footstep", gain=0.15}
table.dug = table.dug or
{name="default_wood_footstep", gain=1.0}
table.dig = table.dig or
{name="default_dig_choppy", gain=1.0}
{name="default_dig_choppy", gain=0.4}
mcl_sounds.node_sound_defaults(table)
return table
end
@ -128,11 +154,11 @@ end
function mcl_sounds.node_sound_glass_defaults(table)
table = table or {}
table.footstep = table.footstep or
{name="default_glass_footstep", gain=0.5}
{name="default_glass_footstep", gain=0.3}
table.dug = table.dug or
{name="default_break_glass", gain=1.0}
table.dig = table.dig or
{name="default_dig_cracky", gain=1.0}
{name="default_dig_cracky", gain=0.5}
mcl_sounds.node_sound_defaults(table)
return table
end

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

View File

@ -2,8 +2,8 @@ mcl_util = {}
-- Updates all values in t using values from to*.
function table.update(t, ...)
for _, to in ipairs{...} do
for k,v in pairs(to) do
for _, to in ipairs {...} do
for k, v in pairs(to) do
t[k] = v
end
end
@ -12,8 +12,8 @@ end
-- Updates nil values in t using values from to*.
function table.update_nil(t, ...)
for _, to in ipairs{...} do
for k,v in pairs(to) do
for _, to in ipairs {...} do
for k, v in pairs(to) do
if t[k] == nil then
t[k] = v
end
@ -22,7 +22,20 @@ function table.update_nil(t, ...)
return t
end
local LOGGING_ON = minetest.settings:get_bool("mcl_logging_default", false)
local LOG_MODULE = "[MCL2]"
function mcl_util.mcl_log(message, module, bypass_default_logger)
local selected_module = LOG_MODULE
if module then
selected_module = module
end
if (bypass_default_logger or LOGGING_ON) and message then
minetest.log(selected_module .. " " .. message)
end
end
function mcl_util.file_exists(name)
if type(name) ~= "string" then return end
local f = io.open(name)
if not f then
return false
@ -55,7 +68,7 @@ function mcl_util.rotate_axis_and_place(itemstack, placer, pointed_thing, infini
local undef = minetest.registered_nodes[unode.name]
if undef and undef.on_rightclick then
undef.on_rightclick(pointed_thing.under, unode, placer,
itemstack, pointed_thing)
itemstack, pointed_thing)
return
end
local fdir = minetest.dir_to_facedir(placer:get_look_dir())
@ -137,23 +150,23 @@ end
function mcl_util.get_double_container_neighbor_pos(pos, param2, side)
if side == "right" then
if param2 == 0 then
return {x=pos.x-1, y=pos.y, z=pos.z}
return {x = pos.x - 1, y = pos.y, z = pos.z}
elseif param2 == 1 then
return {x=pos.x, y=pos.y, z=pos.z+1}
return {x = pos.x, y = pos.y, z = pos.z + 1}
elseif param2 == 2 then
return {x=pos.x+1, y=pos.y, z=pos.z}
return {x = pos.x + 1, y = pos.y, z = pos.z}
elseif param2 == 3 then
return {x=pos.x, y=pos.y, z=pos.z-1}
return {x = pos.x, y = pos.y, z = pos.z - 1}
end
else
if param2 == 0 then
return {x=pos.x+1, y=pos.y, z=pos.z}
return {x = pos.x + 1, y = pos.y, z = pos.z}
elseif param2 == 1 then
return {x=pos.x, y=pos.y, z=pos.z-1}
return {x = pos.x, y = pos.y, z = pos.z - 1}
elseif param2 == 2 then
return {x=pos.x-1, y=pos.y, z=pos.z}
return {x = pos.x - 1, y = pos.y, z = pos.z}
elseif param2 == 3 then
return {x=pos.x, y=pos.y, z=pos.z+1}
return {x = pos.x, y = pos.y, z = pos.z + 1}
end
end
end
@ -171,7 +184,7 @@ end
function mcl_util.get_eligible_transfer_item_slot(src_inventory, src_list, dst_inventory, dst_list, condition)
local size = src_inventory:get_size(src_list)
local stack
for i=1, size do
for i = 1, size do
stack = src_inventory:get_stack(src_list, i)
if not stack:is_empty() and (condition == nil or condition(stack, src_inventory, src_list, dst_inventory, dst_list)) then
return i
@ -274,10 +287,10 @@ function mcl_util.move_item_container(source_pos, destination_pos, source_list,
-- Main inventory for most container types
if sctype == 2 or sctype == 3 or sctype == 5 or sctype == 6 or sctype == 7 then
source_list = "main"
-- Furnace: output
-- Furnace: output
elseif sctype == 4 then
source_list = "dst"
-- Unknown source container type. Bail out
-- Unknown source container type. Bail out
else
return false
end
@ -330,7 +343,7 @@ function mcl_util.move_item_container(source_pos, destination_pos, source_list,
-- Main inventory for most container types
if dctype == 2 or dctype == 3 or dctype == 5 or dctype == 6 or dctype == 7 then
destination_list = "main"
-- Furnace source slot
-- Furnace source slot
elseif dctype == 4 then
destination_list = "src"
end
@ -395,7 +408,7 @@ end
-- Returns true if item (itemstring or ItemStack) can be used as a furnace fuel.
-- Returns false otherwise
function mcl_util.is_fuel(item)
return minetest.get_craft_result({method="fuel", width=1, items={item}}).time ~= 0
return minetest.get_craft_result({method = "fuel", width = 1, items = {item}}).time ~= 0
end
-- Returns a on_place function for plants
@ -442,7 +455,7 @@ function mcl_util.generate_on_place_plant_function(condition)
if success then
if idef.sounds and idef.sounds.place then
minetest.sound_play(idef.sounds.place, {pos=pointed_thing.above, gain=1}, true)
minetest.sound_play(idef.sounds.place, {pos = pointed_thing.above, gain = 1}, true)
end
end
itemstack = new_itemstack
@ -599,10 +612,12 @@ function mcl_util.get_object_name(object)
end
function mcl_util.replace_mob(obj, mob)
if not obj then return end
local rot = obj:get_yaw()
local pos = obj:get_pos()
obj:remove()
obj = minetest.add_entity(pos, mob)
if not obj then return end
obj:set_yaw(rot)
return obj
end
@ -627,87 +642,372 @@ end
local function roundN(n, d)
if type(n) ~= "number" then return n end
local m = 10^d
return math.floor(n * m + 0.5) / m
local m = 10 ^ d
return math.floor(n * m + 0.5) / m
end
local function close_enough(a,b)
local rt=true
local function close_enough(a, b)
local rt = true
if type(a) == "table" and type(b) == "table" then
for k,v in pairs(a) do
if roundN(v,2) ~= roundN(b[k],2) then
rt=false
for k, v in pairs(a) do
if roundN(v, 2) ~= roundN(b[k], 2) then
rt = false
break
end
end
else
rt = roundN(a,2) == roundN(b,2)
rt = roundN(a, 2) == roundN(b, 2)
end
return rt
end
local function props_changed(props,oldprops)
local changed=false
local p={}
for k,v in pairs(props) do
if not close_enough(v,oldprops[k]) then
p[k]=v
changed=true
local function props_changed(props, oldprops)
local changed = false
local p = {}
for k, v in pairs(props) do
if not close_enough(v, oldprops[k]) then
p[k] = v
changed = true
end
end
return changed,p
return changed, p
end
--tests for roundN
local test_round1=15
local test_round2=15.00199999999
local test_round3=15.00111111
local test_round4=15.00999999
local test_round1 = 15
local test_round2 = 15.00199999999
local test_round3 = 15.00111111
local test_round4 = 15.00999999
assert(roundN(test_round1,2)==roundN(test_round1,2))
assert(roundN(test_round1,2)==roundN(test_round2,2))
assert(roundN(test_round1,2)==roundN(test_round3,2))
assert(roundN(test_round1,2)~=roundN(test_round4,2))
assert(roundN(test_round1, 2) == roundN(test_round1, 2))
assert(roundN(test_round1, 2) == roundN(test_round2, 2))
assert(roundN(test_round1, 2) == roundN(test_round3, 2))
assert(roundN(test_round1, 2) ~= roundN(test_round4, 2))
-- tests for close_enough
local test_cb = {-0.35,0,-0.35,0.35,0.8,0.35} --collisionboxes
local test_cb_close = {-0.351213,0,-0.35,0.35,0.8,0.351212}
local test_cb_diff = {-0.35,0,-1.35,0.35,0.8,0.35}
local test_cb = {-0.35, 0, -0.35, 0.35, 0.8, 0.35} --collisionboxes
local test_cb_close = {-0.351213, 0, -0.35, 0.35, 0.8, 0.351212}
local test_cb_diff = {-0.35, 0, -1.35, 0.35, 0.8, 0.35}
local test_eh = 1.65 --eye height
local test_eh_close = 1.65123123
local test_eh_diff = 1.35
local test_nt = { r = 225, b = 225, a = 225, g = 225 } --nametag
local test_nt_diff = { r = 225, b = 225, a = 0, g = 225 }
local test_nt = {r = 225, b = 225, a = 225, g = 225} --nametag
local test_nt_diff = {r = 225, b = 225, a = 0, g = 225}
assert(close_enough(test_cb,test_cb_close))
assert(not close_enough(test_cb,test_cb_diff))
assert(close_enough(test_eh,test_eh_close))
assert(not close_enough(test_eh,test_eh_diff))
assert(not close_enough(test_nt,test_nt_diff)) --no floats involved here
assert(close_enough(test_cb, test_cb_close))
assert(not close_enough(test_cb, test_cb_diff))
assert(close_enough(test_eh, test_eh_close))
assert(not close_enough(test_eh, test_eh_diff))
assert(not close_enough(test_nt, test_nt_diff)) --no floats involved here
--tests for properties_changed
local test_properties_set1={collisionbox = {-0.35,0,-0.35,0.35,0.8,0.35}, eye_height = 0.65, nametag_color = { r = 225, b = 225, a = 225, g = 225 }}
local test_properties_set2={collisionbox = {-0.35,0,-0.35,0.35,0.8,0.35}, eye_height = 1.35, nametag_color = { r = 225, b = 225, a = 225, g = 225 }}
local test_properties_set1 = {collisionbox = {-0.35, 0, -0.35, 0.35, 0.8, 0.35}, eye_height = 0.65,
nametag_color = {r = 225, b = 225, a = 225, g = 225}}
local test_properties_set2 = {collisionbox = {-0.35, 0, -0.35, 0.35, 0.8, 0.35}, eye_height = 1.35,
nametag_color = {r = 225, b = 225, a = 225, g = 225}}
local test_p1,_=props_changed(test_properties_set1,test_properties_set1)
local test_p2,_=props_changed(test_properties_set1,test_properties_set2)
local test_p1, _ = props_changed(test_properties_set1, test_properties_set1)
local test_p2, _ = props_changed(test_properties_set1, test_properties_set2)
assert(not test_p1)
assert(test_p2)
function mcl_util.set_properties(obj,props)
local changed,p=props_changed(props,obj:get_properties())
function mcl_util.set_properties(obj, props)
local changed, p = props_changed(props, obj:get_properties())
if changed then
obj:set_properties(p)
end
end
function mcl_util.set_bone_position(obj,b,p,r) --bone,position,rotation
local oldp,oldr=obj:get_bone_position(b)
if vector.equals(vector.round(oldp),vector.round(p)) and vector.equals(vector.round(oldr),vector.round(r)) then
return
function mcl_util.set_bone_position(obj, bone, pos, rot)
local current_pos, current_rot = obj:get_bone_position(bone)
local pos_equal = not pos or vector.equals(vector.round(current_pos), vector.round(pos))
local rot_equal = not rot or vector.equals(vector.round(current_rot), vector.round(rot))
if not pos_equal or not rot_equal then
obj:set_bone_position(bone, pos or current_pos, rot or current_rot)
end
obj:set_bone_position(b,p,r)
end
---Return a function to use in `on_place`.
---
---Allow to bypass the `buildable_to` node field in a `on_place` callback.
---
---You have to make sure that the nodes you return true for have `buildable_to = true`.
---@param func fun(node_name: string): boolean Return `true` if node must not replace the buildable_to node which have `node_name`
---@return fun(itemstack: ItemStack, placer: ObjectRef, pointed_thing: pointed_thing, param2: integer): ItemStack?
function mcl_util.bypass_buildable_to(func)
--------------------------
-- MINETEST CODE: UTILS --
--------------------------
local function copy_pointed_thing(pointed_thing)
return {
type = pointed_thing.type,
above = pointed_thing.above and vector.copy(pointed_thing.above),
under = pointed_thing.under and vector.copy(pointed_thing.under),
ref = pointed_thing.ref,
}
end
local function user_name(user)
return user and user:get_player_name() or ""
end
-- Returns a logging function. For empty names, does not log.
local function make_log(name)
return name ~= "" and minetest.log or function() end
end
local function check_attached_node(p, n, group_rating)
local def = core.registered_nodes[n.name]
local d = vector.zero()
if group_rating == 3 then
-- always attach to floor
d.y = -1
elseif group_rating == 4 then
-- always attach to ceiling
d.y = 1
elseif group_rating == 2 then
-- attach to facedir or 4dir direction
if (def.paramtype2 == "facedir" or
def.paramtype2 == "colorfacedir") then
-- Attach to whatever facedir is "mounted to".
-- For facedir, this is where tile no. 5 point at.
-- The fallback vector here is in case 'facedir to dir' is nil due
-- to voxelmanip placing a wallmounted node without resetting a
-- pre-existing param2 value that is out-of-range for facedir.
-- The fallback vector corresponds to param2 = 0.
d = core.facedir_to_dir(n.param2) or vector.new(0, 0, 1)
elseif (def.paramtype2 == "4dir" or
def.paramtype2 == "color4dir") then
-- Similar to facedir handling
d = core.fourdir_to_dir(n.param2) or vector.new(0, 0, 1)
end
elseif def.paramtype2 == "wallmounted" or
def.paramtype2 == "colorwallmounted" then
-- Attach to whatever this node is "mounted to".
-- This where tile no. 2 points at.
-- The fallback vector here is used for the same reason as
-- for facedir nodes.
d = core.wallmounted_to_dir(n.param2) or vector.new(0, 1, 0)
else
d.y = -1
end
local p2 = vector.add(p, d)
local nn = core.get_node(p2).name
local def2 = core.registered_nodes[nn]
if def2 and not def2.walkable then
return false
end
return true
end
return function(itemstack, placer, pointed_thing, param2)
-------------------
-- MINETEST CODE --
-------------------
local def = itemstack:get_definition()
if def.type ~= "node" or pointed_thing.type ~= "node" then
return itemstack
end
local under = pointed_thing.under
local oldnode_under = minetest.get_node_or_nil(under)
local above = pointed_thing.above
local oldnode_above = minetest.get_node_or_nil(above)
local playername = user_name(placer)
local log = make_log(playername)
if not oldnode_under or not oldnode_above then
log("info", playername .. " tried to place"
.. " node in unloaded position " .. minetest.pos_to_string(above))
return itemstack
end
local olddef_under = minetest.registered_nodes[oldnode_under.name]
olddef_under = olddef_under or minetest.nodedef_default
local olddef_above = minetest.registered_nodes[oldnode_above.name]
olddef_above = olddef_above or minetest.nodedef_default
if not olddef_above.buildable_to and not olddef_under.buildable_to then
log("info", playername .. " tried to place"
.. " node in invalid position " .. minetest.pos_to_string(above)
.. ", replacing " .. oldnode_above.name)
return itemstack
end
---------------------
-- CUSTOMIZED CODE --
---------------------
-- Place above pointed node
local place_to = vector.copy(above)
-- If node under is buildable_to, check for callback result and place into it instead
if olddef_under.buildable_to and not func(oldnode_under.name) then
log("info", "node under is buildable to")
place_to = vector.copy(under)
end
-------------------
-- MINETEST CODE --
-------------------
if minetest.is_protected(place_to, playername) then
log("action", playername
.. " tried to place " .. def.name
.. " at protected position "
.. minetest.pos_to_string(place_to))
minetest.record_protection_violation(place_to, playername)
return itemstack
end
local oldnode = minetest.get_node(place_to)
local newnode = {name = def.name, param1 = 0, param2 = param2 or 0}
-- Calculate direction for wall mounted stuff like torches and signs
if def.place_param2 ~= nil then
newnode.param2 = def.place_param2
elseif (def.paramtype2 == "wallmounted" or
def.paramtype2 == "colorwallmounted") and not param2 then
local dir = vector.subtract(under, above)
newnode.param2 = minetest.dir_to_wallmounted(dir)
-- Calculate the direction for furnaces and chests and stuff
elseif (def.paramtype2 == "facedir" or
def.paramtype2 == "colorfacedir" or
def.paramtype2 == "4dir" or
def.paramtype2 == "color4dir") and not param2 then
local placer_pos = placer and placer:get_pos()
if placer_pos then
local dir = vector.subtract(above, placer_pos)
newnode.param2 = minetest.dir_to_facedir(dir)
log("info", "facedir: " .. newnode.param2)
end
end
local metatable = itemstack:get_meta():to_table().fields
-- Transfer color information
if metatable.palette_index and not def.place_param2 then
local color_divisor = nil
if def.paramtype2 == "color" then
color_divisor = 1
elseif def.paramtype2 == "colorwallmounted" then
color_divisor = 8
elseif def.paramtype2 == "colorfacedir" then
color_divisor = 32
elseif def.paramtype2 == "color4dir" then
color_divisor = 4
elseif def.paramtype2 == "colordegrotate" then
color_divisor = 32
end
if color_divisor then
local color = math.floor(metatable.palette_index / color_divisor)
local other = newnode.param2 % color_divisor
newnode.param2 = color * color_divisor + other
end
end
-- Check if the node is attached and if it can be placed there
local an = minetest.get_item_group(def.name, "attached_node")
if an ~= 0 and
not check_attached_node(place_to, newnode, an) then
log("action", "attached node " .. def.name ..
" cannot be placed at " .. minetest.pos_to_string(place_to))
return itemstack
end
log("action", playername .. " places node "
.. def.name .. " at " .. minetest.pos_to_string(place_to))
-- Add node and update
minetest.add_node(place_to, newnode)
-- Play sound if it was done by a player
if playername ~= "" and def.sounds and def.sounds.place then
minetest.sound_play(def.sounds.place, {
pos = place_to,
exclude_player = playername,
}, true)
end
local take_item = true
-- Run callback
if def.after_place_node then
-- Deepcopy place_to and pointed_thing because callback can modify it
local place_to_copy = vector.copy(place_to)
local pointed_thing_copy = copy_pointed_thing(pointed_thing)
if def.after_place_node(place_to_copy, placer, itemstack,
pointed_thing_copy) then
take_item = false
end
end
-- Run script hook
for _, callback in ipairs(minetest.registered_on_placenodes) do
-- Deepcopy pos, node and pointed_thing because callback can modify them
local place_to_copy = vector.copy(place_to)
local newnode_copy = {name = newnode.name, param1 = newnode.param1, param2 = newnode.param2}
local oldnode_copy = {name = oldnode.name, param1 = oldnode.param1, param2 = oldnode.param2}
local pointed_thing_copy = copy_pointed_thing(pointed_thing)
if callback(place_to_copy, newnode_copy, placer, oldnode_copy, itemstack, pointed_thing_copy) then
take_item = false
end
end
if take_item then
itemstack:take_item()
end
return itemstack
end
end
--[[Check for a protection violation in a given area.
--
-- Applies is_protected() to a 3D lattice of points in the defined volume. The points are spaced
-- evenly throughout the volume and have a spacing similar to, but no larger than, "interval".
--
-- @param pos1 A position table of the area volume's first edge.
-- @param pos2 A position table of the area volume's second edge.
-- @param player The player performing the action.
-- @param interval Optional. Max spacing between checked points at the volume.
-- Default: Same as minetest.is_area_protected.
--
-- @return true on protection violation detection. false otherwise.
--
-- @notes *All corners and edges of the defined volume are checked.
]]
function mcl_util.check_area_protection(pos1, pos2, player, interval)
local name = player and player:get_player_name() or ""
local protected_pos = minetest.is_area_protected(pos1, pos2, name, interval)
if protected_pos then
minetest.record_protection_violation(protected_pos, name)
return true
end
return false
end
--[[Check for a protection violation on a single position.
--
-- @param position A position table to check for protection violation.
-- @param player The player performing the action.
--
-- @return true on protection violation detection. false otherwise.
]]
function mcl_util.check_position_protection(position, player)
local name = player and player:get_player_name() or ""
if minetest.is_protected(position, name) then
minetest.record_protection_violation(position, name)
return true
end
return false
end

View File

@ -56,7 +56,7 @@ end
local function set_attach(boat)
boat._driver:set_attach(boat.object, "",
{x = 0, y = 0.42, z = -1}, {x = 0, y = 0, z = 0})
{x = 0, y = 1.5, z = 1}, {x = 0, y = 0, z = 0})
end
local function set_double_attach(boat)
@ -67,7 +67,7 @@ local function set_double_attach(boat)
end
local function set_choat_attach(boat)
boat._driver:set_attach(boat.object, "",
{x = 0, y = 0.42, z = 1.8}, {x = 0, y = 0, z = 0})
{x = 0, y = 1.5, z = 1}, {x = 0, y = 0, z = 0})
end
local function attach_object(self, obj)
@ -109,6 +109,7 @@ local function attach_object(self, obj)
end
local function detach_object(obj, change_pos)
if not obj or not obj:get_pos() then return end
obj:set_detach()
obj:set_properties({visual_size = get_visual_size(obj)})
if obj:is_player() then
@ -135,7 +136,7 @@ local boat = {
selectionbox = {-0.7, -0.15, -0.7, 0.7, 0.55, 0.7},
visual = "mesh",
mesh = "mcl_boats_boat.b3d",
textures = {"mcl_boats_texture_oak_boat.png", "mcl_boats_texture_oak_boat.png", "mcl_boats_texture_oak_boat.png", "mcl_boats_texture_oak_boat.png", "mcl_boats_texture_oak_boat.png"},
textures = { "mcl_boats_texture_oak_boat.png", "blank.png" },
visual_size = boat_visual_size,
hp_max = boat_max_hp,
damage_texture_modifier = "^[colorize:white:0",
@ -146,7 +147,7 @@ local boat = {
_last_v = 0, -- Temporary speed variable
_removed = false, -- If true, boat entity is considered removed (e.g. after punch) and should be ignored
_itemstring = "mcl_boats:boat", -- Itemstring of the boat item (implies boat type)
_animation = 0, -- 0: not animated; 1: paddling forwards; -1: paddling forwards
_animation = 0, -- 0: not animated; 1: paddling forwards; -1: paddling backwards
_regen_timer = 0,
_damage_anim = 0,
}
@ -169,8 +170,14 @@ function boat.on_activate(self, staticdata, dtime_s)
self._last_v = self._v
self._itemstring = data.itemstring
while #data.textures < 5 do
table.insert(data.textures, data.textures[1])
-- Update the texutes for existing old boat entity instances.
-- Maybe remove this in the future.
if #data.textures ~= 2 then
local has_chest = self._itemstring:find("chest")
data.textures = {
data.textures[1]:gsub("_chest", ""),
has_chest and "mcl_chests_normal.png" or "blank.png"
}
end
self.object:set_properties({textures = data.textures})
@ -422,8 +429,7 @@ end
minetest.register_entity("mcl_boats:boat", boat)
local cboat = table.copy(boat)
cboat.mesh = "mcl_boats_boat_with_chest.b3d"
cboat.textures = {"mcl_boats_texture_oak_chest_boat.png", "mcl_boats_texture_oak_chest_boat.png", "mcl_boats_texture_oak_chest_boat.png", "mcl_boats_texture_oak_chest_boat.png", "mcl_boats_texture_oak_chest_boat.png"}
cboat.textures = { "mcl_boats_texture_oak_chest_boat.png", "mcl_chests_normal.png" }
cboat._itemstring = "mcl_boats:chest_boat"
cboat.collisionbox = {-0.5, -0.15, -0.5, 0.5, 0.75, 0.5}
cboat.selectionbox = {-0.7, -0.15, -0.7, 0.7, 0.75, 0.7}
@ -433,11 +439,7 @@ mcl_entity_invs.register_inv("mcl_boats:chest_boat","Boat",27)
local boat_ids = { "boat", "boat_spruce", "boat_birch", "boat_jungle", "boat_acacia", "boat_dark_oak", "boat_obsidian", "boat_mangrove", "chest_boat", "chest_boat_spruce", "chest_boat_birch", "chest_boat_jungle", "chest_boat_acacia", "chest_boat_dark_oak", "chest_boat_mangrove" }
local names = { S("Oak Boat"), S("Spruce Boat"), S("Birch Boat"), S("Jungle Boat"), S("Acacia Boat"), S("Dark Oak Boat"), S("Obsidian Boat"), S("Mangrove Boat"), S("Oak Chest Boat"), S("Spruce Chest Boat"), S("Birch Chest Boat"), S("Jungle Chest Boat"), S("Acacia Chest Boat"), S("Dark Oak Chest Boat"), S("Mangrove Chest Boat") }
local craftstuffs = {}
if minetest.get_modpath("mcl_core") then
craftstuffs = { "mcl_core:wood", "mcl_core:sprucewood", "mcl_core:birchwood", "mcl_core:junglewood", "mcl_core:acaciawood", "mcl_core:darkwood", "mcl_core:obsidian", "mcl_mangrove:mangrove_wood" }
end
local images = { "oak", "spruce", "birch", "jungle", "acacia", "dark_oak", "obsidian", "mangrove", "oak_chest", "spruce_chest", "birch_chest", "jungle_chest", "acacia_chest", "dark_oak_chest", "mangrove_chest" }
local craftstuffs = { "mcl_core:wood", "mcl_core:sprucewood", "mcl_core:birchwood", "mcl_core:junglewood", "mcl_core:acaciawood", "mcl_core:darkwood", "mcl_core:obsidian", "mcl_mangrove:mangrove_wood" }
for b=1, #boat_ids do
local itemstring = "mcl_boats:"..boat_ids[b]
@ -453,6 +455,21 @@ for b=1, #boat_ids do
end
tt_help = S("Water vehicle")
local inventory_image
local texture
local id = boat_ids[b]
if id:find("chest") then
if id == "chest_boat" then id = "oak" end
local id = id:gsub("chest_boat_", "")
inventory_image = "mcl_boats_" .. id .. "_chest_boat.png"
texture = "mcl_boats_texture_" .. id .. "_boat.png"
else
if id == "boat" then id = "oak" end
local id = id:gsub("boat_", "")
inventory_image = "mcl_boats_" .. id .. "_boat.png"
texture = "mcl_boats_texture_" .. id .. "_boat.png"
end
minetest.register_craftitem(itemstring, {
description = names[b],
_tt_help = tt_help,
@ -460,7 +477,7 @@ for b=1, #boat_ids do
_doc_items_entry_name = helpname,
_doc_items_longdesc = longdesc,
_doc_items_usagehelp = usagehelp,
inventory_image = "mcl_boats_"..images[b].."_boat.png",
inventory_image = inventory_image,
liquids_pointable = true,
groups = { boat = 1, transport = 1},
stack_max = 1,
@ -488,13 +505,14 @@ for b=1, #boat_ids do
pos = vector.add(pos, vector.multiply(dir, boat_y_offset_ground))
end
local boat_ent = "mcl_boats:boat"
local chest_tex = "blank.png"
if itemstring:find("chest") then
boat_ent = "mcl_boats:chest_boat"
chest_tex = "mcl_chests_normal.png"
end
local boat = minetest.add_entity(pos, boat_ent)
local texture = "mcl_boats_texture_"..images[b].."_boat.png"
boat:get_luaentity()._itemstring = itemstring
boat:set_properties({textures = { texture, texture, texture, texture, texture }})
boat:set_properties({ textures = { texture, chest_tex } })
boat:set_yaw(placer:get_look_horizontal())
if not minetest.is_creative_enabled(placer:get_player_name()) then
itemstack:take_item()

View File

@ -0,0 +1,13 @@
# textdomain: mcl_boats
Acacia Boat=アカシアのボート
Birch Boat=シラカバのボート
Boat=ボート
Boats are used to travel on the surface of water.=ボートは、水面を移動するために使われます。
Dark Oak Boat=ダークオークのボート
Jungle Boat=ジャングルのボート
Oak Boat=オークのボート
Rightclick on a water source to place the boat. Rightclick the boat to enter it. Use [Left] and [Right] to steer, [Forwards] to speed up and [Backwards] to slow down or move backwards. Use [Sneak] to leave the boat, punch the boat to make it drop as an item.=水源を右クリックすると、ボートが配置されます。ボートを右クリックすると、乗り込みます。[左][右]で舵取り、[前]で加速、[後]で減速または後退します。[スニーク]でボートから離れ、ボートをパンチするとアイテムとしてドロップします。
Spruce Boat=トウヒのボート
Water vehicle=水上用の乗物
Sneak to dismount=スニークで降りる
Obsidian Boat=黒曜石のボート

Binary file not shown.

Before

Width:  |  Height:  |  Size: 16 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 15 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 14 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 15 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 15 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 15 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 15 KiB

View File

@ -0,0 +1,36 @@
# mcl_dripping
Dripping Mod by kddekadenz, modified for MineClone 2 by Wuzzy, NO11 and AFCM
## Manual
- drops are generated rarely under solid nodes
- they will stay some time at the generated block and than they fall down
- when they collide with the ground, a sound is played and they are destroyed
Water and Lava have builtin drops registered.
## License
code & sounds: CC0
## API
```lua
mcl_dripping.register_drop({
-- The group the liquid's nodes belong to
liquid = "water",
-- The texture used (particles will take a random 2x2 area of it)
texture = "default_water_source_animated.png",
-- Define particle glow, ranges from `0` to `minetest.LIGHT_MAX`
light = 1,
-- The nodes (or node group) the particles will spawn under
nodes = { "group:opaque", "group:leaves" },
-- The sound that will be played then the particle detaches from the roof, see SimpleSoundSpec in lua_api.txt
sound = "drippingwater_drip",
-- The interval for the ABM to run
interval = 60,
-- The chance of the ABM
chance = 10,
})
```

View File

@ -3,53 +3,99 @@
-- License of code, textures & sounds: CC0
local math = math
local function make_drop(pos,liquid,sound,interval)
mcl_dripping = {}
---@param pos Vector
---@param liquid string
---@param sound SimpleSoundSpec
---@param interval integer
---@param texture string
local function make_drop(pos, liquid, sound, interval, texture)
local pt = {
velocity = vector.new(0,0,0),
velocity = vector.zero(),
collision_removal = false,
}
local t = math.random() + math.random(1, interval)
minetest.after(t,function()
minetest.after(t, function()
local x, z = math.random(-45, 45) / 100, math.random(-45, 45) / 100
pt.pos = vector.offset(pos,x,-0.52,z)
pt.acceleration = vector.new(0,0,0)
pt.pos = vector.offset(pos, x, -0.52, z)
pt.acceleration = vector.zero()
pt.collisiondetection = false
pt.expirationtime = t
pt.texture="[combine:2x2:" .. -math.random(1, 16) .. "," .. -math.random(1, 16) .. "=default_" .. liquid .. "_source_animated.png"
pt.texture = "[combine:2x2:" ..
-math.random(1, 16) .. "," .. -math.random(1, 16) .. "=" .. texture
minetest.add_particle(pt)
minetest.after(t,function()
pt.acceleration = vector.new(0,-5,0)
minetest.after(t, function()
pt.acceleration = vector.new(0, -5, 0)
pt.collisiondetection = true
pt.expirationtime = math.random() + math.random(1, interval/2)
pt.expirationtime = math.random() + math.random(1, interval / 2)
minetest.add_particle(pt)
minetest.sound_play({name = "drippingwater_" .. sound .. "drip"}, {pos = pos, gain = 0.5, max_hear_distance = 8}, true)
minetest.sound_play(sound, { pos = pos, gain = 0.5, max_hear_distance = 8 },
true)
end)
end)
end
local function register_drop(liquid, glow, sound, nodes, interval, chance)
---@class mcl_dripping_drop_definition
---@field liquid string The group the liquid's nodes belong to
---@field texture string The texture used (particles will take a random 2x2 area of it)
---@field light integer Define particle glow, ranges from `0` to `minetest.LIGHT_MAX`
---@field nodes string[] The nodes (or node group) the particles will spawn under
---@field interval integer The interval for the ABM to run
---@field chance integer The chance of the ABM
---@field sound SimpleSoundSpec The sound that will be played then the particle detaches from the roof
---@param def mcl_dripping_drop_definition
function mcl_dripping.register_drop(def)
minetest.register_abm({
label = "Create drops",
nodenames = nodes,
neighbors = {"group:" .. liquid},
interval = interval,
chance = chance,
nodenames = def.nodes,
neighbors = { "group:" .. def.liquid },
interval = def.interval,
chance = def.chance,
action = function(pos)
local r = math.ceil(interval / 20)
local nn=minetest.find_nodes_in_area(vector.offset(pos,-r,0,-r),vector.offset(pos,r,0,r),nodes)
local below = minetest.get_node(vector.offset(pos,0,-1,0)).name
if below ~= "air" then return end
local r = math.ceil(def.interval / 20)
local nn = minetest.find_nodes_in_area(vector.offset(pos, -r, 0, -r), vector.offset(pos, r, 0, r), def.nodes)
--start a bunch of particle cycles to be able to get away
--with longer abm cycles
table.shuffle(nn)
for i=1,math.random(#nn) do
if minetest.get_item_group(minetest.get_node(vector.offset(nn[i], 0, 1, 0)).name, liquid) ~= 0
and minetest.get_node(vector.offset(nn[i], 0, -1, 0)).name == "air" then
make_drop(nn[i],liquid,sound,interval)
for i = 1, math.random(#nn) do
if minetest.get_item_group(minetest.get_node(vector.offset(nn[i], 0, 1, 0)).name, def.liquid) ~= 0 then
make_drop(nn[i], def.liquid, def.sound, def.interval, def.texture)
end
end
end,
})
end
register_drop("water", 1, "", {"group:opaque", "group:leaves"},60,10)
register_drop("lava", math.max(7, minetest.registered_nodes["mcl_core:lava_source"].light_source - 3), "lava", {"group:opaque"},60,10)
mcl_dripping.register_drop({
liquid = "water",
texture = "default_water_source_animated.png",
light = 1,
nodes = { "group:opaque", "group:leaves" },
sound = "drippingwater_drip",
interval = 60.3,
chance = 10,
})
mcl_dripping.register_drop({
liquid = "lava",
texture = "default_lava_source_animated.png",
light = math.max(7, minetest.registered_nodes["mcl_core:lava_source"].light_source - 3),
nodes = { "group:opaque" },
sound = "drippingwater_lavadrip",
interval = 110.1,
chance = 10,
})

View File

@ -1,29 +0,0 @@
Dripping Mod
by kddekadenz
modified for MineClone 2 by Wuzzy and NO11
Installing instructions:
1. Copy the mcl_dripping mod folder into games/gamemode/mods
2. Start game and enjoy :)
Manual:
-> drops are generated rarely under solid nodes
-> they will stay some time at the generated block and than they fall down
-> when they collide with the ground, a sound is played and they are destroyed
License:
code & sounds: CC0
Changelog:
16.04.2012 - first release
28.04.2012 - drops are now 3D; added lava drops; fixed generating of drops (not at edges now)

View File

@ -2,6 +2,10 @@ mcl_entity_invs = {}
local open_invs = {}
local function mcl_log (message)
mcl_util.mcl_log (message, "[Entity Invs]")
end
local function check_distance(inv,player,count)
for _,o in pairs(minetest.get_objects_inside_radius(player:get_pos(),5)) do
local l = o:get_luaentity()
@ -22,20 +26,25 @@ local inv_callbacks = {
end,
}
local function load_inv(ent,size)
function mcl_entity_invs.load_inv(ent,size)
mcl_log("load_inv")
if not ent._inv_id then return end
mcl_log("load_inv 2")
local inv = minetest.get_inventory({type="detached", name=ent._inv_id})
if not inv then
mcl_log("load_inv 3")
inv = minetest.create_detached_inventory(ent._inv_id, inv_callbacks)
inv:set_size("main", size)
if ent._items then
inv:set_list("main",ent._items)
end
else
mcl_log("load_inv 4")
end
return inv
end
local function save_inv(ent)
function mcl_entity_invs.save_inv(ent)
if ent._inv then
ent._items = {}
for i,it in ipairs(ent._inv:get_list("main")) do
@ -46,32 +55,60 @@ local function save_inv(ent)
end
end
local function load_default_formspec (ent, text)
text = text or ""
local invent_size = ent._inv_size
local div_by_two = invent_size % 2 == 0
local div_by_three = invent_size % 3 == 0
--mcl_log("Div by 3: ".. tostring(div_by_three))
--mcl_log("Div by 2: ".. tostring(div_by_two))
--mcl_log("invent_size: ".. tostring(invent_size))
local rows = 3
if invent_size > 18 or (div_by_three == true and invent_size > 8) then
--mcl_log("Div by 3")
rows = 3
elseif (div_by_two == true and invent_size > 3) or invent_size > 9 then
--mcl_log("Div by 2")
rows = 2
else
--mcl_log("Not div by 2 or 3")
rows = 1
end
--local rows = 3
local cols = (math.ceil(ent._inv_size/rows))
local spacing = (9 - cols) / 2
local formspec = "size[9,8.75]"
.. "label[0,0;" .. minetest.formspec_escape(
minetest.colorize("#313131", ent._inv_title .. " ".. text)) .. "]"
.. "list[detached:"..ent._inv_id..";main;"..spacing..",0.5;"..cols..","..rows..";]"
.. mcl_formspec.get_itemslot_bg(spacing,0.5,cols,rows)
.. "label[0,4.0;" .. minetest.formspec_escape(
minetest.colorize("#313131", "Inventory")) .. "]"
.. "list[current_player;main;0,4.5;9,3;9]"
.. mcl_formspec.get_itemslot_bg(0,4.5,9,3)
.. "list[current_player;main;0,7.74;9,1;]"
.. mcl_formspec.get_itemslot_bg(0,7.74,9,1)
.. "listring[detached:"..ent._inv_id..";main]"
.. "listring[current_player;main]"
return formspec
end
function mcl_entity_invs.show_inv_form(ent,player,text)
if not ent._inv_id then return end
if not open_invs[ent] then
open_invs[ent] = 0
end
text = text or ""
ent._inv = load_inv(ent,ent._inv_size)
ent._inv = mcl_entity_invs.load_inv(ent,ent._inv_size)
open_invs[ent] = open_invs[ent] + 1
local playername = player:get_player_name()
local rows = 3
local cols = (math.ceil(ent._inv_size/rows))
local spacing = (9 - cols) / 2
local formspec = "size[9,8.75]"
.. "label[0,0;" .. minetest.formspec_escape(
minetest.colorize("#313131", ent._inv_title .. " ".. text)) .. "]"
.. "list[detached:"..ent._inv_id..";main;"..spacing..",0.5;"..cols..","..rows..";]"
.. mcl_formspec.get_itemslot_bg(spacing,0.5,cols,rows)
.. "label[0,4.0;" .. minetest.formspec_escape(
minetest.colorize("#313131", "Inventory")) .. "]"
.. "list[current_player;main;0,4.5;9,3;9]"
.. mcl_formspec.get_itemslot_bg(0,4.5,9,3)
.. "list[current_player;main;0,7.74;9,1;]"
.. mcl_formspec.get_itemslot_bg(0,7.74,9,1)
.. "listring[detached:"..ent._inv_id..";main]"
.. "listring[current_player;main]"
minetest.show_formspec(playername,ent._inv_id,formspec)
minetest.show_formspec(playername, ent._inv_id, load_default_formspec (ent, text))
end
local function drop_inv(ent)
@ -85,9 +122,9 @@ local function drop_inv(ent)
end
local function on_remove(self,killer,oldf)
save_inv(self)
drop_inv(self)
if oldf then return oldf(self,killer) end
mcl_entity_invs.save_inv(self)
drop_inv(self)
if oldf then return oldf(self,killer) end
end
minetest.register_on_player_receive_fields(function(player, formname, fields)
@ -95,7 +132,7 @@ minetest.register_on_player_receive_fields(function(player, formname, fields)
if formname == k._inv_id then
open_invs[k] = open_invs[k] - 1
if open_invs[k] < 1 then
save_inv(k)
mcl_entity_invs.save_inv(k)
open_invs[k] = nil
end
end
@ -151,7 +188,7 @@ function mcl_entity_invs.register_inv(entity_name,show_name,size,no_on_righclick
local old_ode = minetest.registered_entities[entity_name].on_deactivate
minetest.registered_entities[entity_name].on_deactivate = function(self,removal)
save_inv(self)
mcl_entity_invs.save_inv(self)
if removal then
on_remove(self)
end

View File

@ -25,4 +25,10 @@ http://minetest.net/
DO WHAT THE FUCK YOU WANT TO PUBLIC LICENSE
TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
0. You just DO WHAT THE FUCK YOU WANT TO.
0. You just DO WHAT THE FUCK YOU WANT TO.
---------
Alterations and contributions are released under GNU GPLv3 after 11/11/2022 and for contributors:
AncientMariner/ancientmarinerdev

View File

@ -6,22 +6,25 @@ local pool = {}
local tick = false
local LOGGING_ON = minetest.settings:get_bool("mcl_logging_item_entities", false)
local function mcl_log(message)
if LOGGING_ON then
mcl_util.mcl_log(message, "[Item Entities]", true)
end
end
minetest.register_on_joinplayer(function(player)
local name
name = player:get_player_name()
pool[name] = 0
pool[player:get_player_name()] = 0
end)
minetest.register_on_leaveplayer(function(player)
local name
name = player:get_player_name()
pool[name] = nil
pool[player:get_player_name()] = nil
end)
local has_awards = minetest.get_modpath("awards")
local mcl_item_entity = {}
mcl_item_entity = {}
--basic settings
local item_drop_settings = {} --settings table
@ -36,22 +39,29 @@ item_drop_settings.random_item_velocity = true --this sets random item velocity
item_drop_settings.drop_single_item = false --if true, the drop control drops 1 item instead of the entire stack, and sneak+drop drops the stack
-- drop_single_item is disabled by default because it is annoying to throw away items from the intentory screen
item_drop_settings.magnet_time = 0.75 -- how many seconds an item follows the player before giving up
item_drop_settings.magnet_time = 0.75 -- how many seconds an item follows the player before giving up
local function get_gravity()
return tonumber(minetest.settings:get("movement_gravity")) or 9.81
end
local registered_pickup_achievement = {}
mcl_item_entity.registered_pickup_achievement = {}
--TODO: remove limitation of 1 award per itemname
---Register an achievement that will be unlocked on pickup.
---
---TODO: remove limitation of 1 award per itemname
---@param itemname string
---@param award string
function mcl_item_entity.register_pickup_achievement(itemname, award)
if not has_awards then
minetest.log("warning", "[mcl_item_entity] Trying to register pickup achievement ["..award.."] for ["..itemname.."] while awards missing")
elseif registered_pickup_achievement[itemname] then
minetest.log("error", "[mcl_item_entity] Trying to register already existing pickup achievement ["..award.."] for ["..itemname.."]")
minetest.log("warning",
"[mcl_item_entity] Trying to register pickup achievement [" .. award .. "] for [" ..
itemname .. "] while awards missing")
elseif mcl_item_entity.registered_pickup_achievement[itemname] then
minetest.log("error",
"[mcl_item_entity] Trying to register already existing pickup achievement [" .. award .. "] for [" .. itemname .. "]")
else
registered_pickup_achievement[itemname] = award
mcl_item_entity.registered_pickup_achievement[itemname] = award
end
end
@ -64,11 +74,13 @@ mcl_item_entity.register_pickup_achievement("mcl_nether:ancient_debris", "mcl:hi
mcl_item_entity.register_pickup_achievement("mcl_end:dragon_egg", "mcl:PickUpDragonEgg")
mcl_item_entity.register_pickup_achievement("mcl_armor:elytra", "mcl:skysTheLimit")
---@param object ObjectRef
---@param player ObjectRef
local function check_pickup_achievements(object, player)
if has_awards then
local itemname = ItemStack(object:get_luaentity().itemstring):get_name()
local playername = player:get_player_name()
for name,award in pairs(registered_pickup_achievement) do
for name, award in pairs(mcl_item_entity.registered_pickup_achievement) do
if itemname == name or minetest.get_item_group(itemname, name) ~= 0 then
awards.unlock(playername, award)
end
@ -76,16 +88,23 @@ local function check_pickup_achievements(object, player)
end
end
---@param object ObjectRef
---@param luaentity Luaentity
---@param ignore_check? boolean
local function enable_physics(object, luaentity, ignore_check)
if luaentity.physical_state == false or ignore_check == true then
luaentity.physical_state = true
object:set_properties({
physical = true
})
object:set_acceleration({x=0,y=-get_gravity(),z=0})
object:set_acceleration(vector.new(0, -get_gravity(), 0))
end
end
---@param object ObjectRef
---@param luaentity Luaentity
---@param ignore_check? boolean
---@param reset_movement? boolean
local function disable_physics(object, luaentity, ignore_check, reset_movement)
if luaentity.physical_state == true or ignore_check == true then
luaentity.physical_state = false
@ -93,17 +112,16 @@ local function disable_physics(object, luaentity, ignore_check, reset_movement)
physical = false
})
if reset_movement ~= false then
object:set_velocity({x=0,y=0,z=0})
object:set_acceleration({x=0,y=0,z=0})
object:set_velocity(vector.zero())
object:set_acceleration(vector.zero())
end
end
end
minetest.register_globalstep(function(dtime)
minetest.register_globalstep(function(_)
tick = not tick
for _,player in pairs(minetest.get_connected_players()) do
for _, player in pairs(minetest.get_connected_players()) do
if player:get_hp() > 0 or not minetest.settings:get_bool("enable_damage") then
local name = player:get_player_name()
@ -115,7 +133,7 @@ minetest.register_globalstep(function(dtime)
pos = pos,
gain = 0.3,
max_hear_distance = 16,
pitch = math.random(70,110)/100
pitch = math.random(70, 110) / 100
})
if pool[name] > 6 then
pool[name] = 6
@ -125,15 +143,18 @@ minetest.register_globalstep(function(dtime)
end
local inv = player:get_inventory()
local checkpos = {x=pos.x,y=pos.y + item_drop_settings.player_collect_height,z=pos.z}
local checkpos = vector.offset(pos, 0, item_drop_settings.player_collect_height, 0)
--magnet and collection
for _,object in pairs(minetest.get_objects_inside_radius(checkpos, item_drop_settings.xp_radius_magnet)) do
if not object:is_player() and vector.distance(checkpos, object:get_pos()) < item_drop_settings.radius_magnet and object:get_luaentity() and object:get_luaentity().name == "__builtin:item" and object:get_luaentity()._magnet_timer and (object:get_luaentity()._insta_collect or (object:get_luaentity().age > item_drop_settings.age)) then
for _, object in pairs(minetest.get_objects_inside_radius(checkpos, item_drop_settings.xp_radius_magnet)) do
if not object:is_player() and vector.distance(checkpos, object:get_pos()) < item_drop_settings.radius_magnet and
object:get_luaentity() and object:get_luaentity().name == "__builtin:item" and object:get_luaentity()._magnet_timer
and (object:get_luaentity()._insta_collect or (object:get_luaentity().age > item_drop_settings.age)) then
if object:get_luaentity()._magnet_timer >= 0 and object:get_luaentity()._magnet_timer < item_drop_settings.magnet_time and inv and inv:room_for_item("main", ItemStack(object:get_luaentity().itemstring)) then
if object:get_luaentity()._magnet_timer >= 0 and
object:get_luaentity()._magnet_timer < item_drop_settings.magnet_time and inv and
inv:room_for_item("main", ItemStack(object:get_luaentity().itemstring)) then
-- Collection
if not object:get_luaentity()._removed then
@ -148,8 +169,8 @@ minetest.register_globalstep(function(dtime)
object:get_luaentity().target = checkpos
object:get_luaentity()._removed = true
object:set_velocity({x=0,y=0,z=0})
object:set_acceleration({x=0,y=0,z=0})
object:set_velocity(vector.zero())
object:set_acceleration(vector.zero())
object:move_to(checkpos)
@ -169,7 +190,6 @@ minetest.register_globalstep(function(dtime)
local entity = object:get_luaentity()
entity.collector = player:get_player_name()
entity.collected = true
end
end
@ -184,6 +204,11 @@ end)
local tmp_id = 0
---@param drop string|drop_definition
---@param toolname string
---@param param2 integer
---@param paramtype2 paramtype2
---@return string[]
local function get_drops(drop, toolname, param2, paramtype2)
tmp_id = tmp_id + 1
local tmp_node_name = "mcl_item_entity:" .. tmp_id
@ -192,7 +217,7 @@ local function get_drops(drop, toolname, param2, paramtype2)
drop = drop,
paramtype2 = paramtype2
}
local drops = minetest.get_node_drops({name = tmp_node_name, param2 = param2}, toolname)
local drops = minetest.get_node_drops({ name = tmp_node_name, param2 = param2 }, toolname)
minetest.registered_nodes[tmp_node_name] = nil
return drops
end
@ -255,7 +280,7 @@ function minetest.handle_node_drops(pos, drops, digger)
* table: Drop every itemstring in this table when dug by shears _mcl_silk_touch_drop
]]
local enchantments = tool and mcl_enchanting.get_enchantments(tool, "silk_touch")
local enchantments = tool and mcl_enchanting.get_enchantments(tool)
local silk_touch_drop = false
local nodedef = minetest.registered_nodes[dug_node.name]
@ -284,7 +309,8 @@ function minetest.handle_node_drops(pos, drops, digger)
local max_count = fortune_drop.max_count + fortune_level * (fortune_drop.factor or 1)
local chance = fortune_drop.chance or fortune_drop.get_chance and fortune_drop.get_chance(fortune_level)
if not chance or math.random() < chance then
drops = discrete_uniform_distribution(fortune_drop.multiply and drops or fortune_drop.items, min_count, max_count, fortune_drop.cap)
drops = discrete_uniform_distribution(fortune_drop.multiply and drops or fortune_drop.items, min_count, max_count,
fortune_drop.cap)
elseif fortune_drop.override then
drops = {}
end
@ -296,13 +322,13 @@ function minetest.handle_node_drops(pos, drops, digger)
end
if digger and mcl_experience.throw_xp and not silk_touch_drop then
local experience_amount = minetest.get_item_group(dug_node.name,"xp")
local experience_amount = minetest.get_item_group(dug_node.name, "xp")
if experience_amount > 0 then
mcl_experience.throw_xp(pos, experience_amount)
end
end
for _,item in ipairs(drops) do
for _, item in ipairs(drops) do
local count
if type(item) == "string" then
count = ItemStack(item):get_count()
@ -311,7 +337,7 @@ function minetest.handle_node_drops(pos, drops, digger)
end
local drop_item = ItemStack(item)
drop_item:set_count(1)
for i=1,count do
for i = 1, count do
local dpos = table.copy(pos)
-- Apply offset for plantlike_rooted nodes because of their special shape
if nodedef and nodedef.drawtype == "plantlike_rooted" and nodedef.walkable then
@ -338,7 +364,7 @@ end
function minetest.item_drop(itemstack, dropper, pos)
if dropper and dropper:is_player() then
local v = dropper:get_look_dir()
local p = {x=pos.x, y=pos.y+1.2, z=pos.z}
local p = vector.offset(pos, 0, 1.2, 0)
local cs = itemstack:get_count()
if dropper:get_player_control().sneak then
cs = 1
@ -346,9 +372,9 @@ function minetest.item_drop(itemstack, dropper, pos)
local item = itemstack:take_item(cs)
local obj = minetest.add_item(p, item)
if obj then
v.x = v.x*4
v.y = v.y*4 + 2
v.z = v.z*4
v.x = v.x * 4
v.y = v.y * 4 + 2
v.z = v.z * 4
obj:set_velocity(v)
-- Force collection delay
obj:get_luaentity()._insta_collect = false
@ -366,27 +392,137 @@ end
local function cxcz(o, cw, one, zero)
if cw < 0 then
table.insert(o, { [one]=1, y=0, [zero]=0 })
table.insert(o, { [one]=-1, y=0, [zero]=0 })
table.insert(o, { [one] = 1, y = 0, [zero] = 0 })
table.insert(o, { [one] = -1, y = 0, [zero] = 0 })
else
table.insert(o, { [one]=-1, y=0, [zero]=0 })
table.insert(o, { [one]=1, y=0, [zero]=0 })
table.insert(o, { [one] = -1, y = 0, [zero] = 0 })
table.insert(o, { [one] = 1, y = 0, [zero] = 0 })
end
return o
end
local function hopper_take_item(self, pos)
--mcl_log("self.itemstring: ".. self.itemstring)
--mcl_log("self.itemstring: ".. minetest.pos_to_string(pos))
local objs = minetest.get_objects_inside_radius(pos, 2)
if objs and self.itemstring then
--mcl_log("there is an itemstring. Number of objs: ".. #objs)
for k, v in pairs(objs) do
local ent = v:get_luaentity()
-- Don't forget actual hoppers
if ent and ent.name == "mcl_minecarts:hopper_minecart" then
local taken_items = false
mcl_log("ent.name: " .. tostring(ent.name))
mcl_log("ent pos: " .. tostring(ent.object:get_pos()))
local inv = mcl_entity_invs.load_inv(ent, 5)
if not inv then
mcl_log("No inv")
return false
end
local current_itemstack = ItemStack(self.itemstring)
mcl_log("inv. size: " .. ent._inv_size)
if inv:room_for_item("main", current_itemstack) then
mcl_log("Room")
inv:add_item("main", current_itemstack)
self.object:get_luaentity().itemstring = ""
self.object:remove()
taken_items = true
else
mcl_log("no Room")
end
if not taken_items then
local items_remaining = current_itemstack:get_count()
-- This will take part of a floating item stack if no slot can hold the full amount
for i = 1, ent._inv_size, 1 do
local stack = inv:get_stack("main", i)
mcl_log("i: " .. tostring(i))
mcl_log("Items remaining: " .. items_remaining)
mcl_log("Name: " .. tostring(stack:get_name()))
if current_itemstack:get_name() == stack:get_name() then
mcl_log("We have a match. Name: " .. tostring(stack:get_name()))
local room_for = stack:get_stack_max() - stack:get_count()
mcl_log("Room for: " .. tostring(room_for))
if room_for == 0 then
-- Do nothing
mcl_log("No room")
elseif room_for < items_remaining then
mcl_log("We have more items remaining than space")
items_remaining = items_remaining - room_for
stack:set_count(stack:get_stack_max())
inv:set_stack("main", i, stack)
taken_items = true
else
local new_stack_size = stack:get_count() + items_remaining
stack:set_count(new_stack_size)
mcl_log("We have more than enough space. Now holds: " .. new_stack_size)
inv:set_stack("main", i, stack)
items_remaining = 0
self.object:get_luaentity().itemstring = ""
self.object:remove()
taken_items = true
break
end
mcl_log("Count: " .. tostring(stack:get_count()))
mcl_log("stack max: " .. tostring(stack:get_stack_max()))
--mcl_log("Is it empty: " .. stack:to_string())
end
if i == ent._inv_size and taken_items then
mcl_log("We are on last item and still have items left. Set final stack size: " .. items_remaining)
current_itemstack:set_count(items_remaining)
--mcl_log("Itemstack2: " .. current_itemstack:to_string())
self.itemstring = current_itemstack:to_string()
end
end
end
--Add in, and delete
if taken_items then
mcl_log("Saving")
mcl_entity_invs.save_inv(ent)
return taken_items
else
mcl_log("No need to save")
end
end
end
end
return false
end
minetest.register_entity(":__builtin:item", {
initial_properties = {
hp_max = 1,
physical = true,
collide_with_objects = false,
collisionbox = {-0.3, -0.3, -0.3, 0.3, 0.3, 0.3},
collisionbox = { -0.3, -0.3, -0.3, 0.3, 0.3, 0.3 },
pointable = false,
visual = "wielditem",
visual_size = {x = 0.4, y = 0.4},
textures = {""},
spritediv = {x = 1, y = 1},
initial_sprite_basepos = {x = 0, y = 0},
visual_size = { x = 0.4, y = 0.4 },
textures = { "" },
spritediv = { x = 1, y = 1 },
initial_sprite_basepos = { x = 0, y = 0 },
is_visible = false,
infotext = "",
},
@ -424,11 +560,11 @@ minetest.register_entity(":__builtin:item", {
if vel and vel.x == 0 and vel.z == 0 and self.random_velocity > 0 then
local v = self.random_velocity
local x = math.random(5, 10) / 10 * v
if math.random(0,10) < 5 then x = -x end
if math.random(0, 10) < 5 then x = -x end
local z = math.random(5, 10) / 10 * v
if math.random(0,10) < 5 then z = -z end
local y = math.random(2,4)
self.object:set_velocity({x=x, y=y, z=z})
if math.random(0, 10) < 5 then z = -z end
local y = math.random(2, 4)
self.object:set_velocity(vector.new(x, y, z))
end
self.random_velocity = 0
end,
@ -456,7 +592,7 @@ minetest.register_entity(":__builtin:item", {
local max_count = stack:get_stack_max()
if count > max_count then
count = max_count
self.itemstring = stack:get_name().." "..max_count
self.itemstring = stack:get_name() .. " " .. max_count
end
local itemtable = stack:to_table()
local itemname = nil
@ -477,9 +613,9 @@ minetest.register_entity(":__builtin:item", {
local prop = {
is_visible = true,
visual = "wielditem",
textures = {itemname},
visual_size = {x = s, y = s},
collisionbox = {-c, -c, -c, c, c, c},
textures = { itemname },
visual_size = { x = s, y = s },
collisionbox = { -c, -c, -c, c, c, c },
automatic_rotate = math.pi * 0.5,
infotext = description,
glow = glow,
@ -575,9 +711,9 @@ minetest.register_entity(":__builtin:item", {
self._forcestart = nil
self._forcetimer = 0
self.object:set_armor_groups({immortal = 1})
-- self.object:set_velocity({x = 0, y = 2, z = 0})
self.object:set_acceleration({x = 0, y = -get_gravity(), z = 0})
self.object:set_armor_groups({ immortal = 1 })
-- self.object:set_velocity(vector.new(0, 2, 0))
self.object:set_acceleration(vector.new(0, -get_gravity(), 0))
self:set_item(self.itemstring)
end,
@ -590,9 +726,9 @@ minetest.register_entity(":__builtin:item", {
local stack = ItemStack(entity.itemstring)
local name = stack:get_name()
if own_stack:get_name() ~= name or
own_stack:get_meta() ~= stack:get_meta() or
own_stack:get_wear() ~= stack:get_wear() or
own_stack:get_free_space() == 0 then
own_stack:get_meta() ~= stack:get_meta() or
own_stack:get_wear() ~= stack:get_wear() or
own_stack:get_free_space() == 0 then
-- Can not merge different or full stack
return false
end
@ -625,8 +761,8 @@ minetest.register_entity(":__builtin:item", {
self.object:set_properties({
physical = false
})
self.object:set_velocity({x=0,y=0,z=0})
self.object:set_acceleration({x=0,y=0,z=0})
self.object:set_velocity(vector.zero())
self.object:set_acceleration(vector.zero())
return
end
self.age = self.age + dtime
@ -641,15 +777,22 @@ minetest.register_entity(":__builtin:item", {
-- Delete corrupted item entities. The itemstring MUST be non-empty on its first step,
-- otherwise there might have some data corruption.
if self.itemstring == "" then
minetest.log("warning", "Item entity with empty itemstring found at "..minetest.pos_to_string(self.object:get_pos()).. "! Deleting it now.")
minetest.log("warning",
"Item entity with empty itemstring found at " .. minetest.pos_to_string(self.object:get_pos()) ..
"! Deleting it now.")
self._removed = true
self.object:remove()
return
end
local p = self.object:get_pos()
local node = minetest.get_node_or_nil(p)
local in_unloaded = (node == nil)
-- If hopper has taken item, it has gone, and no operations should be conducted on this item
if hopper_take_item(self, p) then
return
end
local node = minetest.get_node(p)
local in_unloaded = node.name == "ignore"
if in_unloaded then
-- Don't infinetly fall into unloaded map
@ -659,27 +802,27 @@ minetest.register_entity(":__builtin:item", {
if self.is_clock then
self.object:set_properties({
textures = {"mcl_clock:clock_" .. (mcl_worlds.clock_works(p) and mcl_clock.old_time or mcl_clock.random_frame)}
textures = { "mcl_clock:clock_" .. (mcl_worlds.clock_works(p) and mcl_clock.old_time or mcl_clock.random_frame) }
})
end
local nn = node.name
local is_in_water = (minetest.get_item_group(nn, "liquid") ~= 0)
local nn_above = minetest.get_node({x=p.x, y=p.y+0.1, z=p.z}).name
local nn_above = minetest.get_node(vector.offset(p, 0, 0.1, 0)).name
-- make sure it's more or less stationary and is at water level
local sleep_threshold = 0.3
local is_floating = false
local is_stationary = math.abs(self.object:get_velocity().x) < sleep_threshold
and math.abs(self.object:get_velocity().y) < sleep_threshold
and math.abs(self.object:get_velocity().z) < sleep_threshold
and math.abs(self.object:get_velocity().y) < sleep_threshold
and math.abs(self.object:get_velocity().z) < sleep_threshold
if is_in_water and is_stationary then
is_floating = (is_in_water
and (minetest.get_item_group(nn_above, "liquid") == 0))
end
if is_floating and self.physical_state == true then
self.object:set_velocity({x = 0, y = 0, z = 0})
self.object:set_acceleration({x = 0, y = 0, z = 0})
self.object:set_velocity(vector.zero())
self.object:set_acceleration(vector.zero())
disable_physics(self.object, self)
end
-- If no collector was found for a long enough time, declare the magnet as disabled
@ -699,7 +842,7 @@ minetest.register_entity(":__builtin:item", {
--Wait 2 seconds to allow mob drops to be cooked, & picked up instead of instantly destroyed.
if self.age > 2 and minetest.get_item_group(self.itemstring, "fire_immune") == 0 then
if dg ~= 2 then
minetest.sound_play("builtin_item_lava", {pos = self.object:get_pos(), gain = 0.5})
minetest.sound_play("builtin_item_lava", { pos = self.object:get_pos(), gain = 0.5 })
end
self._removed = true
self.object:remove()
@ -739,7 +882,7 @@ minetest.register_entity(":__builtin:item", {
end
-- Check which one of the 4 sides is free
for o=1, #order do
for o = 1, #order do
local nn = minetest.get_node(vector.add(p, order[o])).name
local def = minetest.registered_nodes[nn]
if def and def.walkable == false and nn ~= "ignore" then
@ -749,7 +892,7 @@ minetest.register_entity(":__builtin:item", {
end
-- If none of the 4 sides is free, shoot upwards
if shootdir == nil then
shootdir = { x=0, y=1, z=0 }
shootdir = vector.new(0, 1, 0)
local nn = minetest.get_node(vector.add(p, shootdir)).name
if nn == "ignore" then
-- Do not push into ignore
@ -759,7 +902,7 @@ minetest.register_entity(":__builtin:item", {
-- Set new item moving speed accordingly
local newv = vector.multiply(shootdir, 3)
self.object:set_acceleration({x = 0, y = 0, z = 0})
self.object:set_acceleration(vector.zero())
self.object:set_velocity(newv)
disable_physics(self.object, self, false, false)
@ -781,10 +924,10 @@ minetest.register_entity(":__builtin:item", {
if self._forcetimer > 0 then
local cbox = self.object:get_properties().collisionbox
local ok = false
if self._force.x > 0 and (p.x > (self._forcestart.x + 0.5 + (cbox[4] - cbox[1])/2)) then ok = true
elseif self._force.x < 0 and (p.x < (self._forcestart.x + 0.5 - (cbox[4] - cbox[1])/2)) then ok = true
elseif self._force.z > 0 and (p.z > (self._forcestart.z + 0.5 + (cbox[6] - cbox[3])/2)) then ok = true
elseif self._force.z < 0 and (p.z < (self._forcestart.z + 0.5 - (cbox[6] - cbox[3])/2)) then ok = true end
if self._force.x > 0 and (p.x > (self._forcestart.x + 0.5 + (cbox[4] - cbox[1]) / 2)) then ok = true
elseif self._force.x < 0 and (p.x < (self._forcestart.x + 0.5 - (cbox[4] - cbox[1]) / 2)) then ok = true
elseif self._force.z > 0 and (p.z > (self._forcestart.z + 0.5 + (cbox[6] - cbox[3]) / 2)) then ok = true
elseif self._force.z < 0 and (p.z < (self._forcestart.z + 0.5 - (cbox[6] - cbox[3]) / 2)) then ok = true end
-- Item was successfully forced out. No more pushing
if ok then
self._forcetimer = -1
@ -815,7 +958,7 @@ minetest.register_entity(":__builtin:item", {
-- Set new item moving speed into the direciton of the liquid
local newv = vector.multiply(vec, f)
-- Swap to acceleration instead of a static speed to better mimic MC mechanics.
self.object:set_acceleration({x = newv.x, y = -0.22, z = newv.z})
self.object:set_acceleration(vector.new(newv.x, -0.22, newv.z))
self.physical_state = true
self._flowing = true
@ -828,9 +971,10 @@ minetest.register_entity(":__builtin:item", {
local cur_vec = self.object:get_velocity()
-- apply some acceleration in the opposite direction so it doesn't slide forever
local vec = {
x = 0 -cur_vec.x*0.9,
y = 3 -cur_vec.y*0.9,
z = 0 -cur_vec.z*0.9}
x = 0 - cur_vec.x * 0.9,
y = 3 - cur_vec.y * 0.9,
z = 0 - cur_vec.z * 0.9
}
self.object:set_acceleration(vec)
-- slow down the item in water
local vel = self.object:get_velocity()
@ -854,20 +998,20 @@ minetest.register_entity(":__builtin:item", {
end
-- If node is not registered or node is walkably solid and resting on nodebox
local nn = minetest.get_node({x=p.x, y=p.y-0.5, z=p.z}).name
local nn = minetest.get_node(vector.offset(p, 0, -0.5, 0)).name
local def = minetest.registered_nodes[nn]
local v = self.object:get_velocity()
local is_on_floor = def and (def.walkable
and not def.groups.slippery and v.y == 0)
if not minetest.registered_nodes[nn]
or is_floating or is_on_floor then
or is_floating or is_on_floor then
local own_stack = ItemStack(self.object:get_luaentity().itemstring)
-- Merge with close entities of the same item
for _, object in pairs(minetest.get_objects_inside_radius(p, 0.8)) do
local obj = object:get_luaentity()
if obj and obj.name == "__builtin:item"
and obj.physical_state == false then
and obj.physical_state == false then
if self:try_merge_with(own_stack, object, obj) then
return
end

View File

@ -770,8 +770,9 @@ register_minecart(
},
"mcl_minecarts_minecart_hopper.png",
{"mcl_minecarts:minecart", "mcl_hoppers:hopper"},
nil, nil, false
nil, nil, true
)
mcl_entity_invs.register_inv("mcl_minecarts:hopper_minecart", "Hopper Minecart", 5, false, true)
-- Minecart with TNT
register_minecart(
@ -839,16 +840,14 @@ minetest.register_craft({
},
})
-- TODO: Re-enable crafting of special minecarts when they have been implemented
--[[minetest.register_craft({
minetest.register_craft({
output = "mcl_minecarts:hopper_minecart",
recipe = {
{"mcl_hoppers:hopper"},
{"mcl_minecarts:minecart"},
},
})
--]]
minetest.register_craft({
output = "mcl_minecarts:chest_minecart",
@ -863,5 +862,4 @@ if has_mcl_wip then
mcl_wip.register_wip_item("mcl_minecarts:chest_minecart")
mcl_wip.register_wip_item("mcl_minecarts:furnace_minecart")
mcl_wip.register_wip_item("mcl_minecarts:command_block_minecart")
mcl_wip.register_wip_item("mcl_minecarts:hopper_minecart")
end

View File

@ -0,0 +1,36 @@
# textdomain: mcl_minecarts
Minecart=トロッコ
Minecarts can be used for a quick transportion on rails.=トロッコは、レールを使った高速輸送を可能にします。
Minecarts only ride on rails and always follow the tracks. At a T-junction with no straight way ahead, they turn left. The speed is affected by the rail type.=トロッコはレール上にしか乗らない為、常に線路に沿って走ります。直進できない丁字路では、取り敢えず左折します。速度はレールの種類によって異なります。
You can place the minecart on rails. Right-click it to enter it. Punch it to get it moving.=レールの上にトロッコを置けます。右クリックで乗り込みます。パンチすると動き出します。
To obtain the minecart, punch it while holding down the sneak key.=トロッコを入手するには、スニークキーを押しながらパンチします。
A minecart with TNT is an explosive vehicle that travels on rail.=TNT付きトロッコは、レール上を行きかう爆薬車両です。
Place it on rails. Punch it to move it. The TNT is ignited with a flint and steel or when the minecart is on an powered activator rail.=レール上に配置。パンチで移動。TNTが着火するのは、火打石と打金を使った時か、稼動中のアクティベーターレール上にトロッコが乗った時です。
To obtain the minecart and TNT, punch them while holding down the sneak key. You can't do this if the TNT was ignited.=トロッコとTNTを入手するには、スニークキーを押しながらパンチしてください。TNTに火が着いていた場合は、無理です。
A minecart with furnace is a vehicle that travels on rails. It can propel itself with fuel.=かまど付きトロッコは、レール上を走行する車両です。燃料で自走できます。
Place it on rails. If you give it some coal, the furnace will start burning for a long time and the minecart will be able to move itself. Punch it to get it moving.=レールの上に置きます。石炭を与えると、かまどが長時間燃え続け、トロッコが自走可能になります。パンチすると動き出します。
To obtain the minecart and furnace, punch them while holding down the sneak key.=トロッコとかまどを入手するには、スニークキーを押しながらパンチします。
Minecart with Chest=チェスト付きトロッコ
Minecart with Furnace=かまど付きトロッコ
Minecart with Command Block=コマンドブロック付きトロッコ
Minecart with Hopper=ホッパー付きトロッコ
Minecart with TNT=TNT付きトロッコ
Place them on the ground to build your railway, the rails will automatically connect to each other and will turn into curves, T-junctions, crossings and slopes as needed.=地面に置いて線路を作ると、レール同士が自動的につながり、必要に応じてカーブや丁字路、踏切、坂道などに変化します。
Rail=レール
Rails can be used to build transport tracks for minecarts. Normal rails slightly slow down minecarts due to friction.=レールを利用して、トロッコの輸送路が敷けます。普通のレールは、摩擦の関係でトロッコが少しずつ減速していきます。
Powered Rail=パワードレール
Rails can be used to build transport tracks for minecarts. Powered rails are able to accelerate and brake minecarts.=レールを利用して、トロッコの輸送路が敷けます。パワードレールは、トロッコを加速させたり、ブレーキをかけたりできます。
Without redstone power, the rail will brake minecarts. To make this rail accelerate minecarts, power it with redstone power.=レッドストーン動力なしだと、このレールはトロッコにブレーキをかけます。このレールでトロッコを加速させるには、レッドストーン動力を供給してください。
Activator Rail=アクティベーターレール
Rails can be used to build transport tracks for minecarts. Activator rails are used to activate special minecarts.=レールを利用して、トロッコの輸送路が敷けます。アクティベーターレールは、特殊なトロッコを作動させるために使われます。
To make this rail activate minecarts, power it with redstone power and send a minecart over this piece of rail.=このレールでトロッコを作動させるには、レッドストーン動力を与えたレール上にトロッコを送り込みます。
Detector Rail=
Rails can be used to build transport tracks for minecarts. A detector rail is able to detect a minecart above it and powers redstone mechanisms.=レールを利用して、トロッコの輸送路が敷けます。ディテクターレールは、その上にあるトロッコを検知でき、その際レッドストーン機構の動力源となります。
To detect a minecart and provide redstone power, connect it to redstone trails or redstone mechanisms and send any minecart over the rail.=トロッコを検知してレッドストーン動力を供給するには、レッドストーン導線またはレッドストーン機構に接続し、任意のトロッコをレール上に送り込みます。
Track for minecarts=トロッコ用の線路
Speed up when powered, slow down when not powered=稼動中は加速、非稼動中は減速
Activates minecarts when powered=稼動中はトロッコを作動
Emits redstone power when a minecart is detected=トロッコを検知するとレッドストーン動力を放出
Vehicle for fast travel on rails=レール上を快速移動するための車両
Can be ignited by tools or powered activator rail=道具や稼動中のアクティベーターレールにより着火が可能
Sneak to dismount=スニークで降りる

Some files were not shown because too many files have changed in this diff Show More