Skip to content

Commit

Permalink
Removes duplicates
Browse files Browse the repository at this point in the history
  • Loading branch information
Ultimate-Fluff committed Jul 15, 2023
1 parent f9b27e0 commit fa162d8
Show file tree
Hide file tree
Showing 49 changed files with 70 additions and 0 deletions.
Binary file modified icons/effects/genetics.dmi
Binary file not shown.
Binary file modified icons/mob/hud/alien_standard.dmi
Binary file not shown.
Binary file modified icons/mob/hud/human_bronze.dmi
Binary file not shown.
Binary file modified icons/mob/hud/human_orange.dmi
Binary file not shown.
Binary file modified icons/mob/hud/screen1.dmi
Binary file not shown.
Binary file modified icons/mob/hud/talk.dmi
Binary file not shown.
Binary file modified icons/mob/humans/green_armors.dmi
Binary file not shown.
Binary file modified icons/mob/humans/human.dmi
Binary file not shown.
Binary file modified icons/mob/humans/onmob/belt.dmi
Binary file not shown.
Binary file modified icons/mob/humans/species/monkeys/onmob/suit_monkey_0.dmi
Binary file not shown.
Binary file modified icons/mob/humans/species/monkeys/onmob/uniform_monkey_0.dmi
Binary file not shown.
Binary file modified icons/obj/bodybag.dmi
Binary file not shown.
Binary file modified icons/obj/items/black_goo_stuff.dmi
Binary file not shown.
Binary file modified icons/obj/items/clothing/halloween_clothes.dmi
Binary file not shown.
Binary file modified icons/obj/items/food.dmi
Binary file not shown.
Binary file modified icons/obj/items/hunter/pred_gear.dmi
Binary file not shown.
Binary file modified icons/obj/items/weapons/guns/attachments/barrel.dmi
Binary file not shown.
Binary file modified icons/obj/items/weapons/guns/attachments/rail.dmi
Binary file not shown.
Binary file modified icons/obj/items/weapons/guns/attachments/stock.dmi
Binary file not shown.
Binary file modified icons/obj/items/weapons/guns/attachments/under.dmi
Binary file not shown.
Binary file modified icons/obj/items/weapons/guns/legacy/old_bayguns.dmi
Binary file not shown.
Binary file modified icons/obj/items/weapons/guns/legacy/old_cmguns.dmi
Binary file not shown.
Binary file modified icons/obj/structures/doors/mineral_doors.dmi
Binary file not shown.
Binary file modified icons/obj/structures/doors/prison_FOP/prison_hatches.dmi
Binary file not shown.
Binary file modified icons/obj/structures/machinery/computer3.dmi
Binary file not shown.
Binary file modified icons/obj/structures/machinery/cryogenics.dmi
Binary file not shown.
Binary file modified icons/obj/structures/machinery/shuttle-parts.dmi
Binary file not shown.
Binary file modified icons/obj/structures/machinery/vending.dmi
Binary file not shown.
Binary file modified icons/obj/structures/props/dam.dmi
Binary file not shown.
Binary file modified icons/obj/structures/props/fence.dmi
Binary file not shown.
Binary file modified icons/obj/structures/stairs/perspective_stairs_ice.dmi
Binary file not shown.
Binary file modified icons/obj/structures/stairs/perspective_stairs_kutjevo.dmi
Binary file not shown.
Binary file modified icons/old_stuff/Seasonal/xmas.dmi
Binary file not shown.
Binary file modified icons/rebase_icons.dmi
Binary file not shown.
Binary file modified icons/turf/area_strata.dmi
Binary file not shown.
Binary file modified icons/turf/floors/asphalt.dmi
Binary file not shown.
Binary file modified icons/turf/floors/concrete.dmi
Binary file not shown.
Binary file modified icons/turf/floors/desert_dirt.dmi
Binary file not shown.
Binary file modified icons/turf/floors/desert_rock.dmi
Binary file not shown.
Binary file modified icons/turf/floors/floors.dmi
Binary file not shown.
Binary file modified icons/turf/walls/bunker.dmi
Binary file not shown.
Binary file modified icons/turf/walls/dev/dev.dmi
Binary file not shown.
Binary file modified icons/turf/walls/floodgate.dmi
Binary file not shown.
Binary file modified icons/turf/walls/kutjevo/kutjevo.dmi
Binary file not shown.
Binary file modified icons/turf/walls/solaris/solaris.dmi
Binary file not shown.
Binary file modified icons/turf/walls/solaris/solaris_old.dmi
Binary file not shown.
Binary file modified icons/turf/walls/strata_outpost.dmi
Binary file not shown.
Binary file modified icons/turf/walls/windows.dmi
Binary file not shown.
70 changes: 70 additions & 0 deletions tools/dmi/duplicate_icon_states.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,70 @@
import os
import sys
from dmi import *


def green(text):
return "\033[32m" + str(text) + "\033[0m"


def red(text):
return "\033[31m" + str(text) + "\033[0m"


def _self_test():
# test: can we load every DMI in the tree
count = 0
failed = 0
for dirpath, dirnames, filenames in os.walk('.'):
if '.git' in dirnames:
dirnames.remove('.git')
for filename in filenames:
if filename.endswith('.dmi'):
fullpath = os.path.join(dirpath, filename)
failures_this_file = 0
try:
dmi = Dmi.from_file(fullpath)
dmi_states = dmi.states
number_of_icon_states = len(dmi.states)
if number_of_icon_states > 512:
print("{0} {1} has too many icon states: {2}/512.".format(red("FAIL"), fullpath, number_of_icon_states))
failures_this_file += 1
existing_states = []
for state in dmi_states:
state_name = state.name
if state.movement:
state_name += "_MOVEMENT_STATE_TRUE"
if state_name in existing_states:
print("{0} {1} has a duplicate state '{2}'.".format(red("FAIL"), fullpath, state.name))
failures_this_file += 1
continue
existing_states.append(state_name)
except Exception:
print("{0} {1} threw an exception.".format(red("FAIL"), fullpath))
failures_this_file += 1
raise
count += 1
if failures_this_file > 0:
failed += 1

print(f"{os.path.relpath(__file__)}: {green(f'successfully parsed {count-failed} .dmi files')}")
if failed > 0:
print(f"{os.path.relpath(__file__)}: {red(f'failed to parse {failed} .dmi files')}")
exit(1)


def _usage():
print(f"Usage:")
print(f" tools{os.sep}bootstrap{os.sep}python -m {__spec__.name}")
exit(1)


def _main():
if len(sys.argv) == 1:
return _self_test()

return _usage()


if __name__ == '__main__':
_main()

0 comments on commit fa162d8

Please sign in to comment.