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

Feature/shield #102

Merged
merged 47 commits into from
Apr 4, 2021
Merged

Feature/shield #102

merged 47 commits into from
Apr 4, 2021

Conversation

Thrifinesma
Copy link
Contributor

@Thrifinesma Thrifinesma commented Mar 19, 2021

This is the prototype implementation of #88.

Now you can set Shield (Prototype) for any TechnoType.
in rulesmd.ini

[SOMETECHNO]	            ; TechnoTypes
Shield.Strength=0           ; integer, the Shield Prototype functions if this value is set greater than 0.
Shield.Armor=none           ; armortype, determines which armor the shield is
Shield.SelfHealing=0.0      ; double, determines self healing rate for the shield. 0.0 disables self healing
                            ; 1%-100% recovers the shield strength in percentage
                            ; other number recovers the shield strength directly
                            ; a negative number deducts the shield strength.
Shield.SelfHealing.Rate=0.0 ; double - minutes, determines the frequency of self healing in minutes.
                            ; 0.0 instantly recovers the shield.
Shield.Respawn=0.0          ; double, determines the shield strength when the shield respawns. 0.0 disables shield respawn
                            ; 1%-100% respawns the shield at its strength in percentage
                            ; other number respawns the shield at the given strength directly.
Shield.Respawn.Rate=0.0     ; double - minutes,  determines the frequency of shield respawn in minutes.
                            ; 0.0 instantly respawns the shield.
Shield.Image.Normal=        ; animation, determines shield animation, required LoopCount=-1 for the anim.
                            ; If you are creating a chain of animations using the Next= tag then last animation must have LoopCount=-1 set
Shield.Image.Breaking=      ; animation, determines destroy animation of the shield. 
                            ; This anim should exist shorter than the respawn rate (if set) to create the anim normally.

In addition, a TechnoType with a Shield will show its Shield Strength. An empty shield strength bar will be left after destroyed if it is respawnable.
Buildings now uses the 5th frame of pips.shp to display the shield strength while other units uses the 16th frame (original pips.shp does not have a blue hp pip).
The frame selection of pips.shp will be customizable in the future to display the shield strength.
Pipbrd.shp will use its 4th frame to display an infantry's shield strength and the 3th frame for other units if pipbrd.shp has extra 2 frames.

@Thrifinesma Thrifinesma linked an issue Mar 20, 2021 that may be closed by this pull request
@Thrifinesma Thrifinesma added Feature / Enhancement Anything new not present in vanilla/Ares New / Enhanced Logic Significant stuff that wasn't present in engine and needs to be coded from scratch labels Mar 20, 2021
@Thrifinesma Thrifinesma force-pushed the feature/shield branch 2 times, most recently from 6799f27 to c743eb9 Compare March 23, 2021 02:18
@Phobos-developers Phobos-developers deleted a comment from github-actions bot Mar 23, 2021
@github-actions
Copy link

github-actions bot commented Mar 23, 2021

Nightly build for this pull request:

@Thrifinesma Thrifinesma force-pushed the feature/shield branch 3 times, most recently from a311f64 to 804f29d Compare March 29, 2021 04:07
@Thrifinesma Thrifinesma force-pushed the feature/shield branch 3 times, most recently from 90dc802 to e6dc536 Compare April 3, 2021 14:51
@Thrifinesma Thrifinesma merged commit 8f925c0 into develop Apr 4, 2021
@Metadorius Metadorius deleted the feature/shield branch April 4, 2021 14:12
Otamaa added a commit to Otamaa/Phobos that referenced this pull request Apr 10, 2021
Losslessly compressed all PNGs and ...
Remover ExifTags

Update Debug.cpp - Update #include

Update Macro.h

Update Hooks.BugFixes.cpp - Replace HOOK to LJMP

Crit System

Docs & better tag names


Fix loader blowfish.dll (Phobos-developers#119)

* Fix Blowfish.dll Loader

* Fix spelling and clarify docs a bit

Co-authored-by: Kerbiter <crabiter@vivaldi.net>
Fix

The [GlobalControls]->DebugKeysEnabled value was ignored by the game
Allow size = 0 for map previews

Change crit judgment basis and Crit.AnimList will replace AnimList

Reverse the comparison of crit


Add a zero check for RadLevelDelay

Fix AffectsHouse issue

TerrainTypeExt, customizable ore drills implemented

Co-Authored-By: Uranusian <Mikesariitten@gmail.com>
Feature/shield (Phobos-developers#102)

* implement #issue 88 shield logic
Co-authored-by: secsome <302702960@qq.com>
Co-authored-by: Meta (X230T) <crabiter@vivaldi.net>
Feature/capture manager improvement (Phobos-developers#133)


Tag rename and defval change; increment version



disable the hook for Build-9 currently

so no more bug fix in this build :(
Fix hooks issues about CaptureManager

refactor credits


fix pTarget->MindControlledBy

Fix Shield ResponseAttack issue

change position of Shield TemporalCheck

fix some issues


update funding


Fix hook issue about Rad

Generate .editorconfig to keep consistent code style


Fixed anim bug when deploying into structure (Phobos-developers#139)

Co-authored-by: Meta (X230T) <crabiter@vivaldi.net>
Allow to warn player when low harvester (Phobos-developers#143)

* Allow to warn player when low harvester

* Change the behavior
Increment version


infinite mc fixed


Fix Rad crashes


Fix MultiMCReleaseVictim issue

Vanilla Bugfix: Damage=1 InfiniteMindControl will now really InfiniteMindControl


dummy commit

Compile bug fix & placeholders


disable hook
Implement SpawnsTiberium.GrowthStage

Accepts either one value or a range (lower bound, higher bound)
Initial commit

Action 73,0 was created in mind for Aircrafts but could be used in other scenarios. It prevents a very weird bug that makes the AI aircraft going up & down in loop in the helipad.
Check current status of the units

Ignored dead or limboed units.
Proper way to fix DeployToFire

Tag deprecated for now
Shield of IronCurtained unit won't absorb damage anymore

Change TerrainTypes' Body hooks size

Correct the message of NextIdleHarvester

Fixes & improvements


DeployToFire fix now works properly


Refactor stuff

Moving things to where they belong
Implement Developer Warning function


try to introduce issue templates


move the folder to where it should be


Mention GrowthStage in docs
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Feature / Enhancement Anything new not present in vanilla/Ares New / Enhanced Logic Significant stuff that wasn't present in engine and needs to be coded from scratch
Projects
None yet
Development

Successfully merging this pull request may close these issues.

[Feature] Shield Logic
3 participants