Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Support damcon team control #12

Open
abrindam opened this issue Jan 10, 2016 · 2 comments
Open

Support damcon team control #12

abrindam opened this issue Jan 10, 2016 · 2 comments

Comments

@abrindam
Copy link
Owner

Will require displaying 3D model of ship and allowing user to interact with it.

jacobmaxfrank added a commit that referenced this issue Jan 11, 2016
abrindam pushed a commit that referenced this issue Jan 11, 2016
Give up on not checking in dependencies.

WIP on #12
jacobmaxfrank added a commit that referenced this issue Jan 11, 2016
…w/JFrame

- Moved existing UI down to mimic built-in engineering console and make
  room for damcon and other sliders
- The current process of creating a J3D Universe generates a Viewer
  which in turn generates its own JFrame (because it wasn't given a
  Canvas).  We need to figure out how the default canvas is generated,
  make one ourselves, and pass that through (WIP function checked in
  as well but it doesn't work). In the worst case, we might be able to
  pass the J3D JFrame through to the console manager and just reuse it.
jacobmaxfrank added a commit that referenced this issue Jan 12, 2016
@jacobmaxfrank jacobmaxfrank reopened this Jan 12, 2016
jacobmaxfrank added a commit that referenced this issue Jan 13, 2016
- Damcon's Canvas3D now gets keylisteners for sliders.  It was somehow
  intercepting them and no keys were getting through when the
  keylistener was added to the slider itself anymore (no idea why).
- Scrolling your middle mouse wheel (or trackpad) while hovering over a
  slider moves the slider (shift controls power/coolant the same was as
  it does for keyboard shortcuts).
jacobmaxfrank added a commit that referenced this issue Jan 13, 2016
- Also remove out-of-date comment
jacobmaxfrank added a commit that referenced this issue Jan 13, 2016
- Centralize key event dispatch.  The J3D window was stealing focus so
  while mouse events went to it (based on coordinates presumably), key
  events were not.  I made it not focusable and send key events out from
  UserInterfaceFrame (just to itself and to the sliders).
- Disallow overriding reserved keys
- Disallow duplicate key bindings
- Enforce that custom key bindings which override defaults also specify
  a new value for the overriden default key
- Document some of the above (still need reserved key documentation)
jacobmaxfrank added a commit that referenced this issue Jan 15, 2016
- Moved existing UI down to make more room for DAMCON 3D view
- New default camera view and minimum zoom radius
- Coolant stack now displayed next to sliders to save space; new layout logic
- New fonts and colors
jacobmaxfrank added a commit that referenced this issue Jan 16, 2016
jacobmaxfrank added a commit that referenced this issue Jan 16, 2016
- We really don't want to deal with window resizing right now!
jacobmaxfrank added a commit that referenced this issue Jan 16, 2016
- This can be used as an "on-hit" damage effect
jacobmaxfrank added a commit that referenced this issue Jan 17, 2016
abrindam pushed a commit that referenced this issue Jan 17, 2016
…, including graphical coordinates and which system they belong to
jacobmaxfrank added a commit that referenced this issue Jan 17, 2016
Also:
- Fix null check when client not loaded into console
- WIP picking (not yet functional)
- New wireframe transparency
- And much, much more!
abrindam pushed a commit that referenced this issue Jan 18, 2016
…ing will now cause damage which will be displayed in 3D model
abrindam pushed a commit that referenced this issue Jan 18, 2016
abrindam pushed a commit that referenced this issue Jan 18, 2016
abrindam pushed a commit that referenced this issue Jan 18, 2016
jacobmaxfrank added a commit that referenced this issue Jan 18, 2016
- Works for nodes, untested on DAMCON, not working for connections between
  nodes (and I'm not sure if it should)
- Some WIP stuff is marked with "TODO: > ", so please leave those
  around until I get the chance to clean them updatePos
- I've moved some TODOs around and added categories for them (several
  need to be made into issues)
jacobmaxfrank added a commit that referenced this issue Jan 18, 2016
- Hallway is actually the term for internal nodes without systems, hence
  the renaming
- Turns out you can't pick the inter-node connections in the real client
jacobmaxfrank added a commit that referenced this issue Jan 18, 2016
- I still haven't tested DAMCON selectability.  I'll try adding it to
  the FakeEngineeringConsoleManager if I have a chance.
- The DAMCON team rendering currently shares a Sphere with the internal
  nodes, but they should probably be a box or something.
- See TODOs for many other WIP/unimplemented features
jacobmaxfrank added a commit that referenced this issue Jan 19, 2016
- They only start showing up when you first change the power level,
  which presumably fires an onChange() console event. That's actually
  fine because it's good to test their addition.
- I don't see the DAMCON team moving; I assume that's not yet
  implemented.
- I made them blue temporarily.  They should have coloration similar to
  systems but have a box or billboard rather than a sphere as a model
  before I start using the same colors as the nodes.
- Also definitely need an onHover effect.  It's easy to know what you're
  hovering over, but without billboards, effects are going to be limited
  to changes in transparency or lighting.
- Whatever we do for "damcon team is selected" -- flashing or otherwise
  -- needs to be distinct from the on-hover effect.
jacobmaxfrank added a commit that referenced this issue Jan 30, 2016
Also refactored picking and appearance update
jacobmaxfrank added a commit that referenced this issue Jan 30, 2016
-Selectables spelling
-Added point light which follows camera
-Set material coloration on selected items for light reflection effect

Note that internal system nodes are currently selectable for testing; in
the next version only DAMCON teams are selectable.
jacobmaxfrank added a commit that referenced this issue Jan 30, 2016
- I haven't tested it on a live server yet
jacobmaxfrank added a commit that referenced this issue Jan 30, 2016
- DAMCON team movement orders seem to work, although the team then goes
  haywire shortly thereafter
- Selection when a DAMCON team shares a node location with a system is
  not yet fixed (picking should be only damcon teams when selected ==
  null and prioritize DAMCON teams when selected != null)
jacobmaxfrank added a commit that referenced this issue Jan 30, 2016
- DAMCON teams get first priority
- After that, the nearest node is picked
abrindam pushed a commit that referenced this issue Jan 31, 2016
jacobmaxfrank added a commit that referenced this issue Feb 15, 2016
- No more 3D shapes except as billboard hosts
- All new icons; reorganized art tree
- Cleanup camera rotation
- Manually point billboards at camera
- Remove lighting
jacobmaxfrank added a commit that referenced this issue Feb 16, 2016
- Generated sound with the following steps:
1) Install Audacity with FFMPEG 2.2.2 plugin (http://manual.audacityteam.org/o/man/faq_installation_and_plug_ins.html#ffdown).
2) Record and trim audio.
3) Export audio.  Select the AMR file type and 4.75 kbps bit rate.
4) Import AMR file into Audacity, then repeat (3).
5) Repeat (4) until there's enough distortion (I did just two rounds).
6) Export audio as Microsoft 16-bit WAV.

- Also extract hardcoded HUD icon paths
jacobmaxfrank added a commit that referenced this issue Feb 17, 2016
- Also added selection voice clips
- playSound is still around for immediately playing a sound; queueSound
  is used to play sounds in sequence with no overlap
@abrindam
Copy link
Owner Author

abrindam commented Aug 7, 2016

@jacobmaxfrank: Just fixed a crash due to 100% node health causing an index of 10 into the texture array, and we only have textures 0-9 current. Quick fix was to clamp possible indexes to max of 9, but this will cause health of 90-100% to be rendered the same color. May want to come up with a better solution.

@abrindam
Copy link
Owner Author

Remaining work:

  • Ability to toggle autonomous damcon teams
  • Ability to see number of team members per team (onHover?)
  • Number of available damcon teams
  • Ability to identify which system a node belongs to (onHover?)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants