/Quark

A framework for game development

Primary LanguageC#

#Quark Framework

Build Status

Quark is both a design pattern for developing in game interactions in a behavioral fashion for action based games and a framework built on top of Unity that incorporates the pattern.

An example action that deals 10 damage to the nearest object:

public class BoomSpell : Spell
{
	public override TargetMacro TargetMacro {
		get {
			return new NearestCharacter(5);
		}
	}

	protected override EffectCollection<ICastContext> TargetingDoneEffects {
		get {
			return new EffectCollection<ICastContext> {
				new DamageEffect (10)
			};
		}
	}
}

List of features

Currently, the following features of Quark are present in the framework:

Installation / Using

There is no actual installation, you can simply build the project and include Quark.dll as an asset in your Quark game, or just run the to-be-provided Quark.unityasset file.

For usage part, if you used the Unity Asset way, it is easy. Simply drag the Quark.Main prefab to your hierarchy and your scene is ready to use Quark.

If you included the dll, you should create a Quark.Main object. For details, please refer to this article

Contribute

Source and issues of Quark are held in this GitHub repository.

Support

If you need help, you can use the GitHub issues or send me an email

License

Quark is licensed under Apache V2 License.