26 Commits

Author SHA1 Message Date
Aaron Suen
55efdfa027 Fire ambiance consolidation
- Fire flame and torch flame use the same ambiance def via
  a new flame_ambiance group.
- Items can now emit ambiance via AISM.
2020-05-26 18:48:03 -04:00
Aaron Suen
25be3b07a8 Small pos key calc optimization. 2020-01-10 21:11:52 -05:00
Aaron Suen
b9e2f822f8 New flexible find_nodes_around api. 2019-11-30 10:28:35 -05:00
Aaron Suen
31bcefd842 Invert flammable/igniter checks.
This should improve game efficiency/smoothness when
a lot of flammable stuff is present but there are no
corresponding massive fires.

This seems to address runtime jitter issues noticed
after placing hundreds of coal nodes inside a forest.
2019-11-28 13:04:35 -05:00
Aaron Suen
0a29fd34e9 Clean up sound handling, fix floating point timers. 2019-10-01 19:24:39 -04:00
Aaron Suen
8aa95d1f61 Merge branch 'dev' into torch 2019-10-01 18:24:39 -04:00
GreenXenith
7647eb547a Add torches 2019-09-14 18:05:29 -07:00
Aaron Suen
8d850980d1 Try removing sparks on collision.
Didn't look right with sparks going through glass, and still
didn't look right having sparks hit glass and go sliding off
to the side at constant velocity.
2019-09-14 19:11:54 -04:00
Aaron Suen
974f0c2672 Having sparks go through solid glass is a bit distracting. 2019-09-14 19:06:22 -04:00
Aaron Suen
afc4d408c7 For now, remove direction bias of fire sparks.
After much discussion about things like wind velocity, it was
concluded that many fires are indoors or underground, and the
check to see if they're out in the open is not worth the cost.
2019-09-14 19:03:40 -04:00
Aaron Suen
9b9b14b173 Standard battery of auto formatting and optimizing. 2019-09-14 18:27:06 -04:00
GreenXenith
da9dea607c Add fire spark particles 2019-09-14 14:42:29 -07:00
Aaron Suen
4b1488ed3f Hints system overhaul.
- Included new content.
- Partially converted to base on recipes instead of just items.
- Added support for group and toolcap checks.

Fixed a number of small bugs elsewhere in the process.
2019-04-03 07:41:27 -04:00
Aaron Suen
fbff15e2fe MAJOR fire api/logic rework.
- Expanded fire api, added "check" varieties of things that also
  perform relevant checks for eligibility.  Standardized testing
  for ventilation.
- Snuff embers to coals as fuel.
- Fuel is consumed randomly by flames.  This means that fuel that
  are surrounded by flame burn out quicker, while flames
  surrounded by fuel consume fuel from each node slower.  This
  adds subtlety to furnace design for efficiency.
2019-03-31 20:54:38 -04:00
Aaron Suen
c09c8777e2 Fire ambiance.
This is the last currently known missing sound, finally.
2019-03-14 22:20:18 -04:00
Aaron Suen
9607bcc6a6 Start working on sounds, plus minor refinements.
- Clean up registered_* usage patterns.
- Reduce tendancy of leaves to create stack nodes.
  Now they tend to stack up properly in-world more often.
- Tweak damage system to create "headroom" where minor
  damage doesn't cost inv slots immediately.
- Make player hand skin color match model skin.
- Cleanup/unify grass abm logic.
- Start installing new sounds by MagikEh

Sound source:
  https://github.com/MagikEh/SoundsOfWarr
2019-03-13 23:51:59 -04:00
Aaron Suen
f893f613c3 API refinements.
- Make node match operate on only one of node or stack, depending
  on whether node defers to stack via is_stack_only.  This should
  hopefully prevent future pummel recipe issues.
- Add new core stack API.  Needs to be deployed in a lot of places.
- Start work on system for allowing flammable containers; they
  eject their potentially non-flammable contents.
2019-02-23 09:44:22 -05:00
Aaron Suen
d67f736ac5 Merge node_is into match. 2019-02-03 12:44:33 -05:00
Aaron Suen
37f5c0a0de Laid the groundwork for metal-working.
- Defined nodes, slabs, and prills of lode.
- Heating lode ore releases hot lode prills.
- Lode things in stack can air-cool to anneal or water-quench to
  harden/temper.  Cooling of placed nodes/slabs is planned.
- Hot items cannot be carried; picking them up causes damage and
  causes player to drop them.
2019-01-27 22:34:53 -05:00
Aaron Suen
aa69bca2b1 Fix fire not going out when completely immersed. 2019-01-23 23:16:03 -05:00
Aaron Suen
d61b50bf91 Lava starts fires, water douses them. 2019-01-23 23:06:06 -05:00
Aaron Suen
464a0e1d89 Finite fire rework.
- There are now 6 degrees of embers.  Better fuel sources will
  make better embers.
- Embers differ only in lifespan; each class lasts twice as long
  as the previous.  Top-grade fuels may last 15 minutes or
  longer.
- Embers decay stochastically.
- Embers decay 16x as fast when smothered, but still go through
  the same lifecycle.

Also:
- Plain ash now reposes.

There are no infinite fuel sources, nor are any specifically
planned at this time.
2019-01-17 00:01:00 -05:00
Aaron Suen
195a6a2f7f Added grass spread/decay.
Not super-important right now, but it was getting annoying.
2019-01-06 15:09:59 -05:00
Aaron Suen
f9abfc5e22 Fire refinements.
- Make some more materials flammable.

- Flammable items in stack form burn up too.

- Some items burn away without converting into fuel.
2019-01-06 14:51:09 -05:00
Aaron Suen
4440e1f0b8 Sticks burn up in presence of fire. 2019-01-06 14:26:27 -05:00
Aaron Suen
62f0db49e0 Fire mod is now basically functional.
"Qualitative" fire now works, spreads, etc.

Rub 2 sticks/staves together to start a fire in nearby flammables.
2019-01-06 13:04:07 -05:00