Giter Site home page Giter Site logo

pakoito / squidlib Goto Github PK

View Code? Open in Web Editor NEW

This project forked from yellowstonegames/squidlib

0.0 2.0 0.0 123.2 MB

Useful tools for working with Grid World in Java Swing panels. Comments and suggestions are very welcome!

Home Page: http://squidpony.com

License: Apache License 2.0

JavaScript 0.05% CSS 0.73% Ruby 0.14% Java 99.07%

squidlib's Introduction

SquidLib is a Java library that provides a full featured toolbox for working with turn based games in Swing and libGDX.

SquidLib is used for Wyrm, Epigon, Attack the Geth, Assault Fish, and other projects.

Current Features:

###Ease Of Use

  • Standard GUI notation of (x,y) locations within the grid.
  • Uses Swing components
  • Any Font can be used
  • Images may be used alongside characters in same panel -- Characters can be used as a drop-in fallback mechanism!
  • Specify Grid and Font size multiple ways -- Set number of cells in the grid and Font to be used --- Size of cell is adjusted to optimally fit the Font size given -- Set size of the cell, number of cells in the grid, and Font to be used --- Font is dynamically resized to fit optimally within the cell
  • Font size and style can be changed on the fly
  • Multiple grids of different configurations can be used simultaneously in the same display
  • Multiple grids of different configurations can be overlayed allowing for transparency effects
  • Basic Swing animation support

###Lots of Color

  • Foreground and Background can be set individually on a per-cell basis
  • SColor class extends Color and can be used as a drop-in replacement for any awt.Color needs
  • SColor chooser included to visually select named and adjusted colors
  • Over 500 named colors
  • Automatic color caching minimizes memory overhead
  • Can get a list of colors that are a gradient between two colors
  • Can perform LIBTCOD style "dark", "light", and "desaturate" commands on any color
  • Can get an arbitrary amount of blend between two colors

###Roguelike Specific Toolkit

  • Robust Field of View and Line of Sight system

###Fully Documented API

  • Each named color has a sample of its appearance in the Javadoc against multiple backgrounds
  • HTML browsing of the API shows these samples
  • Pop-up javadoc in NetBeans and Eclipse show these samples
  • Demos of all functionality included

###Math Toolkit

  • Custom extension of Random allows drop-in replacement with added features
  • Able to find Bresenham Line for 2D and 3D coordinates. -- Also can use Wu or Elias Lines (antialiased Bresenham Lines)
  • Perlin noise implementation

GitHub repository: https://github.com/SquidPony/SquidLib

Blog updates: http://squidpony.com/not-games/squidlib/

Developed by Eben Howard - [email protected]

squidlib's People

Contributors

squidpony avatar tommyettinger avatar

Watchers

 avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.