From ad66434cc7cedc6f2f95048d715ed9aa2bdc19f3 Mon Sep 17 00:00:00 2001 From: UndeadMaelys Date: Fri, 19 Mar 2021 05:13:44 +0100 Subject: [PATCH] camera now works as in any RTS game :D project officially turned into RTS. sprites formatted some. enums. --- .../Rampart/RampartSpriteSheet10.png | Bin 0 -> 360 bytes .../Rampart/RampartSpriteSheet11.png | Bin 0 -> 446 bytes .../Rampart/RampartSpriteSheet12.png | Bin 0 -> 96 bytes .../Rampart/RampartSpriteSheet13.png | Bin 0 -> 446 bytes .../Rampart/RampartSpriteSheet14.png | Bin 0 -> 531 bytes .../Rampart/RampartSpriteSheet15.png | Bin 0 -> 662 bytes .../Rampart/RampartSpriteSheet16.png | Bin 0 -> 525 bytes .../Rampart/RampartSpriteSheet17.png | Bin 0 -> 662 bytes .../Rampart/RampartSpriteSheet18.png | Bin 0 -> 96 bytes .../Rampart/RampartSpriteSheet19.png | Bin 0 -> 515 bytes .../Rampart/RampartSpriteSheet20.png | Bin 0 -> 642 bytes .../Rampart/RampartSpriteSheet21.png | Bin 0 -> 542 bytes .../Rampart/RampartSpriteSheet22.png | Bin 0 -> 560 bytes .../Rampart/RampartSpriteSheet23.png | Bin 0 -> 638 bytes .../Rampart/RampartSpriteSheet24.png | Bin 0 -> 96 bytes .../Rampart/RampartSpriteSheet25.png | Bin 0 -> 533 bytes .../Rampart/RampartSpriteSheet26.png | Bin 0 -> 680 bytes .../Rampart/RampartSpriteSheet27.png | Bin 0 -> 711 bytes .../Rampart/RampartSpriteSheet28.png | Bin 0 -> 609 bytes .../Rampart/RampartSpriteSheet29.png | Bin 0 -> 615 bytes .../Rampart/RampartSpriteSheet30.png | Bin 0 -> 96 bytes .../Rampart/RampartSpriteSheet31.png | Bin 0 -> 416 bytes .../Rampart/RampartSpriteSheet32.png | Bin 0 -> 499 bytes .../Rampart/RampartSpriteSheet33.png | Bin 0 -> 547 bytes .../Rampart/RampartSpriteSheet34.png | Bin 0 -> 559 bytes .../Rampart/RampartSpriteSheet35.png | Bin 0 -> 634 bytes .../Rampart/RampartSpriteSheet36.png | Bin 0 -> 96 bytes .../Rampart/RampartSpriteSheet37.png | Bin 0 -> 501 bytes .../Rampart/RampartSpriteSheet38.png | Bin 0 -> 634 bytes .../Rampart/RampartSpriteSheet39.png | Bin 0 -> 650 bytes .../Rampart/RampartSpriteSheet40.png | Bin 0 -> 577 bytes .../Rampart/RampartSpriteSheet41.png | Bin 0 -> 691 bytes .../Rampart/RampartSpriteSheet42.png | Bin 0 -> 638 bytes .../Rampart/RampartSpriteSheet43.png | Bin 0 -> 513 bytes .../Rampart/RampartSpriteSheet44.png | Bin 0 -> 577 bytes .../Rampart/RampartSpriteSheet45.png | Bin 0 -> 586 bytes .../Rampart/RampartSpriteSheet46.png | Bin 0 -> 600 bytes .../Rampart/RampartSpriteSheet47.png | Bin 0 -> 607 bytes .../Rampart/RampartSpriteSheet48.png | Bin 0 -> 370 bytes .../Rampart/RampartSpriteSheet49.png | Bin 0 -> 214 bytes .../Rampart/RampartSpriteSheet50.png | Bin 0 -> 211 bytes .../Rampart/RampartSpriteSheet51.png | Bin 0 -> 242 bytes .../Rampart/RampartSpriteSheet52.png | Bin 0 -> 198 bytes .../Rampart/RampartSpriteSheet53.png | Bin 0 -> 233 bytes .../Rampart/RampartSpriteSheet54.png | Bin 0 -> 258 bytes .../Rampart/RampartSpriteSheet55.png | Bin 0 -> 386 bytes .../Rampart/RampartSpriteSheet56.png | Bin 0 -> 455 bytes .../Rampart/RampartSpriteSheet57.png | Bin 0 -> 477 bytes .../Rampart/RampartSpriteSheet58.png | Bin 0 -> 556 bytes .../Rampart/RampartSpriteSheet59.png | Bin 0 -> 585 bytes .../Rampart/RampartSpriteSheet60.png | Bin 0 -> 96 bytes .../Rampart/RampartSpriteSheet61.png | Bin 0 -> 470 bytes .../Rampart/RampartSpriteSheet62.png | Bin 0 -> 603 bytes .../Rampart/RampartSpriteSheet63.png | Bin 0 -> 696 bytes .../Rampart/RampartSpriteSheet64.png | Bin 0 -> 610 bytes .../Rampart/RampartSpriteSheet65.png | Bin 0 -> 632 bytes .../Rampart/RampartSpriteSheet66.png | Bin 0 -> 96 bytes .../Rampart/RampartSpriteSheet67.png | Bin 0 -> 598 bytes .../Rampart/RampartSpriteSheet68.png | Bin 0 -> 730 bytes .../Rampart/RampartSpriteSheet69.png | Bin 0 -> 637 bytes .../Rampart/RampartSpriteSheet7.png | Bin 0 -> 389 bytes .../Rampart/RampartSpriteSheet70.png | Bin 0 -> 682 bytes .../Rampart/RampartSpriteSheet71.png | Bin 0 -> 758 bytes .../Rampart/RampartSpriteSheet72.png | Bin 0 -> 96 bytes .../Rampart/RampartSpriteSheet73.png | Bin 0 -> 544 bytes .../Rampart/RampartSpriteSheet74.png | Bin 0 -> 657 bytes .../Rampart/RampartSpriteSheet75.png | Bin 0 -> 755 bytes .../Rampart/RampartSpriteSheet76.png | Bin 0 -> 652 bytes .../Rampart/RampartSpriteSheet77.png | Bin 0 -> 656 bytes .../Rampart/RampartSpriteSheet78.png | Bin 0 -> 96 bytes .../Rampart/RampartSpriteSheet79.png | Bin 0 -> 481 bytes .../Rampart/RampartSpriteSheet8.png | Bin 0 -> 321 bytes .../Rampart/RampartSpriteSheet80.png | Bin 0 -> 630 bytes .../Rampart/RampartSpriteSheet81.png | Bin 0 -> 676 bytes .../Rampart/RampartSpriteSheet82.png | Bin 0 -> 615 bytes .../Rampart/RampartSpriteSheet83.png | Bin 0 -> 708 bytes .../Rampart/RampartSpriteSheet84.png | Bin 0 -> 96 bytes .../Rampart/RampartSpriteSheet85.png | Bin 0 -> 592 bytes .../Rampart/RampartSpriteSheet86.png | Bin 0 -> 715 bytes .../Rampart/RampartSpriteSheet87.png | Bin 0 -> 722 bytes .../Rampart/RampartSpriteSheet88.png | Bin 0 -> 647 bytes .../Rampart/RampartSpriteSheet89.png | Bin 0 -> 753 bytes .../Rampart/RampartSpriteSheet9.png | Bin 0 -> 348 bytes .../Rampart/RampartSpriteSheet90.png | Bin 0 -> 738 bytes .../Rampart/RampartSpriteSheet91.png | Bin 0 -> 605 bytes .../Rampart/RampartSpriteSheet92.png | Bin 0 -> 737 bytes .../Rampart/RampartSpriteSheet93.png | Bin 0 -> 548 bytes .../Rampart/RampartSpriteSheet94.png | Bin 0 -> 713 bytes .../Rampart/RampartSpriteSheet95.png | Bin 0 -> 715 bytes .../Rampart/RampartSpriteSheet96.png | Bin 0 -> 389 bytes .../{demon2 => archdemon}/attack1.png | Bin .../{demon2 => archdemon}/attack2.png | Bin .../{demon2 => archdemon}/attack3.png | Bin .../{demon2 => archdemon}/attack4.png | Bin .../{demon2 => archdemon}/death1.png | Bin .../{demon2 => archdemon}/death2.png | Bin .../{demon2 => archdemon}/death3.png | Bin .../{demon2 => archdemon}/death4.png | Bin .../characters/{demon2 => archdemon}/hit1.png | Bin .../characters/{demon2 => archdemon}/hit2.png | Bin .../characters/{demon2 => archdemon}/hit3.png | Bin .../characters/{demon2 => archdemon}/hit4.png | Bin .../{demon2 => archdemon}/idle1.png | Bin .../{demon2 => archdemon}/idle2.png | Bin .../{demon2 => archdemon}/idle3.png | Bin .../{demon2 => archdemon}/idle4.png | Bin .../{demon2 => archdemon}/portrait.png | Bin .../{demon2 => archdemon}/walk1.png | Bin .../{demon2 => archdemon}/walk2.png | Bin .../{demon2 => archdemon}/walk3.png | Bin .../{demon2 => archdemon}/walk4.png | Bin .../characters/{imp1 => ariel}/attack.png | Bin .../characters/{imp1 => ariel}/death.png | Bin .../characters/{imp1 => ariel}/hit.png | Bin .../characters/{imp1 => ariel}/idle.png | Bin assets/textures/characters/ariel/idle1.png | Bin 0 -> 284 bytes assets/textures/characters/ariel/idle2.png | Bin 0 -> 310 bytes assets/textures/characters/ariel/idle3.png | Bin 0 -> 311 bytes assets/textures/characters/ariel/idle4.png | Bin 0 -> 284 bytes assets/textures/characters/ariel/portrait.png | Bin 0 -> 374 bytes .../characters/{imp1 => ariel}/walk.png | Bin assets/textures/characters/charmer/attack.png | Bin 0 -> 511 bytes assets/textures/characters/charmer/death.png | Bin 0 -> 429 bytes assets/textures/characters/charmer/hit.png | Bin 0 -> 390 bytes assets/textures/characters/charmer/idle.png | Bin 0 -> 457 bytes assets/textures/characters/charmer/idle1.png | Bin 0 -> 316 bytes assets/textures/characters/charmer/idle2.png | Bin 0 -> 317 bytes assets/textures/characters/charmer/idle3.png | Bin 0 -> 327 bytes assets/textures/characters/charmer/idle4.png | Bin 0 -> 317 bytes .../textures/characters/charmer/portrait.png | Bin 0 -> 524 bytes assets/textures/characters/charmer/walk.png | Bin 0 -> 482 bytes .../characters/{demon1 => demon}/attack1.png | Bin .../characters/{demon1 => demon}/attack2.png | Bin .../characters/{demon1 => demon}/attack3.png | Bin .../characters/{demon1 => demon}/attack4.png | Bin .../characters/{demon1 => demon}/death1.png | Bin .../characters/{demon1 => demon}/death2.png | Bin .../characters/{demon1 => demon}/death3.png | Bin .../characters/{demon1 => demon}/death4.png | Bin .../characters/{demon1 => demon}/hit1.png | Bin .../characters/{demon1 => demon}/hit2.png | Bin .../characters/{demon1 => demon}/hit3.png | Bin .../characters/{demon1 => demon}/hit4.png | Bin .../characters/{demon1 => demon}/idle1.png | Bin .../characters/{demon1 => demon}/idle2.png | Bin .../characters/{demon1 => demon}/idle3.png | Bin .../characters/{demon1 => demon}/idle4.png | Bin .../characters/{demon1 => demon}/portrait.png | Bin .../characters/{demon1 => demon}/walk1.png | Bin .../characters/{demon1 => demon}/walk2.png | Bin .../characters/{demon1 => demon}/walk3.png | Bin .../characters/{demon1 => demon}/walk4.png | Bin .../characters/{devil1 => devil}/attack1.png | Bin .../characters/{devil1 => devil}/attack2.png | Bin .../characters/{devil1 => devil}/attack3.png | Bin .../characters/{devil1 => devil}/attack4.png | Bin .../characters/{devil1 => devil}/death1.png | Bin .../characters/{devil1 => devil}/death2.png | Bin .../characters/{devil1 => devil}/death3.png | Bin .../characters/{devil1 => devil}/death4.png | Bin .../characters/{devil1 => devil}/hit1.png | Bin .../characters/{devil1 => devil}/hit2.png | Bin .../characters/{devil1 => devil}/hit3.png | Bin .../characters/{devil1 => devil}/hit4.png | Bin .../characters/{devil1 => devil}/idle1.png | Bin .../characters/{devil1 => devil}/idle2.png | Bin .../characters/{devil1 => devil}/idle3.png | Bin .../characters/{devil1 => devil}/idle4.png | Bin .../characters/{devil1 => devil}/portrait.png | Bin .../characters/{devil1 => devil}/walk1.png | Bin .../characters/{devil1 => devil}/walk2.png | Bin .../characters/{devil1 => devil}/walk3.png | Bin .../characters/{devil1 => devil}/walk4.png | Bin .../characters/{efreet1 => efreet}/attack.png | Bin .../characters/{efreet1 => efreet}/death.png | Bin .../characters/{efreet1 => efreet}/hit.png | Bin .../characters/{efreet1 => efreet}/idle.png | Bin .../{efreet1 => efreet}/portrait.png | Bin .../characters/{efreet1 => efreet}/walk.png | Bin .../{efreet2 => eliteefreet}/attack.png | Bin .../{efreet2 => eliteefreet}/death.png | Bin .../{efreet2 => eliteefreet}/hit.png | Bin .../{efreet2 => eliteefreet}/idle.png | Bin .../{efreet2 => eliteefreet}/portrait.png | Bin .../{efreet2 => eliteefreet}/walk.png | Bin .../{pitfield2 => elitepitfield}/attack.png | Bin .../{pitfield2 => elitepitfield}/death.png | Bin .../{pitfield2 => elitepitfield}/hit.png | Bin .../{pitfield2 => elitepitfield}/idle.png | Bin .../{pitfield2 => elitepitfield}/portrait.png | Bin .../{pitfield2 => elitepitfield}/walk.png | Bin .../characters/{gog1 => gog}/attack.png | Bin .../textures/characters/{gog1 => gog}/die.png | Bin .../textures/characters/{gog1 => gog}/hit.png | Bin .../characters/{gog1 => gog}/idle.png | Bin .../characters/{gog1 => gog}/portrait.png | Bin .../characters/{gog1 => gog}/walk.png | Bin .../{hellhound2 => hellbeast}/attack.png | Bin .../{hellhound2 => hellbeast}/death.png | Bin .../{hellhound2 => hellbeast}/hit.png | Bin .../textures/characters/hellbeast/idle1.png | Bin 0 -> 295 bytes .../textures/characters/hellbeast/idle2.png | Bin 0 -> 287 bytes .../textures/characters/hellbeast/idle3.png | Bin 0 -> 287 bytes .../textures/characters/hellbeast/idle4.png | Bin 0 -> 295 bytes .../{hellhound2 => hellbeast}/portrait.png | Bin .../{hellhound2 => hellbeast}/walk.png | Bin .../{hellhound1 => hellhound}/attack.png | Bin .../{hellhound1 => hellhound}/death.png | Bin .../{hellhound1 => hellhound}/hit.png | Bin .../{hellhound1 => hellhound}/idle.png | Bin .../{hellhound1 => hellhound}/portrait.png | Bin .../{hellhound1 => hellhound}/walk.png | Bin .../textures/characters/hellhound2/idle.png | Bin 410 -> 0 bytes assets/textures/characters/imp1/idle1.png | Bin 291 -> 0 bytes assets/textures/characters/imp1/idle2.png | Bin 292 -> 0 bytes assets/textures/characters/imp1/idle3.png | Bin 300 -> 0 bytes assets/textures/characters/imp1/idle4.png | Bin 291 -> 0 bytes assets/textures/characters/imp2/idle1.png | Bin 384 -> 0 bytes assets/textures/characters/imp2/idle3.png | Bin 384 -> 0 bytes assets/textures/characters/imp2/idle4.png | Bin 373 -> 0 bytes assets/textures/characters/impling/attack.png | Bin 0 -> 511 bytes assets/textures/characters/impling/death.png | Bin 0 -> 429 bytes assets/textures/characters/impling/hit.png | Bin 0 -> 390 bytes assets/textures/characters/impling/idle.png | Bin 0 -> 457 bytes assets/textures/characters/impling/idle1.png | Bin 0 -> 294 bytes assets/textures/characters/impling/idle2.png | Bin 0 -> 284 bytes assets/textures/characters/impling/idle3.png | Bin 0 -> 298 bytes assets/textures/characters/impling/idle4.png | Bin 0 -> 294 bytes .../characters/{imp1 => impling}/portrait.png | Bin assets/textures/characters/impling/walk.png | Bin 0 -> 482 bytes .../characters/{imp2 => imps}/attack.png | Bin .../characters/{imp2 => imps}/death.png | Bin .../characters/{imp2 => imps}/hit.png | Bin .../characters/{imp2 => imps}/idle.png | Bin assets/textures/characters/imps/idle1.png | Bin 0 -> 388 bytes .../characters/{imp2 => imps}/idle2.png | Bin 368 -> 371 bytes assets/textures/characters/imps/idle3.png | Bin 0 -> 388 bytes assets/textures/characters/imps/idle4.png | Bin 0 -> 379 bytes .../characters/{imp2 => imps}/portrait.png | Bin .../characters/{imp2 => imps}/walk.png | Bin .../characters/{gog2 => magog}/attack.png | Bin .../characters/{gog2 => magog}/death.png | Bin .../characters/{gog2 => magog}/hit.png | Bin .../characters/{gog2 => magog}/idle.png | Bin .../characters/{gog2 => magog}/portrait.png | Bin .../characters/{gog2 => magog}/walk.png | Bin .../{pitfield1 => pitfield}/attack.png | Bin .../{pitfield1 => pitfield}/death.png | Bin .../{pitfield1 => pitfield}/hit.png | Bin .../{pitfield1 => pitfield}/idle.png | Bin .../{pitfield1 => pitfield}/portrait.png | Bin .../{pitfield1 => pitfield}/walk.png | Bin .../{devil2 => thedevil}/attack.png | Bin .../characters/{devil2 => thedevil}/death.png | Bin .../characters/{devil2 => thedevil}/hit.png | Bin .../characters/{devil2 => thedevil}/idle.png | Bin .../{devil2 => thedevil}/portrait.png | Bin .../characters/{devil2 => thedevil}/walk.png | Bin assets/textures/icons/Skills.png | Bin 0 -> 18610 bytes assets/textures/icons/icon1.png | Bin 0 -> 344 bytes assets/textures/icons/icon10.png | Bin 0 -> 281 bytes assets/textures/icons/icon100.png | Bin 0 -> 520 bytes assets/textures/icons/icon101.png | Bin 0 -> 479 bytes assets/textures/icons/icon102.png | Bin 0 -> 377 bytes assets/textures/icons/icon103.png | Bin 0 -> 359 bytes assets/textures/icons/icon104.png | Bin 0 -> 290 bytes assets/textures/icons/icon105.png | Bin 0 -> 497 bytes assets/textures/icons/icon11.png | Bin 0 -> 299 bytes assets/textures/icons/icon12.png | Bin 0 -> 363 bytes assets/textures/icons/icon13.png | Bin 0 -> 303 bytes assets/textures/icons/icon14.png | Bin 0 -> 345 bytes assets/textures/icons/icon15.png | Bin 0 -> 363 bytes assets/textures/icons/icon16.png | Bin 0 -> 390 bytes assets/textures/icons/icon17.png | Bin 0 -> 429 bytes assets/textures/icons/icon18.png | Bin 0 -> 323 bytes assets/textures/icons/icon19.png | Bin 0 -> 319 bytes assets/textures/icons/icon2.png | Bin 0 -> 257 bytes assets/textures/icons/icon20.png | Bin 0 -> 344 bytes assets/textures/icons/icon21.png | Bin 0 -> 297 bytes assets/textures/icons/icon22.png | Bin 0 -> 414 bytes assets/textures/icons/icon23.png | Bin 0 -> 394 bytes assets/textures/icons/icon24.png | Bin 0 -> 453 bytes assets/textures/icons/icon25.png | Bin 0 -> 457 bytes assets/textures/icons/icon26.png | Bin 0 -> 381 bytes assets/textures/icons/icon27.png | Bin 0 -> 329 bytes assets/textures/icons/icon28.png | Bin 0 -> 429 bytes assets/textures/icons/icon29.png | Bin 0 -> 470 bytes assets/textures/icons/icon3.png | Bin 0 -> 371 bytes assets/textures/icons/icon30.png | Bin 0 -> 288 bytes assets/textures/icons/icon31.png | Bin 0 -> 301 bytes assets/textures/icons/icon32.png | Bin 0 -> 344 bytes assets/textures/icons/icon33.png | Bin 0 -> 324 bytes assets/textures/icons/icon34.png | Bin 0 -> 356 bytes assets/textures/icons/icon35.png | Bin 0 -> 412 bytes assets/textures/icons/icon36.png | Bin 0 -> 311 bytes assets/textures/icons/icon37.png | Bin 0 -> 331 bytes assets/textures/icons/icon38.png | Bin 0 -> 340 bytes assets/textures/icons/icon39.png | Bin 0 -> 322 bytes assets/textures/icons/icon4.png | Bin 0 -> 326 bytes assets/textures/icons/icon40.png | Bin 0 -> 524 bytes assets/textures/icons/icon41.png | Bin 0 -> 428 bytes assets/textures/icons/icon42.png | Bin 0 -> 282 bytes assets/textures/icons/icon43.png | Bin 0 -> 308 bytes assets/textures/icons/icon44.png | Bin 0 -> 473 bytes assets/textures/icons/icon45.png | Bin 0 -> 290 bytes assets/textures/icons/icon46.png | Bin 0 -> 525 bytes assets/textures/icons/icon47.png | Bin 0 -> 371 bytes assets/textures/icons/icon48.png | Bin 0 -> 235 bytes assets/textures/icons/icon49.png | Bin 0 -> 269 bytes assets/textures/icons/icon5.png | Bin 0 -> 355 bytes assets/textures/icons/icon50.png | Bin 0 -> 285 bytes assets/textures/icons/icon51.png | Bin 0 -> 295 bytes assets/textures/icons/icon52.png | Bin 0 -> 373 bytes assets/textures/icons/icon53.png | Bin 0 -> 461 bytes assets/textures/icons/icon54.png | Bin 0 -> 326 bytes assets/textures/icons/icon55.png | Bin 0 -> 315 bytes assets/textures/icons/icon56.png | Bin 0 -> 370 bytes assets/textures/icons/icon57.png | Bin 0 -> 235 bytes assets/textures/icons/icon58.png | Bin 0 -> 340 bytes assets/textures/icons/icon59.png | Bin 0 -> 387 bytes assets/textures/icons/icon6.png | Bin 0 -> 287 bytes assets/textures/icons/icon60.png | Bin 0 -> 309 bytes assets/textures/icons/icon61.png | Bin 0 -> 348 bytes assets/textures/icons/icon62.png | Bin 0 -> 374 bytes assets/textures/icons/icon63.png | Bin 0 -> 203 bytes assets/textures/icons/icon64.png | Bin 0 -> 362 bytes assets/textures/icons/icon65.png | Bin 0 -> 426 bytes assets/textures/icons/icon66.png | Bin 0 -> 229 bytes assets/textures/icons/icon67.png | Bin 0 -> 280 bytes assets/textures/icons/icon68.png | Bin 0 -> 386 bytes assets/textures/icons/icon69.png | Bin 0 -> 375 bytes assets/textures/icons/icon7.png | Bin 0 -> 267 bytes assets/textures/icons/icon70.png | Bin 0 -> 450 bytes assets/textures/icons/icon71.png | Bin 0 -> 474 bytes assets/textures/icons/icon72.png | Bin 0 -> 283 bytes assets/textures/icons/icon73.png | Bin 0 -> 394 bytes assets/textures/icons/icon74.png | Bin 0 -> 397 bytes assets/textures/icons/icon75.png | Bin 0 -> 355 bytes assets/textures/icons/icon76.png | Bin 0 -> 345 bytes assets/textures/icons/icon77.png | Bin 0 -> 323 bytes assets/textures/icons/icon78.png | Bin 0 -> 433 bytes assets/textures/icons/icon79.png | Bin 0 -> 486 bytes assets/textures/icons/icon8.png | Bin 0 -> 350 bytes assets/textures/icons/icon80.png | Bin 0 -> 525 bytes assets/textures/icons/icon81.png | Bin 0 -> 341 bytes assets/textures/icons/icon82.png | Bin 0 -> 374 bytes assets/textures/icons/icon83.png | Bin 0 -> 410 bytes assets/textures/icons/icon84.png | Bin 0 -> 318 bytes assets/textures/icons/icon85.png | Bin 0 -> 397 bytes assets/textures/icons/icon86.png | Bin 0 -> 443 bytes assets/textures/icons/icon87.png | Bin 0 -> 418 bytes assets/textures/icons/icon88.png | Bin 0 -> 440 bytes assets/textures/icons/icon89.png | Bin 0 -> 435 bytes assets/textures/icons/icon9.png | Bin 0 -> 398 bytes assets/textures/icons/icon90.png | Bin 0 -> 241 bytes assets/textures/icons/icon91.png | Bin 0 -> 291 bytes assets/textures/icons/icon92.png | Bin 0 -> 392 bytes assets/textures/icons/icon93.png | Bin 0 -> 325 bytes assets/textures/icons/icon94.png | Bin 0 -> 370 bytes assets/textures/icons/icon95.png | Bin 0 -> 388 bytes assets/textures/icons/icon96.png | Bin 0 -> 385 bytes assets/textures/icons/icon97.png | Bin 0 -> 457 bytes assets/textures/icons/icon98.png | Bin 0 -> 379 bytes assets/textures/icons/icon99.png | Bin 0 -> 321 bytes creatures.lua | 0 enums.lua | 564 ++++++++++++++++++ g3d/camera.lua | 63 +- levels.lua | 64 +- main.lua | 123 ++-- 369 files changed, 732 insertions(+), 82 deletions(-) create mode 100644 assets/textures/HAS/HAS Creature Pack 1.2/Rampart/RampartSpriteSheet10.png create mode 100644 assets/textures/HAS/HAS Creature Pack 1.2/Rampart/RampartSpriteSheet11.png create mode 100644 assets/textures/HAS/HAS Creature Pack 1.2/Rampart/RampartSpriteSheet12.png create mode 100644 assets/textures/HAS/HAS Creature Pack 1.2/Rampart/RampartSpriteSheet13.png create mode 100644 assets/textures/HAS/HAS Creature Pack 1.2/Rampart/RampartSpriteSheet14.png create mode 100644 assets/textures/HAS/HAS Creature Pack 1.2/Rampart/RampartSpriteSheet15.png create mode 100644 assets/textures/HAS/HAS Creature Pack 1.2/Rampart/RampartSpriteSheet16.png create mode 100644 assets/textures/HAS/HAS Creature Pack 1.2/Rampart/RampartSpriteSheet17.png create mode 100644 assets/textures/HAS/HAS Creature Pack 1.2/Rampart/RampartSpriteSheet18.png create mode 100644 assets/textures/HAS/HAS Creature Pack 1.2/Rampart/RampartSpriteSheet19.png create mode 100644 assets/textures/HAS/HAS Creature Pack 1.2/Rampart/RampartSpriteSheet20.png create mode 100644 assets/textures/HAS/HAS Creature Pack 1.2/Rampart/RampartSpriteSheet21.png create mode 100644 assets/textures/HAS/HAS Creature Pack 1.2/Rampart/RampartSpriteSheet22.png create mode 100644 assets/textures/HAS/HAS Creature Pack 1.2/Rampart/RampartSpriteSheet23.png create mode 100644 assets/textures/HAS/HAS Creature Pack 1.2/Rampart/RampartSpriteSheet24.png create mode 100644 assets/textures/HAS/HAS Creature Pack 1.2/Rampart/RampartSpriteSheet25.png create mode 100644 assets/textures/HAS/HAS Creature Pack 1.2/Rampart/RampartSpriteSheet26.png create mode 100644 assets/textures/HAS/HAS Creature Pack 1.2/Rampart/RampartSpriteSheet27.png create mode 100644 assets/textures/HAS/HAS Creature Pack 1.2/Rampart/RampartSpriteSheet28.png create mode 100644 assets/textures/HAS/HAS Creature Pack 1.2/Rampart/RampartSpriteSheet29.png create mode 100644 assets/textures/HAS/HAS Creature Pack 1.2/Rampart/RampartSpriteSheet30.png create mode 100644 assets/textures/HAS/HAS Creature Pack 1.2/Rampart/RampartSpriteSheet31.png create mode 100644 assets/textures/HAS/HAS Creature Pack 1.2/Rampart/RampartSpriteSheet32.png create mode 100644 assets/textures/HAS/HAS Creature Pack 1.2/Rampart/RampartSpriteSheet33.png create mode 100644 assets/textures/HAS/HAS Creature Pack 1.2/Rampart/RampartSpriteSheet34.png create mode 100644 assets/textures/HAS/HAS Creature Pack 1.2/Rampart/RampartSpriteSheet35.png create mode 100644 assets/textures/HAS/HAS Creature Pack 1.2/Rampart/RampartSpriteSheet36.png create mode 100644 assets/textures/HAS/HAS Creature Pack 1.2/Rampart/RampartSpriteSheet37.png create mode 100644 assets/textures/HAS/HAS Creature Pack 1.2/Rampart/RampartSpriteSheet38.png create mode 100644 assets/textures/HAS/HAS Creature Pack 1.2/Rampart/RampartSpriteSheet39.png create mode 100644 assets/textures/HAS/HAS Creature Pack 1.2/Rampart/RampartSpriteSheet40.png create mode 100644 assets/textures/HAS/HAS Creature Pack 1.2/Rampart/RampartSpriteSheet41.png create mode 100644 assets/textures/HAS/HAS Creature Pack 1.2/Rampart/RampartSpriteSheet42.png create mode 100644 assets/textures/HAS/HAS Creature Pack 1.2/Rampart/RampartSpriteSheet43.png create mode 100644 assets/textures/HAS/HAS Creature Pack 1.2/Rampart/RampartSpriteSheet44.png create mode 100644 assets/textures/HAS/HAS Creature Pack 1.2/Rampart/RampartSpriteSheet45.png create mode 100644 assets/textures/HAS/HAS Creature Pack 1.2/Rampart/RampartSpriteSheet46.png create mode 100644 assets/textures/HAS/HAS Creature Pack 1.2/Rampart/RampartSpriteSheet47.png create mode 100644 assets/textures/HAS/HAS Creature Pack 1.2/Rampart/RampartSpriteSheet48.png create mode 100644 assets/textures/HAS/HAS Creature Pack 1.2/Rampart/RampartSpriteSheet49.png create mode 100644 assets/textures/HAS/HAS Creature Pack 1.2/Rampart/RampartSpriteSheet50.png create mode 100644 assets/textures/HAS/HAS Creature Pack 1.2/Rampart/RampartSpriteSheet51.png create mode 100644 assets/textures/HAS/HAS Creature Pack 1.2/Rampart/RampartSpriteSheet52.png create mode 100644 assets/textures/HAS/HAS Creature Pack 1.2/Rampart/RampartSpriteSheet53.png create mode 100644 assets/textures/HAS/HAS Creature Pack 1.2/Rampart/RampartSpriteSheet54.png create mode 100644 assets/textures/HAS/HAS Creature Pack 1.2/Rampart/RampartSpriteSheet55.png create mode 100644 assets/textures/HAS/HAS Creature Pack 1.2/Rampart/RampartSpriteSheet56.png create mode 100644 assets/textures/HAS/HAS Creature Pack 1.2/Rampart/RampartSpriteSheet57.png create mode 100644 assets/textures/HAS/HAS Creature Pack 1.2/Rampart/RampartSpriteSheet58.png create mode 100644 assets/textures/HAS/HAS Creature Pack 1.2/Rampart/RampartSpriteSheet59.png create mode 100644 assets/textures/HAS/HAS Creature Pack 1.2/Rampart/RampartSpriteSheet60.png create mode 100644 assets/textures/HAS/HAS Creature Pack 1.2/Rampart/RampartSpriteSheet61.png create mode 100644 assets/textures/HAS/HAS Creature Pack 1.2/Rampart/RampartSpriteSheet62.png create mode 100644 assets/textures/HAS/HAS Creature Pack 1.2/Rampart/RampartSpriteSheet63.png create mode 100644 assets/textures/HAS/HAS Creature Pack 1.2/Rampart/RampartSpriteSheet64.png create mode 100644 assets/textures/HAS/HAS Creature Pack 1.2/Rampart/RampartSpriteSheet65.png create mode 100644 assets/textures/HAS/HAS Creature Pack 1.2/Rampart/RampartSpriteSheet66.png create mode 100644 assets/textures/HAS/HAS Creature Pack 1.2/Rampart/RampartSpriteSheet67.png create mode 100644 assets/textures/HAS/HAS Creature Pack 1.2/Rampart/RampartSpriteSheet68.png create mode 100644 assets/textures/HAS/HAS Creature Pack 1.2/Rampart/RampartSpriteSheet69.png create mode 100644 assets/textures/HAS/HAS Creature Pack 1.2/Rampart/RampartSpriteSheet7.png create mode 100644 assets/textures/HAS/HAS Creature Pack 1.2/Rampart/RampartSpriteSheet70.png create mode 100644 assets/textures/HAS/HAS Creature Pack 1.2/Rampart/RampartSpriteSheet71.png create mode 100644 assets/textures/HAS/HAS Creature Pack 1.2/Rampart/RampartSpriteSheet72.png create mode 100644 assets/textures/HAS/HAS Creature Pack 1.2/Rampart/RampartSpriteSheet73.png create mode 100644 assets/textures/HAS/HAS Creature Pack 1.2/Rampart/RampartSpriteSheet74.png create mode 100644 assets/textures/HAS/HAS Creature Pack 1.2/Rampart/RampartSpriteSheet75.png create mode 100644 assets/textures/HAS/HAS Creature Pack 1.2/Rampart/RampartSpriteSheet76.png create mode 100644 assets/textures/HAS/HAS Creature Pack 1.2/Rampart/RampartSpriteSheet77.png create mode 100644 assets/textures/HAS/HAS Creature Pack 1.2/Rampart/RampartSpriteSheet78.png create mode 100644 assets/textures/HAS/HAS Creature Pack 1.2/Rampart/RampartSpriteSheet79.png create mode 100644 assets/textures/HAS/HAS Creature Pack 1.2/Rampart/RampartSpriteSheet8.png create mode 100644 assets/textures/HAS/HAS Creature Pack 1.2/Rampart/RampartSpriteSheet80.png create mode 100644 assets/textures/HAS/HAS Creature Pack 1.2/Rampart/RampartSpriteSheet81.png create mode 100644 assets/textures/HAS/HAS Creature Pack 1.2/Rampart/RampartSpriteSheet82.png create mode 100644 assets/textures/HAS/HAS Creature Pack 1.2/Rampart/RampartSpriteSheet83.png create mode 100644 assets/textures/HAS/HAS Creature Pack 1.2/Rampart/RampartSpriteSheet84.png create mode 100644 assets/textures/HAS/HAS Creature Pack 1.2/Rampart/RampartSpriteSheet85.png create mode 100644 assets/textures/HAS/HAS Creature Pack 1.2/Rampart/RampartSpriteSheet86.png create mode 100644 assets/textures/HAS/HAS Creature Pack 1.2/Rampart/RampartSpriteSheet87.png create mode 100644 assets/textures/HAS/HAS Creature Pack 1.2/Rampart/RampartSpriteSheet88.png create mode 100644 assets/textures/HAS/HAS Creature Pack 1.2/Rampart/RampartSpriteSheet89.png create mode 100644 assets/textures/HAS/HAS Creature Pack 1.2/Rampart/RampartSpriteSheet9.png create mode 100644 assets/textures/HAS/HAS Creature Pack 1.2/Rampart/RampartSpriteSheet90.png create mode 100644 assets/textures/HAS/HAS Creature Pack 1.2/Rampart/RampartSpriteSheet91.png create mode 100644 assets/textures/HAS/HAS Creature Pack 1.2/Rampart/RampartSpriteSheet92.png create mode 100644 assets/textures/HAS/HAS Creature Pack 1.2/Rampart/RampartSpriteSheet93.png create mode 100644 assets/textures/HAS/HAS Creature Pack 1.2/Rampart/RampartSpriteSheet94.png create mode 100644 assets/textures/HAS/HAS Creature Pack 1.2/Rampart/RampartSpriteSheet95.png create mode 100644 assets/textures/HAS/HAS Creature Pack 1.2/Rampart/RampartSpriteSheet96.png rename assets/textures/characters/{demon2 => archdemon}/attack1.png (100%) rename assets/textures/characters/{demon2 => archdemon}/attack2.png (100%) rename assets/textures/characters/{demon2 => archdemon}/attack3.png (100%) rename assets/textures/characters/{demon2 => archdemon}/attack4.png (100%) rename assets/textures/characters/{demon2 => archdemon}/death1.png (100%) rename assets/textures/characters/{demon2 => archdemon}/death2.png (100%) rename assets/textures/characters/{demon2 => archdemon}/death3.png (100%) rename assets/textures/characters/{demon2 => archdemon}/death4.png (100%) rename assets/textures/characters/{demon2 => archdemon}/hit1.png (100%) rename assets/textures/characters/{demon2 => archdemon}/hit2.png (100%) rename assets/textures/characters/{demon2 => archdemon}/hit3.png (100%) rename assets/textures/characters/{demon2 => archdemon}/hit4.png (100%) rename assets/textures/characters/{demon2 => archdemon}/idle1.png (100%) rename assets/textures/characters/{demon2 => archdemon}/idle2.png (100%) rename assets/textures/characters/{demon2 => archdemon}/idle3.png (100%) rename assets/textures/characters/{demon2 => archdemon}/idle4.png (100%) rename assets/textures/characters/{demon2 => archdemon}/portrait.png (100%) rename assets/textures/characters/{demon2 => archdemon}/walk1.png (100%) rename assets/textures/characters/{demon2 => archdemon}/walk2.png (100%) rename assets/textures/characters/{demon2 => archdemon}/walk3.png (100%) rename assets/textures/characters/{demon2 => archdemon}/walk4.png (100%) rename assets/textures/characters/{imp1 => ariel}/attack.png (100%) rename assets/textures/characters/{imp1 => ariel}/death.png (100%) rename assets/textures/characters/{imp1 => ariel}/hit.png (100%) rename assets/textures/characters/{imp1 => ariel}/idle.png (100%) create mode 100644 assets/textures/characters/ariel/idle1.png create mode 100644 assets/textures/characters/ariel/idle2.png create mode 100644 assets/textures/characters/ariel/idle3.png create mode 100644 assets/textures/characters/ariel/idle4.png create mode 100644 assets/textures/characters/ariel/portrait.png rename assets/textures/characters/{imp1 => ariel}/walk.png (100%) create mode 100644 assets/textures/characters/charmer/attack.png create mode 100644 assets/textures/characters/charmer/death.png create mode 100644 assets/textures/characters/charmer/hit.png create mode 100644 assets/textures/characters/charmer/idle.png create mode 100644 assets/textures/characters/charmer/idle1.png create mode 100644 assets/textures/characters/charmer/idle2.png create mode 100644 assets/textures/characters/charmer/idle3.png create mode 100644 assets/textures/characters/charmer/idle4.png create mode 100644 assets/textures/characters/charmer/portrait.png create mode 100644 assets/textures/characters/charmer/walk.png rename assets/textures/characters/{demon1 => demon}/attack1.png (100%) rename assets/textures/characters/{demon1 => demon}/attack2.png (100%) rename assets/textures/characters/{demon1 => demon}/attack3.png (100%) rename assets/textures/characters/{demon1 => demon}/attack4.png (100%) rename assets/textures/characters/{demon1 => demon}/death1.png (100%) rename assets/textures/characters/{demon1 => demon}/death2.png (100%) rename assets/textures/characters/{demon1 => demon}/death3.png (100%) rename assets/textures/characters/{demon1 => demon}/death4.png (100%) rename assets/textures/characters/{demon1 => demon}/hit1.png (100%) rename assets/textures/characters/{demon1 => demon}/hit2.png (100%) rename assets/textures/characters/{demon1 => demon}/hit3.png (100%) rename assets/textures/characters/{demon1 => demon}/hit4.png (100%) rename assets/textures/characters/{demon1 => demon}/idle1.png (100%) rename assets/textures/characters/{demon1 => demon}/idle2.png (100%) rename assets/textures/characters/{demon1 => demon}/idle3.png (100%) rename assets/textures/characters/{demon1 => demon}/idle4.png (100%) rename assets/textures/characters/{demon1 => demon}/portrait.png (100%) rename assets/textures/characters/{demon1 => demon}/walk1.png (100%) rename assets/textures/characters/{demon1 => demon}/walk2.png (100%) rename assets/textures/characters/{demon1 => demon}/walk3.png (100%) rename assets/textures/characters/{demon1 => demon}/walk4.png (100%) rename assets/textures/characters/{devil1 => devil}/attack1.png (100%) rename assets/textures/characters/{devil1 => devil}/attack2.png (100%) rename assets/textures/characters/{devil1 => devil}/attack3.png (100%) rename assets/textures/characters/{devil1 => devil}/attack4.png (100%) rename assets/textures/characters/{devil1 => devil}/death1.png (100%) rename assets/textures/characters/{devil1 => devil}/death2.png (100%) rename assets/textures/characters/{devil1 => devil}/death3.png (100%) rename assets/textures/characters/{devil1 => devil}/death4.png (100%) rename assets/textures/characters/{devil1 => devil}/hit1.png (100%) rename assets/textures/characters/{devil1 => devil}/hit2.png (100%) rename assets/textures/characters/{devil1 => devil}/hit3.png (100%) rename assets/textures/characters/{devil1 => devil}/hit4.png (100%) rename assets/textures/characters/{devil1 => devil}/idle1.png (100%) rename assets/textures/characters/{devil1 => devil}/idle2.png (100%) rename assets/textures/characters/{devil1 => devil}/idle3.png (100%) rename assets/textures/characters/{devil1 => devil}/idle4.png (100%) rename assets/textures/characters/{devil1 => devil}/portrait.png (100%) rename assets/textures/characters/{devil1 => devil}/walk1.png (100%) rename assets/textures/characters/{devil1 => devil}/walk2.png (100%) rename assets/textures/characters/{devil1 => devil}/walk3.png (100%) rename assets/textures/characters/{devil1 => devil}/walk4.png (100%) rename assets/textures/characters/{efreet1 => efreet}/attack.png (100%) rename assets/textures/characters/{efreet1 => efreet}/death.png (100%) rename assets/textures/characters/{efreet1 => efreet}/hit.png (100%) rename assets/textures/characters/{efreet1 => efreet}/idle.png (100%) rename assets/textures/characters/{efreet1 => efreet}/portrait.png (100%) rename assets/textures/characters/{efreet1 => efreet}/walk.png (100%) rename assets/textures/characters/{efreet2 => eliteefreet}/attack.png (100%) rename assets/textures/characters/{efreet2 => eliteefreet}/death.png (100%) rename assets/textures/characters/{efreet2 => eliteefreet}/hit.png (100%) rename assets/textures/characters/{efreet2 => eliteefreet}/idle.png (100%) rename assets/textures/characters/{efreet2 => eliteefreet}/portrait.png (100%) rename assets/textures/characters/{efreet2 => eliteefreet}/walk.png (100%) rename assets/textures/characters/{pitfield2 => elitepitfield}/attack.png (100%) rename assets/textures/characters/{pitfield2 => elitepitfield}/death.png (100%) rename assets/textures/characters/{pitfield2 => elitepitfield}/hit.png (100%) rename assets/textures/characters/{pitfield2 => elitepitfield}/idle.png (100%) rename assets/textures/characters/{pitfield2 => elitepitfield}/portrait.png (100%) rename assets/textures/characters/{pitfield2 => elitepitfield}/walk.png (100%) rename assets/textures/characters/{gog1 => gog}/attack.png (100%) rename assets/textures/characters/{gog1 => gog}/die.png (100%) rename assets/textures/characters/{gog1 => gog}/hit.png (100%) rename assets/textures/characters/{gog1 => gog}/idle.png (100%) rename assets/textures/characters/{gog1 => gog}/portrait.png (100%) rename assets/textures/characters/{gog1 => gog}/walk.png (100%) rename assets/textures/characters/{hellhound2 => hellbeast}/attack.png (100%) rename assets/textures/characters/{hellhound2 => hellbeast}/death.png (100%) rename assets/textures/characters/{hellhound2 => hellbeast}/hit.png (100%) create mode 100644 assets/textures/characters/hellbeast/idle1.png create mode 100644 assets/textures/characters/hellbeast/idle2.png create mode 100644 assets/textures/characters/hellbeast/idle3.png create mode 100644 assets/textures/characters/hellbeast/idle4.png rename assets/textures/characters/{hellhound2 => hellbeast}/portrait.png (100%) rename assets/textures/characters/{hellhound2 => hellbeast}/walk.png (100%) rename assets/textures/characters/{hellhound1 => hellhound}/attack.png (100%) rename assets/textures/characters/{hellhound1 => hellhound}/death.png (100%) rename assets/textures/characters/{hellhound1 => hellhound}/hit.png (100%) rename assets/textures/characters/{hellhound1 => hellhound}/idle.png (100%) rename assets/textures/characters/{hellhound1 => hellhound}/portrait.png (100%) rename assets/textures/characters/{hellhound1 => hellhound}/walk.png (100%) delete mode 100644 assets/textures/characters/hellhound2/idle.png delete mode 100644 assets/textures/characters/imp1/idle1.png delete mode 100644 assets/textures/characters/imp1/idle2.png delete mode 100644 assets/textures/characters/imp1/idle3.png delete mode 100644 assets/textures/characters/imp1/idle4.png delete mode 100644 assets/textures/characters/imp2/idle1.png delete mode 100644 assets/textures/characters/imp2/idle3.png delete mode 100644 assets/textures/characters/imp2/idle4.png create mode 100644 assets/textures/characters/impling/attack.png create mode 100644 assets/textures/characters/impling/death.png create mode 100644 assets/textures/characters/impling/hit.png create mode 100644 assets/textures/characters/impling/idle.png create mode 100644 assets/textures/characters/impling/idle1.png create mode 100644 assets/textures/characters/impling/idle2.png create mode 100644 assets/textures/characters/impling/idle3.png create mode 100644 assets/textures/characters/impling/idle4.png rename assets/textures/characters/{imp1 => impling}/portrait.png (100%) create mode 100644 assets/textures/characters/impling/walk.png rename assets/textures/characters/{imp2 => imps}/attack.png (100%) rename assets/textures/characters/{imp2 => imps}/death.png (100%) rename assets/textures/characters/{imp2 => imps}/hit.png (100%) rename assets/textures/characters/{imp2 => imps}/idle.png (100%) create mode 100644 assets/textures/characters/imps/idle1.png rename assets/textures/characters/{imp2 => imps}/idle2.png (56%) create mode 100644 assets/textures/characters/imps/idle3.png create mode 100644 assets/textures/characters/imps/idle4.png rename assets/textures/characters/{imp2 => imps}/portrait.png (100%) rename assets/textures/characters/{imp2 => imps}/walk.png (100%) rename assets/textures/characters/{gog2 => magog}/attack.png (100%) rename assets/textures/characters/{gog2 => magog}/death.png (100%) rename assets/textures/characters/{gog2 => magog}/hit.png (100%) rename assets/textures/characters/{gog2 => magog}/idle.png (100%) rename assets/textures/characters/{gog2 => magog}/portrait.png (100%) rename assets/textures/characters/{gog2 => magog}/walk.png (100%) rename assets/textures/characters/{pitfield1 => pitfield}/attack.png (100%) rename assets/textures/characters/{pitfield1 => pitfield}/death.png (100%) rename assets/textures/characters/{pitfield1 => pitfield}/hit.png (100%) rename assets/textures/characters/{pitfield1 => pitfield}/idle.png (100%) rename assets/textures/characters/{pitfield1 => pitfield}/portrait.png (100%) rename assets/textures/characters/{pitfield1 => pitfield}/walk.png (100%) rename assets/textures/characters/{devil2 => thedevil}/attack.png (100%) rename assets/textures/characters/{devil2 => thedevil}/death.png (100%) rename assets/textures/characters/{devil2 => thedevil}/hit.png (100%) rename assets/textures/characters/{devil2 => thedevil}/idle.png (100%) rename assets/textures/characters/{devil2 => thedevil}/portrait.png (100%) rename assets/textures/characters/{devil2 => thedevil}/walk.png (100%) create mode 100644 assets/textures/icons/Skills.png create mode 100644 assets/textures/icons/icon1.png create mode 100644 assets/textures/icons/icon10.png create mode 100644 assets/textures/icons/icon100.png create mode 100644 assets/textures/icons/icon101.png create mode 100644 assets/textures/icons/icon102.png create mode 100644 assets/textures/icons/icon103.png create mode 100644 assets/textures/icons/icon104.png create mode 100644 assets/textures/icons/icon105.png create mode 100644 assets/textures/icons/icon11.png create mode 100644 assets/textures/icons/icon12.png create mode 100644 assets/textures/icons/icon13.png create mode 100644 assets/textures/icons/icon14.png create mode 100644 assets/textures/icons/icon15.png create mode 100644 assets/textures/icons/icon16.png create mode 100644 assets/textures/icons/icon17.png create mode 100644 assets/textures/icons/icon18.png create mode 100644 assets/textures/icons/icon19.png create mode 100644 assets/textures/icons/icon2.png create mode 100644 assets/textures/icons/icon20.png create mode 100644 assets/textures/icons/icon21.png create mode 100644 assets/textures/icons/icon22.png create mode 100644 assets/textures/icons/icon23.png create mode 100644 assets/textures/icons/icon24.png create mode 100644 assets/textures/icons/icon25.png create mode 100644 assets/textures/icons/icon26.png create mode 100644 assets/textures/icons/icon27.png create mode 100644 assets/textures/icons/icon28.png create mode 100644 assets/textures/icons/icon29.png create mode 100644 assets/textures/icons/icon3.png create mode 100644 assets/textures/icons/icon30.png create mode 100644 assets/textures/icons/icon31.png create mode 100644 assets/textures/icons/icon32.png create mode 100644 assets/textures/icons/icon33.png create mode 100644 assets/textures/icons/icon34.png create mode 100644 assets/textures/icons/icon35.png create mode 100644 assets/textures/icons/icon36.png create mode 100644 assets/textures/icons/icon37.png create mode 100644 assets/textures/icons/icon38.png create mode 100644 assets/textures/icons/icon39.png create mode 100644 assets/textures/icons/icon4.png create mode 100644 assets/textures/icons/icon40.png create mode 100644 assets/textures/icons/icon41.png create mode 100644 assets/textures/icons/icon42.png create mode 100644 assets/textures/icons/icon43.png create mode 100644 assets/textures/icons/icon44.png create mode 100644 assets/textures/icons/icon45.png create mode 100644 assets/textures/icons/icon46.png create mode 100644 assets/textures/icons/icon47.png create mode 100644 assets/textures/icons/icon48.png create mode 100644 assets/textures/icons/icon49.png create mode 100644 assets/textures/icons/icon5.png create mode 100644 assets/textures/icons/icon50.png create mode 100644 assets/textures/icons/icon51.png create mode 100644 assets/textures/icons/icon52.png create mode 100644 assets/textures/icons/icon53.png create mode 100644 assets/textures/icons/icon54.png create mode 100644 assets/textures/icons/icon55.png create mode 100644 assets/textures/icons/icon56.png create mode 100644 assets/textures/icons/icon57.png create mode 100644 assets/textures/icons/icon58.png create mode 100644 assets/textures/icons/icon59.png create mode 100644 assets/textures/icons/icon6.png create mode 100644 assets/textures/icons/icon60.png create mode 100644 assets/textures/icons/icon61.png create mode 100644 assets/textures/icons/icon62.png create mode 100644 assets/textures/icons/icon63.png create mode 100644 assets/textures/icons/icon64.png create mode 100644 assets/textures/icons/icon65.png create mode 100644 assets/textures/icons/icon66.png create mode 100644 assets/textures/icons/icon67.png create mode 100644 assets/textures/icons/icon68.png create mode 100644 assets/textures/icons/icon69.png create mode 100644 assets/textures/icons/icon7.png create mode 100644 assets/textures/icons/icon70.png create mode 100644 assets/textures/icons/icon71.png create mode 100644 assets/textures/icons/icon72.png create mode 100644 assets/textures/icons/icon73.png create mode 100644 assets/textures/icons/icon74.png create mode 100644 assets/textures/icons/icon75.png create mode 100644 assets/textures/icons/icon76.png create mode 100644 assets/textures/icons/icon77.png create mode 100644 assets/textures/icons/icon78.png create mode 100644 assets/textures/icons/icon79.png create mode 100644 assets/textures/icons/icon8.png create mode 100644 assets/textures/icons/icon80.png create mode 100644 assets/textures/icons/icon81.png create mode 100644 assets/textures/icons/icon82.png create mode 100644 assets/textures/icons/icon83.png create mode 100644 assets/textures/icons/icon84.png create mode 100644 assets/textures/icons/icon85.png create mode 100644 assets/textures/icons/icon86.png create mode 100644 assets/textures/icons/icon87.png create mode 100644 assets/textures/icons/icon88.png create mode 100644 assets/textures/icons/icon89.png create mode 100644 assets/textures/icons/icon9.png create mode 100644 assets/textures/icons/icon90.png create mode 100644 assets/textures/icons/icon91.png create mode 100644 assets/textures/icons/icon92.png create mode 100644 assets/textures/icons/icon93.png create mode 100644 assets/textures/icons/icon94.png create mode 100644 assets/textures/icons/icon95.png create mode 100644 assets/textures/icons/icon96.png create mode 100644 assets/textures/icons/icon97.png create mode 100644 assets/textures/icons/icon98.png create mode 100644 assets/textures/icons/icon99.png create mode 100644 creatures.lua create mode 100644 enums.lua diff --git a/assets/textures/HAS/HAS Creature Pack 1.2/Rampart/RampartSpriteSheet10.png b/assets/textures/HAS/HAS Creature Pack 1.2/Rampart/RampartSpriteSheet10.png new file mode 100644 index 0000000000000000000000000000000000000000..e53ac81e4d0bc21762fd9c70b23890b4d0573939 GIT binary patch literal 360 zcmV-u0hj)XP)Px$B1uF+R9J=WR7(oNFc2M~)aC?&t4MkmFXFKTkK$6?xpJonm3oBQZpMX7i9_2= zn&JohHc6OylX)*g07i@$@hyns1miftwzHJi6d$TbCqhIZB4#-vak3l{5uM@)O?ea- znGot^s0iZe;||l!S;VKDraWHPDL&LmJBN#q2q4qa&AH~f_`C);-^GpW!}a!D%d&v! zRAE)!Cv-ts7InM}loRb|?qmR{s{6!f_0r&Wxd5XToGt|zt-xpn)QhCX{IG>+KLevx z9Tznd;-vjj_MWfOKJ3*8e1d%W^*_MJSo)FieTbMo=xcgop&%zeh(Syr%*kKIyT|tv z==vR3?7a4@ZS(tbeRPx$cu7P-R9J=WRb42Rh%X<0Km?PFinsfVhU)+e;VR*BE`w$9Uosj zv6&0uGc&K&Tya+GZq{kCV4r^45ZMXyt3``hE$@SAl{ATQ_;8D8F+-Zf$O~Pwmam4( zf^FPBs0kn&=7s)Zfiwx*T$%>}Q$P{H2j8su_4#97xh_{%uD)#n^WDam$L0^w*N;OE z>Jl(?hDgKq4C-L1@uXh)qnpxN<(e%R-^v7aQe;t{Rv5;}XF+19r%)_&nqQ zL-Bjepo~b(%^`es^N#!Fn|BB|6|@iEwTbWWo4CFj8IhXHkd=lnuU`NFrzb~MZucK^ oCUv}u_Bi}d{5}G<3FoZy37aN586hX|-~a#s07*qoM6N<$g1l|Yg#Z8m literal 0 HcmV?d00001 diff --git a/assets/textures/HAS/HAS Creature Pack 1.2/Rampart/RampartSpriteSheet12.png b/assets/textures/HAS/HAS Creature Pack 1.2/Rampart/RampartSpriteSheet12.png new file mode 100644 index 0000000000000000000000000000000000000000..6fb00c8626da601b711d67ab1701b9794a718ae7 GIT binary patch literal 96 zcmeAS@N?(olHy`uVBq!ia0vp^4nQox!3HFkJ+IURQjEnx?oJHr&dIz4a-=+6977^n p-yURS1oD~`{;$vTZ~!s$*#ra_7;A3@9sqI}JYD@<);T3K0RXo@7CQg{ literal 0 HcmV?d00001 diff --git a/assets/textures/HAS/HAS Creature Pack 1.2/Rampart/RampartSpriteSheet13.png b/assets/textures/HAS/HAS Creature Pack 1.2/Rampart/RampartSpriteSheet13.png new file mode 100644 index 0000000000000000000000000000000000000000..87dc0442ab9b0224e0ae898a15313a27edc62aad GIT binary patch literal 446 zcmV;v0YUzWP)Px$cu7P-R9J=Wm9b01KorKmh#VQ*6vrZhP-v&ttwM1s)W0A&HU&W(qy&e~ok|Ch zZsJtvs1PXBP7cLIhd^D-l0qlD3Tfi-T$=NG6qOWGtob11<=y*TJ|2%dAXcncv0{CR zF_nV182<~NF_nmj7*omYT2#NfB{8>({Fcd$~CV065kNN0$$g@{9ThV=CFL z64|X1^^5{BrqY?w;N3ev%<=fuc_XuHk=eCo4w;@&piC;sYoq4F`d<&a;aDSFbcV=p zZvp@kiCxqhZB#27iu)UA_JM! z$JL59ceDUR$}i%dOFo3e!(?hs2cU~<^5$ZF)O=X~{2KKANjd1e_$|x#C*|OoZW>6J o>!Ret`d6fNeIE3UuKzm!3DD~_bHe4_CjbBd07*qoM6N<$f&{wIMgRZ+ literal 0 HcmV?d00001 diff --git a/assets/textures/HAS/HAS Creature Pack 1.2/Rampart/RampartSpriteSheet14.png b/assets/textures/HAS/HAS Creature Pack 1.2/Rampart/RampartSpriteSheet14.png new file mode 100644 index 0000000000000000000000000000000000000000..cdcd7bf010fbce6d223a1d865dc4c1521c00d0d2 GIT binary patch literal 531 zcmV+u0_^>XP)Px$%}GQ-R9J=WQ!z+FQ4~FbT;9+YG)4r0kW&T?2GJBGO-<6MQ6Lc^5#j744iZ9< zGzmgWfgnhekhtVv*pM#25CZ3hXt^!D$K$8v_lcjt1D}82d-t64?!7!@c>3O zK_bDm+Z1;muUT*8AY9W1O1|`W!Z#Ptbe0xo0iiC8vC0F5D9MQBiznM`0jXvi3A@Ur&Zq3dQinJtINf5gNx-xU)^!~d!@kB z)eZo_YIG3FRIqoL#6>0n0Eh(x$X4qN0L|7bo}b?U0NYzD{Q3Fek-U@A3)W_)0RXeJ z^GK!(NW{a~T%JO<3akeF*bi^^oSs|$UKyAa0054M6+uZLCamcK_%AQlX$gKV`9|H7OS(4h+?;$g@M^n0sPr&pf7=a#=mE(Q?T{m#3z z7oZ_ZBrf&K+xa%+M(Ix^xL5u!cgX1iQG4Px%P)S5VR9J=OmcMHgVHn51W_Wl9H$`v>MW_|L$z&-h1iOg+2PAg91cf3+q*IqH z#UYdo(oH%Q1R+>BEU2rY1R9}o0m&`b(y3hw$(_UFpzrJJnajPoYp~!0FTD5OeV(81 z``ios=W^v=I}j&Cg5^96htv0yNU$7JH)i0A^Wl&e=ZoBU^=_&@<)p!df`yjTf!jYu z8iRTQFGCVdB_}5jAFrcXw_)AR1Na?~oR3qYCs1EAQYD){;RQeqFt z!t0JtqX0S^?JMdp;2)mg(aSdW4$c7p`TQ-Ve5>6}yo_Ywi3Inym(kl^#{1PW0N}~$ z23*ev0Hrf6zfvlwz}@~aT22QorvoCvDgk>3=P2K}rj*L22$+Fiv-$;wNS zNdf*WvQi|^4S;I&InIGNe#98djyuN}#8+c`z$gP@IIMl?eXE7xuom~tIDV3Eqz!pw wG@BR6BMgT%IRI3n+bSuD*9q@0JO7uyA3cW_k!J`wEC2ui07*qoM6N<$f+!j-NdN!< literal 0 HcmV?d00001 diff --git a/assets/textures/HAS/HAS Creature Pack 1.2/Rampart/RampartSpriteSheet16.png b/assets/textures/HAS/HAS Creature Pack 1.2/Rampart/RampartSpriteSheet16.png new file mode 100644 index 0000000000000000000000000000000000000000..1df4994010088366a044962a9ca1b4fcfb51d049 GIT binary patch literal 525 zcmV+o0`mQdP)Px$$4Nv%R9J=WmA^{@VI0OEBVKN3D;gz&Ajqi;8Wfx}nwqZGlLChZhX!XSagcBb zqt&rM2y6?ICW8Zo)I~!G@(=KQ8{QV*>%G_4G=Gr8J#f4~zVGL`=RLk~fG1C$JbC&N zAsXYOIA3ITWyj4{Rt(O98qvDDQa6ZaO8oz`bb-e|Ns==Hi->psE=f1%gwqS5M% z72vPx%P)S5VR9J=Wlrd-%Q5eVn6?u69H^niOLW|%{CLoeR&_%2`IY{i7h(d-SK}2po z96|<>OsSm;0U=m88i-DUp#+*Ck`B#*Txvi_*FtjV@Hyx^-#zczgsSb3KOFDAckln* z_x;|x17@0OrkQ5?Eyg&BQNBOjs{WH0<3vQn7$>vQq2lXzB+pHgM~r73;yHD~>L0*y zMz}P3k96ug9A^Zpe=u=E#yC072#j&6nJpNls&DSER{t*~cJ12LE3~~?By|_%ILzO( zheSlQy;-Ee=eI;e)U$_Y{}jm$3J7xCvxj6hI%GCF$3h5$IB6Xx{S>DL$QUPUBSY3k zhCV#I?Q8t$%_K3#>DG;ecLgO=0jdzyHAneRa*Cz_==%rQodF)aY@)t%2mmljRRF+B z;sOBR&O_b1f?m42zKY%TRcz%`0D#AN16|7o0OXQ!Fvh9d+egi8p=P#xJEHovr5GZS zD02E6eErf#Boc+T6!U=!0|*@bFO%1umlM=?4w1Ti(Tnv$8US$j)knDQcup^*y_dS~ zcup&U4$Rl8Bi}NTO87w5Cfqq{TK~%NHd2}rst~-7dQ1hDX%_ZaBgL1R&d1Z;FfS-Wn z29EPD$2DKBPwlSHzm-pU0A;@zgZwgpEMvSPH>}110AvVR#&{)Yftpjy|H?VB9|#4Q wWsFx;fI(9I>M_m+y27=l#HZ<>)(Zgm0Yvk@gR2|(r2qf`07*qoM6N<$f|5Bd(f|Me literal 0 HcmV?d00001 diff --git a/assets/textures/HAS/HAS Creature Pack 1.2/Rampart/RampartSpriteSheet18.png b/assets/textures/HAS/HAS Creature Pack 1.2/Rampart/RampartSpriteSheet18.png new file mode 100644 index 0000000000000000000000000000000000000000..6fb00c8626da601b711d67ab1701b9794a718ae7 GIT binary patch literal 96 zcmeAS@N?(olHy`uVBq!ia0vp^4nQox!3HFkJ+IURQjEnx?oJHr&dIz4a-=+6977^n p-yURS1oD~`{;$vTZ~!s$*#ra_7;A3@9sqI}JYD@<);T3K0RXo@7CQg{ literal 0 HcmV?d00001 diff --git a/assets/textures/HAS/HAS Creature Pack 1.2/Rampart/RampartSpriteSheet19.png b/assets/textures/HAS/HAS Creature Pack 1.2/Rampart/RampartSpriteSheet19.png new file mode 100644 index 0000000000000000000000000000000000000000..3a726126d9e4565f29345e6aa6f87b92c8ec81cc GIT binary patch literal 515 zcmV+e0{s1nP)Px$y-7qtR9J=8mN9F>KorMc#6E8A*r5o{Zn_i#Lh0aQC+pxKSVH>&oH_`C&_(QHeOihc)^TdqTiTrP=8?vC0%IC6L7_wvuX|K$Ski-AbkA$ct! zD*}CPx%JV``BR9J=8RWWE3K@@!(!eh%Dzb9?3;bAGf;Y8={8b!Pv)utACe)$(o>ymc?P3x>jecYY z#1U}rJ1ezatS-8-T|mS{rBuXVaDgX}Di{ndQg@6g0UK-@{ZIk&BtXPOzthCV+C08} z{($<66?{5;g?^`*isLHv$D;_o_P>M(3T01l?mMOcIQN}G*%Osg5gTjsxK)_M^xV2l z?Ei&+5XAj^WpQ+{Db7#!Lak^zgG5Xm9c&8yDTnR(jnhxU=hn|d5QmX-a>(zj`f+$7 z78ER#ejWl9E64fC-q4&}xA6Eut_0%nI)|H|Q#+Y?dxV;Xn}q`#XI&@U*j zT8CGy2OLC9aPB)>JFUpysExh}5B&LqsQTZ3{50Z29iS4ZbM0Fd-23^^r%mOzL=_i^qoyASWGJPlI- ze_Q`q?JZ{9DRAyDONSbdZnC0F06@eVa`z;GK1akFzdJy#*-i*7$pXBMz6qbj)RxLZ cvOVhfUq(ND`AqiHtN;K207*qoM6N<$f+5u>cK`qY literal 0 HcmV?d00001 diff --git a/assets/textures/HAS/HAS Creature Pack 1.2/Rampart/RampartSpriteSheet21.png b/assets/textures/HAS/HAS Creature Pack 1.2/Rampart/RampartSpriteSheet21.png new file mode 100644 index 0000000000000000000000000000000000000000..8fa6b9e756db772119389328d9daf6cb08a78c2b GIT binary patch literal 542 zcmV+(0^$9MP)Px$*hxe|R9J=WmcMJlKorMcI-KbrQ3}p(3Z;;#Sm>f1S{Dlii`GBD$<3*Y_z$!N zi_i{I!IGs=x`m3=ERtC$^^XWyUKd|@i7}qNKq>g(@N##b@B49gi2z&M+SWETA#@Z% z$G?sv3EPPpqy(c96+*|`RykHQj+Zf2Ude>e@#rvzh=}E49ud(GLI@onZmwd3isM!N zZ<>cp5w$QhoAls&_62+CeE zdJK;*Z;(pu%JH-VqhTB8(|(|e&3b9=Zmi;E0#AycPy0U4`)hTC&~Y?uBmbquWs?u{ zTt_DOr1*`CNR=ZI5-Jz-eqWZ4YqU1%<+`fzBCJa0xBfLQFq`!JyH5S{69b-KEvfrU z{YIq_nCo=Sz%zYCu3Jywd9J3ys`_6_f{qWr^D?{Nte0>;?FSfsg=j9Uslq1Vf9We= zWHSH&VA+oU#y7GVuxuyx6!4%(gUqs>z;jqfg;mwye}t+W;K_&9@Ww@J+__~tzGE8m zJh!%37vMe5)rjXY5I-=-+()ARsS;HH03r0dfjNe=!hsL)v2c(JyN}{&ttu~JO8)tA gs)i>eo&Rh82NOI(0*PshT>t<807*qoM6N<$f*P*-SpWb4 literal 0 HcmV?d00001 diff --git a/assets/textures/HAS/HAS Creature Pack 1.2/Rampart/RampartSpriteSheet22.png b/assets/textures/HAS/HAS Creature Pack 1.2/Rampart/RampartSpriteSheet22.png new file mode 100644 index 0000000000000000000000000000000000000000..fa9af8308de6760d1e778cce4c8c7d6458dcbaa8 GIT binary patch literal 560 zcmV-00?+-4P)Px$>PbXFR9J=8l`%`hKp2MKhz z16EKR9Et^@i>pwOf-c3mAo?FnZaJrm$@Nn2Qd{+d&};HN@B1aZ$pIEc#DqKq=MV%RC~dn4f)C@kB(a?PPW!SSGqu&Qy?GlACkl?AuJJa0 z#acE40O2}YsDN|dA!4F_;Guol2j{*q3jjJ!9Xzf7k7*DwvAJFlk9RHcKI#fJO4HuI zX{_mcJBz=GhPuNO1ggjclQUhi)?_y0L#6 zu1ni4Ztn-$_)lYXoH}?~e_M@*ZW9~(r(YUGY$7V}qi*b+?9)X@)|n*Rg`UWs3YTPl$N0000Px%I7vi7R9J=ORljQ#K^T2|gkf4s3khr^%5}F8goA(tw7FE8;);cY<5HzcWf3?~ zEE4k%1R=6TiW4ESm8Ecy2$#Y$B&1mgiGM@(rui)NJLcwg_Q&mAp?)yz{CaP`dGlr# z$Os`MWzG3#LkLM9-fqw=MJUTPYkZ{)*))qEbedCdVjlQZ0hEfJcIOD&>y7{8DhMG- zFWmQP^JU>{ki=DnZ(jI{K2Wb!F&y6E#q&Cb!#fBeNvYV`KMV`Gz{WLA!t;&=;CI4N zKfq0Njh{b0V)soOr=Q;;>IZN=zwpV=l1pzZ6+1=ng+d5PPoH>na=b^kgYKApi&`#? zD=!~&5D_(3SBQwF&d21PzzZSiab=*Nbf46yCadJ|#U_ zPFM&@&DE7$i`uyK1hT}`=Ono(?_t;+lqvw%%h;B&CJ&FNiJ2sznMa<(NOO>huP7Be zuIB>)>b2^KgzHMhPToHOb0zU`EZ)CoO`P#jKfvLX?wka{ln1u8kgnK#f|y_0KnheMepo< zBtjPc&))_IohBYWeuS%wOSC&jR{TOzq8y*XZ|F6a0H9?|Px$&q+i`NQgv3gCK;U5HvXTCkR2%6w%Lo^7QL(ov82yqSej#JOO(>n{JAN=6)e!tJ}eedyp@9yB=7GtvP zR%F?&{1$K3B&P)kE)t02-Sp2~$1Xo!$1KmK2LeO_aeD6^y1fbb@?3 zLATr(i3zbrHD=`<)35ElS}CiJwe#9u)#HWtnuU=b6x=k{DSlS{E-l=8?&9C^5)JxU zUt3iR7b{f&M2{6K)rlL`3NK9WHvS1-PyfV2h_SYa6#-`aEU&>u@YD25dV#yb1=U7N zy;MX@_%s1VycJs{Z$&>a+(m8giQWNDzWq<}&C}){@z2jiE%hx9HrQ*K; Xj37JwIU8bA00000NkvXXu0mjf0m|@p literal 0 HcmV?d00001 diff --git a/assets/textures/HAS/HAS Creature Pack 1.2/Rampart/RampartSpriteSheet26.png b/assets/textures/HAS/HAS Creature Pack 1.2/Rampart/RampartSpriteSheet26.png new file mode 100644 index 0000000000000000000000000000000000000000..949955e0561313996e9a4483fa6c5cdf15ee9a5f GIT binary patch literal 680 zcmV;Z0$2TsP)Px%Vo5|nR9J=WmOp4yK^(_F335D~IqHf9hNbPNyV9PAzUUjDr_f9T*3jvRNt@Aq@R zdv|#c{>NlO2uliK$&1bpj%v_Lx4yE)(n5G-pGorr-3$QMSGH*VI;GjF1K>FAj@)kA zMm5LR#wm-TWdPj|MU%cgrpXVCYS3%(Ptt2zH^~CV$=Ao_R%Az33R&6uXiL9GQ3y-! zZ*S=QN+BzSu;i6TH;3|=Ha}<@>~6*Y`0(i+0HJ7-*@IO*-w(dK8ROfJ-vG=Wtg>_b zMr#2Y)tt-2>o+aF*C%-10?crnb|7CYb9A@|z~#?>Tn+vmWyMlFMM7 zT?La1aLF)`B|AerQP(0fQ~_$i=A9D4I@6{BXuhpcvNHgBES^YHvNJq?`5u6Lv8?aq zsC*TQ1@J0)*EOb2m&xr2^X^m%S=~3s&AaB+s^8l;qH=$GLpP-}+c^0`Sn}k{cX{vn znx5~)_cC2iv3}Ade07OfB+UHWj84iI%f5F}2usEyVF2yXch|?nH;Xf`6Ts2o9`Qul z-)m6y%|)mMsPI!v$1*caW_)eHxcKS;lxuZ8)~M!szD8YNf-0e8XDHX|u3dDT zc0jd3g#avumMPcjJiLF$Px@H->d)9ubo~@oA0eIs9-Os7;mT27L+D54YrW&NQ;yS4 zEnG{a9H*V?ruS|@M}kp6&m8ZZg7(YtJ9i%bfNJ5Ga4UJL`c==#6jqbRw-jpj=L O0000Px%fk{L`R9J=WR?lk_K@|QXWf+8_2L%z05K1qJ5NVKBqmfcbMOysPD>^DOhZU<|GTjf*1%j0m-3g+C#Al#d-)MG9KC)cQ-q`lN2#XA3WHd zo$q@y?|rjxfPLFHPa}kKLMZ>&>-gJtz&#)~e(v-YgipjAiTEEA60*M#Liy_ZS*)#o z#>vPj0Fcj-L=F?9Nz5&kz*sZn$>!n$pf$H^@S@t625#`>`5C^xVsbH7eDjkNLiyzQ zi0{#`bM!?Lyj=yU@VZB`-S|Crps4WM53d0XB9h4A$o;eU`s7_uT*=|1Ai>X7Rq?~u zzFoufrCxr68>*pP= zLty`AcXtAVHsI#4Z{Gb~2Oku_$4vqNjm0u7(*OXZvU#s5ErBOSli1kYl4I3+1F`;a z%iPD0Zewn#ALb03c7h_(4nMukHB6OpmJ4wc@JQ$84?vMm8*_witm0ckg;Yc zmCeI44HRk>Sf+s&xvOX_mUZ$ELMX4+8}i*U4Opguv2-sMirb#?bnrpevKc}sw@d@6 zY#zyh7>*r1tkwGop*$0fqfo0zoG>BzpnHU7$ zi{YtV_cX?u(}h|^;x;z794cb0IUSHl$?b(7OZNs9!WXX*e}}~0>RfGa3hE?C-1>?s t{{{B{Lbu|*vZ1WPx%8%ab#R9J=WmcL8GKorNnEph}wa8MAb5jr?UmlRP6Dk8MtkHu2K!9lE>n;-~o zilG03lcRJHTy(^pZvq!3UvtA)oJi@7s52f&ciA zhG0zNjA{J0>xdI!dq~QlvB4SWDWhd0;u;u-kJ>{*1glp^c&y%|FWnCS?mC@WhU3%| zK_a3C0E`XJp!RZ)hgt;yLa{2IF^#KqTIs=K043ks9&w?t4a7B2#piPtN@csLPRl(o zrtziuX-?yEadN;J(|GUJI1e+9^bBJfpEMWv#mND$-5hiAejNVn{GE$6erFF!#x$PK zS$KMW1psty3}fN)6kQv`?nBk9BiCKO5b>62008c?&zLA|Bb`}xHRAHBh}wh40LQ5( zN@W|nn~MN|_S+B71$>R7m`D_o@%pR@eb)Roo??GzO=>`t9;l862WezzE$(T&f<`b7 z?`LIvm?PlV@@t4|Q71uQ v>c!Mhp=Ca9e!%->$avXVP`MnG{7>?q>vR>W@!PS800000NkvXXu0mjfWYHWh literal 0 HcmV?d00001 diff --git a/assets/textures/HAS/HAS Creature Pack 1.2/Rampart/RampartSpriteSheet29.png b/assets/textures/HAS/HAS Creature Pack 1.2/Rampart/RampartSpriteSheet29.png new file mode 100644 index 0000000000000000000000000000000000000000..a58b3246fa7a0c2e263a7178ee6ea18374387b50 GIT binary patch literal 615 zcmV-t0+{`YP)Px%AxT6*R9J=WR55GYP!Rr7$|1T1Iwm#<)5)GJ3ULhyAw$5Bp$REu@Z|i1u9-4) zaOp3|G?U88;6$Q4<34)-gocr-hBrw zvBVNf%m9(WL z2L*ZUt@1v1+D#7oHs7TK{`c-lNr1@UgWW0s;N!&y0Dx)L@$~ic_vt zk0+mhP944q2B`qmV5EqS>%p|@sFZ4Wa{{cJd2Ak@WJ(}I0jKU=D2NR1w3{qn*(dEp z1|RM1q*_yK+Zz@W8C-bzB0eii=E-e$i{DvuD2p7D=jP#o$lx!R-$rVpCahCwD-qO!oJO6-`2K1fJS1e(DGFoDIL_9hdYBGb35(k zlmyk+SLEAJUs0Es4rep$S@}9Y^Kz5?zu^MF*)R8prPS?sDhmJr002ovPDHLkV1h~f B8ax01 literal 0 HcmV?d00001 diff --git a/assets/textures/HAS/HAS Creature Pack 1.2/Rampart/RampartSpriteSheet30.png b/assets/textures/HAS/HAS Creature Pack 1.2/Rampart/RampartSpriteSheet30.png new file mode 100644 index 0000000000000000000000000000000000000000..6fb00c8626da601b711d67ab1701b9794a718ae7 GIT binary patch literal 96 zcmeAS@N?(olHy`uVBq!ia0vp^4nQox!3HFkJ+IURQjEnx?oJHr&dIz4a-=+6977^n p-yURS1oD~`{;$vTZ~!s$*#ra_7;A3@9sqI}JYD@<);T3K0RXo@7CQg{ literal 0 HcmV?d00001 diff --git a/assets/textures/HAS/HAS Creature Pack 1.2/Rampart/RampartSpriteSheet31.png b/assets/textures/HAS/HAS Creature Pack 1.2/Rampart/RampartSpriteSheet31.png new file mode 100644 index 0000000000000000000000000000000000000000..b660f6da96c08b55b9ca5cc479d0166c810fe0a0 GIT binary patch literal 416 zcmV;R0bl-!P)Px$T1iAfR9J=WmN9OFFcgM=5PI@L*IvNt)U{_|;uh`19XfD_ZoNe&rXGNm2{BaN zk}(-d+`(P?sAHVq)+rTIehDEx{5_tZe`A1)E^>-UXxDu%{$E8TboKI~iGGb`Isacpkgozk^8VrhW6?O1}K$O0KHiDDJz8A^cn}jCt^>WOcVj-K~*l>5nWN z!q4Tx*tCj$F=%$tRlJKm7he`~80T_RD4zfrx^(OXr^F4+v-D4RUNx?fC&Y~m<&!U~ zIQOcremi*|-i()pbUG-6Pi(;4Gi+TmW{Z!PrSb>IV4kIDwk^s+!v26X+xBRZCG(^I zfZMAZ0Dw~c1MiozkVAY*OXFhz_goe20GGz@hNvh20000< KMNUMnLSTZDOv9T1 literal 0 HcmV?d00001 diff --git a/assets/textures/HAS/HAS Creature Pack 1.2/Rampart/RampartSpriteSheet32.png b/assets/textures/HAS/HAS Creature Pack 1.2/Rampart/RampartSpriteSheet32.png new file mode 100644 index 0000000000000000000000000000000000000000..4e6053c996b64bb0baa03f30a43684ebd1b6ca53 GIT binary patch literal 499 zcmVPx$tw}^dR9J=WmA`JnFc8KsD7CWCm4z|t)RhP56sZz#QBQe-N+?6rS70j7(1j@z z55UTVGIZ!dM_3{=xC<8r=WP532BdzHh2;3|e&5+T0RD9wF_uW`_ihwofU!hYtD|Hr zky1*@SR%LIztXh{p$xvU!3G#h?P#;1V0@5)|_qCh4g6ZJG^1h=z&fB5KUC(DXi<=Ss(zwvN~8jC(MCD^CswPF}TEDyafte?IL4| zq;3S`5d<5ep2c$rsmg}Imp?WcK$#45;I%h0Nk?rCT^;I)+gGIMjd%-dD&&4KdSsABF)AjB6QK*SmK4XqpXSv)_U`#B>Vf@BIr<25ilA z;mbTd8){{qLNTw&>D?WI#k_{E_t(~#Z4O`lvj(UJx`CVhmQ0|7$EBO>Hge73!{2)W z&yP=7oa59i^R(T!)Eh1#8lJs8a3LB#<6}+@QQ{2m=5Q(O${)KHIGtZ8@BjcX<74M| poBBizr+8ESsIzIS1+jOx@qh7f=qx;1JG%e?002ovPDHLkV1j@<;O77U literal 0 HcmV?d00001 diff --git a/assets/textures/HAS/HAS Creature Pack 1.2/Rampart/RampartSpriteSheet33.png b/assets/textures/HAS/HAS Creature Pack 1.2/Rampart/RampartSpriteSheet33.png new file mode 100644 index 0000000000000000000000000000000000000000..83d4bb9b825b4be07f96199086ee19a3706b255e GIT binary patch literal 547 zcmV+;0^I$HP)Px$-AP12R9J=8Rk3cuFc5v9)XI`domd#7PF?wcPMPu-Wa1YPL;it{Z|IUKUD`b> zQxu7+TRM`V!L8&DaFKDH#0dhylaRskyL<2MjDa(NFyoh0bYm>|h=Bv}sMbBx7ba*ApTaEb{ziQGlg&e7RZ8(?ychpJ%u z-PZ(FzKh_tj-GRhEE4Q{P9>siwPgc+xN3eC6L(Y@(V1^5U^sItO*(BBfGT*OF_R2v z`Em#9aEbi1(zT*OT8B~5{$r~_>Yyg4^K^CA+q9NzlD`dg=4B1Q-n=?NmP$~~wwa*k zMdnkLqqsmgbFo-vcro*Gl%H}pH9(iY3;*a9@I43XZHjQ_Rv%zrxu^TbR`JB|3pKwi z+$3%v{=a9CjB;KEogFBA@A)p^ybR{SI5@Px$=}AOER9J=8mA_8IFc8MSpkTrfBqkQb6m??l12ARETac-*fEfA?Y`jIMu)vLve>!qnD>kKFew(aftQ$6-P(Mm={Z2jxNA?)5*x}?Olm+bhhlmCjp88bZJJ1El%L=os#>3M)W?7BJ;uN#2?wthA8*e&^ke5}v zmc$_dSn+c4#F3vN#Z#{J`W1`?VqPpeb8CaColN2ovN4-U=;~r0><Do8o9EfI3O) zGG(K@tdN%#k~p*~g7e0scZnUUAyeqv76AaXAvWEo-{a`4&YScmJx@3Bu78rZX`pWkx-kI& xxJl1x`5M5z^jfbeMSqI-q(xiZcdY$e{sZ$&%K4z(&tU)n002ovPDHLkV1k(~2I&9* literal 0 HcmV?d00001 diff --git a/assets/textures/HAS/HAS Creature Pack 1.2/Rampart/RampartSpriteSheet35.png b/assets/textures/HAS/HAS Creature Pack 1.2/Rampart/RampartSpriteSheet35.png new file mode 100644 index 0000000000000000000000000000000000000000..97ef78953c67cb4d2b6e7067a218e3ab5d361b1b GIT binary patch literal 634 zcmV-=0)_pFP)Px%G)Y83R9J=8RgDnULP(t#&(0=fWrZZI@#FCilC;Lt z(=jOCVbgy*JlmiUQjcdPE`pPd|Dw=`QjL|@#g9TCNm@Je-xJmfP^$4JqX1c1wPR7} z1Ax;?5}!cgKO%Onq%C>ZDoE10HIWS2XZ3}UTB*h}@2-3oSS!FpR#wQ$3Q_1gi>GJ4 zjrJA)mOkW)ftfJ4KSbHTM>8F8r|BXAt|CnCzTkXrzS)Q9`H&_I&A|JDMDtG1 z!3Ff;^Ksi($tAySeZ=EQbb&WAa|_T)a6Y|%5u6|^E98p;^V=)y_ObDIal#Bvh#; z?jwTp!^#+Px$uSrBfR9J=Ol`%`hKorOSE#+~8h~O+j1}Uf@HiL?TxH{HR>(YJ&zd*-+0znWu z77B&p&_yg1L!k~;2k8*dy1SMv&p~t4Yc5Sv6A1nx5Z>MI{ojT6azMf&5=6CFSqieeR6r&wBjv)ZnR^Wg@}H z`=;*)L+XJiC^=g+pIf47+yES zYL2-4RXzuNUlE2`V)v?Ow)^OfY+$UG39KwH&BVg+I=MLjAWnakm;V6uTF7r0!K?oR zUd@q|zxF5iUo>+KHrxHk$&`wNd%!nQNXlK0CD`tjd~qtsG}kxw8fp r$C*^3@QeC;@fkG`Lf1Y8rH20kPx%G)Y83R9J<@l(B2uKorJ58~1TTD1}ZLLg6Sz&=yLqp(%xgt{ojbrS9VX3*9n# z%wJGyD0nFt3;~fLONqhQ7~H{0hD3u%>rPp^8ZFnMxkJ9_PA4ah9|&|heed_)r_%%O zIf$4bVq#T#Jqk7u0L1aE;PTuhh?sa=c@6;R|2(tiNaN(uyXGyKUU>83Jpf>EdZ+|i z0U~b$GHk`$_%3=IKdt_fE{eu&Oru};@VAQN${5q=H8%JYaKEmO-EAAN745=zY24Mo zIRoN&R*)cG+XO1WR&7u2fru@&fmQQC#Kd-`Du|dE9_$MuCc?`rAqNi;6Yn;C>kyLf zdAoh_=cFSNLn~9i3VzX)=<&;sI17KPb+6ORu<%>C+_m#TN++w?AcYyCuQ?#QIQ zd>0Lvj<74=reDNBH3X9bs2hyX4&U}54#7p>$@L-) z+-11(=L{fXq8p5sQjkk5gWnBC)?ZHq&5>SHm)yIG~|#mG?1lV3g0X9WWH2= z$+nph4FIic_*V&*K(EYi9K$%CeflvR>w0ItL2u-{)L+mZfXxBvhE literal 0 HcmV?d00001 diff --git a/assets/textures/HAS/HAS Creature Pack 1.2/Rampart/RampartSpriteSheet39.png b/assets/textures/HAS/HAS Creature Pack 1.2/Rampart/RampartSpriteSheet39.png new file mode 100644 index 0000000000000000000000000000000000000000..9733714f1b26faeeb880fdd7eb8d2c14f667ff2f GIT binary patch literal 650 zcmV;50(Jd~P)Px%L`g(JR9J=Wma%ITK@`Tn4aYFObr2Rg77`)k7Bmu2(u&oI5YV$Q{sk!yE4f0B zly-rDP4FOaa9E^MSaJk%MdB7=h2`{8rBTG<*ydS;S?6YF_ICCzh~R^Toq7BFX6C&& zyaoQ7-WcP=7^kB1WxxB|=BN{5)Aw#a1OOa;{r~_-lCi@Wr}f%003aBINRqJ?Z?iF> zW6Rm{6%~q4-eDAf#k22qe5{>d6yL?7dlRnTNVA!D_&mPIVKf1>3dF2@TDsoTfG*BD zB*u(!+F0|ambHm5y7t9chx*+%-P()OccF9LJQ(BjpjIcwIQ6@2VvJKXyeu4mJibT( zghtr_mf;snjvFh_5k}wA@p^69So&h&Jih4WMd|K6?!)yPRvI($a@Ir^dxxjgJ3J*( zTBbDuS${1MLC)%jI`A?nKXuf%$@%{Mu z3vXL5w7y^vX1a>{jnFXpfqJF(S)-!D=TQu=>Z1PWj-36M0Jap3UESh>2mVxohBfl4Uobd}*p}gaCSG@K ku9J7v2@Bg*#{VS$81r;P)Px$`$6e*~S*TG7m;_6tr%})IqogDoL3WB3h z5Q>9>pl~Qc9n=oe;i#TCxHx)biG$5~m*#SR1qELyv`K#N^Sp1;1o)51AVg<`=qzsR zr}!lKvNGbhCQbst+VUm<;OgPTpR1co008@T07|_OR}?Siq14j|(ODK&^bnP+6a=0A zAzbGP+wVg;DgdBibrKbyhmSDt?^M#_Wgg~?c^K7}G?(81NwMR}mq10nhZGbKxOuyqZi+QMM?oLD?BKQ@ns)j{d}6+pTM0$)w!r$_W4D_)vl z-E1;KbT%BlvEk^A5u&r}<6ZW0e-wKW6~XiMJO>}ksvq<~h|V@@Re7G^BA%podgmKh zS*$1x=B z@Z$Oj9za`BKrEj?U#96dKsp%{?TGK0ctZ5Ogd0$(z9tT&h<$~jKf`|lLl_k-1{joD P00000NkvXXu0mjf*pvdg literal 0 HcmV?d00001 diff --git a/assets/textures/HAS/HAS Creature Pack 1.2/Rampart/RampartSpriteSheet41.png b/assets/textures/HAS/HAS Creature Pack 1.2/Rampart/RampartSpriteSheet41.png new file mode 100644 index 0000000000000000000000000000000000000000..81f914921ff64e7ba8444bcd6cfcfba3a122d176 GIT binary patch literal 691 zcmV;k0!;mhP)Px%ZAnByR9J=WRxxNAQ5gO#^7DpLTFBD%5Os*t32h``Dcz)9ES3&+a_rpAE|N(y zWhyNQQV1MK0^$&%P(dPsQkpn44oB0I2D)@qZh0Nj_i{Pj>792&3jN{W?%n&o|9{{A z-LJs^SRF)+6ES`hxWeF7*qGNw0I=;vjEM1VeG>rCA5UQ03nj*H0b#hp;JvVM_a*?y zWeNa*$c6HF+QOC+u(c000~FE;i;}6rVl-0AI6&h;jGOOr`DzDM8kd zFI5r$^wV>nrvPC>D7>?~kG_>a-%7}LckkTx#o->BXJ;1xfabe5fojNQ3NVc)_;Qg_ z;++Cih!}6Rhbq3xif6GVIa=)@(n(D^X=itTRm~Fb+<$!9LC>i9agfBT&f$d@0#u0D z`&N61Z&OpgbbbaN39sEdIehRa@#6nOI;lYj>EWQIcxQg#N>Df6`E9GZx-32{InY0Y Z{{zK`l)260Yjpqs002ovPDHLkV1iMuL9GA) literal 0 HcmV?d00001 diff --git a/assets/textures/HAS/HAS Creature Pack 1.2/Rampart/RampartSpriteSheet42.png b/assets/textures/HAS/HAS Creature Pack 1.2/Rampart/RampartSpriteSheet42.png new file mode 100644 index 0000000000000000000000000000000000000000..9574c68d5a450037a10be9814b1875a6a1c4211a GIT binary patch literal 638 zcmV-^0)hRBP)Px%I7vi7R9J=8l|gG0K@`XTE8#H*5y69}A_S2_D~Q{Jl|V)CG!){YO%GuyOC`Ou2wuZ_7%#qYGCMPwY_Oq!2xMp8@4Yu~ z-o6DcSwun-2{~^ctjHGx0J3Zpg{+70L_${LWdK0u`?1%DFMg-ZM;Fiam|p?nABl`YkB zt^*8RS2Q zk&xY1O%e&2oL)#CIz&P~U0rbwpn3D`d-qUPPOqdb_#~c4$cIad zIi7EgZKma2@%3M~RrBVbOTuOxdH^5qYGGb0!p~Ab^$O?%sM$V1CrN=}u1>gl<9cq5 zS^iY|c$f5+wDJ7;vbC=n9{}Ee{DMJ};?1i~Wltoeng2Cc5{viB;n^cUVW;Iy%@TjV zzk|xc2{zY$t9@4iokQ>{tJyxlPXL|0bfWE82XOlq)x7y4QU&1PgXCY;v^K2%{W*0B zysn%t9&(NXI{A{rAVgIF^=bGl8@>G6?G@q;c8u2#K1fnkxCwKl3ZNbt3)84>JYPxv Y4{C;0?HPx$yGcYrR9J=8mN9F>KorOSvEtyAK|wN?A_y5IODJRr&JG=&I@B+b50Fpckf~#b z&ZUD;x^(I!(pdyMgi<;btq_9tEv5db6(12UUVbc>K)=Cc|G0@l2azw8chHt7;^7+}zM0RXe<1Ue#} zwF_E9mu-O8^5+|H(DCgqFP~pW#I}K^ypeyKCVH8V&iem?n{){Pcz%6jCwfVQ->V#- zx9 z7>|bR_Myj*hZmZbt{^Wk9t{BiaTu_P9BH5}Z|x5hyC#a~sI-IfIVI1JG7lWx(XDwC zf8i~_KX3Whx3Gzno<(WU6_fFN?o_;uztFAAn``OsBkxp}m+>{eCv13Q|Mo$tBD^F* zceTgQ@S?(59p}gs?nt~Ol6{TUT0t4Fa|f96mj1Xa1}gw@^Pu^v5GGLK>wE~=@J9YE z4rURD0ecrKE~L8nyn>&rBpTw4{2f)IA{KQDp9}v79?;KsB>la500000NkvXXu0mjf Ddv4^$ literal 0 HcmV?d00001 diff --git a/assets/textures/HAS/HAS Creature Pack 1.2/Rampart/RampartSpriteSheet44.png b/assets/textures/HAS/HAS Creature Pack 1.2/Rampart/RampartSpriteSheet44.png new file mode 100644 index 0000000000000000000000000000000000000000..04fbc07ff62d6227800e94a8196a2f04358bae8d GIT binary patch literal 577 zcmV-H0>1r;P)Px$`$ooE$qi zi-S;Hq(h+~;%o&wgi?eS%5_NYxSV%M^d$Dd5%1pnzVBY%-7^N{M#86|@Fy7&=BM&x zrk|66%cBNNuT6kpT8m^Z_n05lX`gvV~(2VVH&MMffTkQDJ=jQ2|#mWe- ztq*W_s9Cp&>)32Sa=&DFKGt;=bSGN2LPnjYcU-6TNZl>eIPx%1W80eR9J=WRy}LNP!v6BO9v?>gMwr(MGzb$OArDLnKL+M>R|swet^HCgHuKa zXXzkFm(rn7km4+Y9i)^F1$iCJeZ0iHmk$M@?S-Jc`_4P>o_lT-_>a_J(evx$BxQ|N z2Q3(Z4g4V?#9&5XGXTu7Oy+xTSrLvcUM_x326ikH^_tEX!qHf@e+OS3v~d2WW6_^v zaY@f8i7Uh}jsQbKwdHCpyHsWnxnr5|J+}}R2N=V={GNUNn19S6p2T<{q*#-bmuj!(CsLVEekBStBagin#4yOXa0hCk4 zo-X2ZAI(1J4@YB!qcM!YMs?645e~wiRFe6gOS1w1xaxLz_l2C)1@xueY(T%fh!vvX z1){m9i_V8r_@2uh5RS&U>UQweIHm3?9h8?p?T-+EtzC$)NH~@WVCy1a+XW)0oFueG ze}YASg86VN9YaO&rTCKqXkzyTwZ)wBO-%D@1U6Px%5=lfsR9J=8mc42MK@i9PXF>`q3kA741VONnYmUGbhqXmYs}%7i?g4y>q_FY< zti{5{#wwNM0Yor`Rf>RY3U7|tulsPd$iQ*S&i?*0vp0KpfZ0TPU1~18YwSuIH3b3y z(VX_+Cy`00jA$NzOV&w4jD`bREc_%A07M)H(mWgIYFYSFc{s3|hH^=3Xs!m`yxnAl zI1JEkH2?sk;h;(aHoi5YzAS&!I+Kp7aZe5^zP>%7-|b}WOZWQr1fT(nc{q1Xwqd}z4T)EMEO{f#i^%g8 z#iw@(_wjjd+7aMw2)%W$$yYsoMel%2!=MFa-keas+bLX>V=laFY(U>g$yZqXLrTF|$@GZSEqrWnnU$JZOd3KZdHRjAL4g+evvWe2%I|aOu=ds5C#>@3)oQ_NJ mibi34&*sRnk21plh5rMPx%8A(JzR9J=ORd&ubN4e3w#1N;>oGI=c2 zv*}=XbSWJQg-|-1(!L>-(k-Y%E%nNlWEo27%R3Q6y~lxKj!o8c zxM=|VM~R?dZW=HEEc88=#L-?S!O_gK(DyJs9*c>*C{6Yqevkhj162tKJU(yRQ#MN2 zixOg?@A1tuG-WYa&us$wsuKE^Yj4Ai%7mF9lbCQ)iXreEae$8Pbzf zKvGbhRUQ671&O`1Rn+`9$cLr*igA`oV03gd*wJ{aWH1q!?{~hCBTFL1l@S^|#002ovPDHLkV1k_}5sUx; literal 0 HcmV?d00001 diff --git a/assets/textures/HAS/HAS Creature Pack 1.2/Rampart/RampartSpriteSheet48.png b/assets/textures/HAS/HAS Creature Pack 1.2/Rampart/RampartSpriteSheet48.png new file mode 100644 index 0000000000000000000000000000000000000000..15a91a4265f75be8198b9e7e0bab2cf850e13c9a GIT binary patch literal 370 zcmV-&0ge8NP)Px$EJ;K`R9J=WR6UErKoET%GPi{UTN|;lOP4l3z{2u=g8nOij+Jno&0%v~qi`IA z5YS7rHg25VoRc+(gkxX#vTx_(&1`^xfPjF2fPV=hr6mpkFV8FIxgb*dZI)I|yWF6& z2KY>`35V}Y0zDBPi2Rdp1;5WT{G2Z{yzCFwUJ{@U&+pKb1L?1sE&+?+C zd58f-N~cK-BBiDER literal 0 HcmV?d00001 diff --git a/assets/textures/HAS/HAS Creature Pack 1.2/Rampart/RampartSpriteSheet49.png b/assets/textures/HAS/HAS Creature Pack 1.2/Rampart/RampartSpriteSheet49.png new file mode 100644 index 0000000000000000000000000000000000000000..e0828a5b72f0c43023aba1966b478978d2a8e2e3 GIT binary patch literal 214 zcmeAS@N?(olHy`uVBq!ia0vp^4nQox!3HFkJ+IURQjEnx?oJHr&dIz4awd4XIEF;D zCZ{An{&C)*iIJO`nYnrDy6+CVlN}ChJRL1LgYA|eGp`$S!U9=?3k}N{H~c>%WpPZc z-G^UfK_-L6td<2Anguspxb0M9$TxX$dc(!7JU8moc$*h{a)j|KoxW%seZiLX0rO!! z)&=4v8*a27H8XN}cG;NKVAICJKk~VpeF+9q49ssE8rgc3_geEXOfWGmP-Ne%4s;uX Mr>mdKI;Vst0M8gn_5c6? literal 0 HcmV?d00001 diff --git a/assets/textures/HAS/HAS Creature Pack 1.2/Rampart/RampartSpriteSheet50.png b/assets/textures/HAS/HAS Creature Pack 1.2/Rampart/RampartSpriteSheet50.png new file mode 100644 index 0000000000000000000000000000000000000000..e91a7d006cfc18636c19ef800fa19d89d160ef50 GIT binary patch literal 211 zcmeAS@N?(olHy`uVBq!ia0vp^4nQox!3HFkJ+IURQjEnx?oJHr&dIz4a(X>o977^n zlT(r(|2S{Z#K_Ie%-lS6-FJuG$qolLo{pBB!FEfKnb(auVS%i{g@$E}8~&e>+EbHL z^yA6}rk-UDjhia|&opI8o-MbsQID}fSKDG%ivbWn_@d&&yY^s18e`48<>Cu684e^# z%ybh!zLY=y)dIBykahOAgk%mTm@u&2Vr1r(aIY$tV3@Gg?3Pk~Tm#Ty44$rjF6*2U FngFL+OCbON literal 0 HcmV?d00001 diff --git a/assets/textures/HAS/HAS Creature Pack 1.2/Rampart/RampartSpriteSheet51.png b/assets/textures/HAS/HAS Creature Pack 1.2/Rampart/RampartSpriteSheet51.png new file mode 100644 index 0000000000000000000000000000000000000000..22fe537cf3e3a78bf20dc481d8302db77f74bd0f GIT binary patch literal 242 zcmVPx#tVu*cR9J=Wm$3@NAP|OsLy){oHm7dRS$#~`&TgID`asDfs9b0%o>$OsI!}?G z-}6wV^>$)lRseYHhqMk6UhgLsX%W&)1Ed8=!)ic?9wGW-OvT^s#Q~cEA$nNjV2xuF z--50ckaBl1wU#okrJ-xHod~RP07}6rSI^gRp3Aw*|H@xA!A~d4ah19nkoN;BuB)TI s0vtU>X}z8EB{(qC0BHfzsL{W}7c*5>CUD)2`2YX_07*qoM6N<$f^1x3vH$=8 literal 0 HcmV?d00001 diff --git a/assets/textures/HAS/HAS Creature Pack 1.2/Rampart/RampartSpriteSheet52.png b/assets/textures/HAS/HAS Creature Pack 1.2/Rampart/RampartSpriteSheet52.png new file mode 100644 index 0000000000000000000000000000000000000000..86ecfc1d523ec4cf794720559058efc515352d3c GIT binary patch literal 198 zcmeAS@N?(olHy`uVBq!ia0vp^4nQox!3HFkJ+IURQjEnx?oJHr&dIz4avD5c977^n z-%el1cR+#1r9UgTKeW$->bP0cy72eErV4rM` ztjMd0NZ27b5_+&;?MnjcnUm2$GYUtLhC9W|IG*xK(a=SE4Du-he wD}(>{NdE(!Kk{ZjI5LAVhcV~QoBI!?kIq&!)ey0=1iFR6)78&qol`;+0EH4rs{jB1 literal 0 HcmV?d00001 diff --git a/assets/textures/HAS/HAS Creature Pack 1.2/Rampart/RampartSpriteSheet53.png b/assets/textures/HAS/HAS Creature Pack 1.2/Rampart/RampartSpriteSheet53.png new file mode 100644 index 0000000000000000000000000000000000000000..3c12e90b95f0ac1c29e581611f8853e723378e3d GIT binary patch literal 233 zcmeAS@N?(olHy`uVBq!ia0vp^4nQox!3HFkJ+IURQjEnx?oJHr&dIz4au$2KIEF;D zCZ{An{&C)*iIJO`nYnrDy6+CVlN}ChJRL1LgYA|eGp`$S!U9=?3k_vQTr^ zH#1wya5ku6u_s3}5Xag$axTagJ1|YFp!4D6XGL5Kc~LSR$8VrW-88 z?dx-tF=3v=H-$|<92jOTWr(=cS}At(@(ISqHEfYRaSaoDdmsPL@Gf9!zQ`bv!Omln eAoKEWB18C6pT-oA2RneyW$<+Mb6Mw<&;$UZDN%0# literal 0 HcmV?d00001 diff --git a/assets/textures/HAS/HAS Creature Pack 1.2/Rampart/RampartSpriteSheet54.png b/assets/textures/HAS/HAS Creature Pack 1.2/Rampart/RampartSpriteSheet54.png new file mode 100644 index 0000000000000000000000000000000000000000..f220a60df269a7b448f07ec2e95f8029761efafa GIT binary patch literal 258 zcmV+d0sa1oP)Px#yh%hsR9J=WmoW~*APhx6RfKYxZcN#jyK+p{&TN_3dZ2WQgs9sn&8MzJ-e@P* zx3Q5i){YB0W&nWcdehdS!u+`7qAfz3vjExxw4oOu<%pCcCC)d#y-*8~a)fsQ-i5;= zy$d8&pP?3@OuS4$>WVE}>0@=31bqbR)0etp%T~hdDhc`s0Ix-O_wAb8p4e=fj6j`O zZL59tzf#OrcY?8YTv~2|EyW+@+ywE1Md)8of2I2lFugyApWsh%BsB^}C;$Ke07*qo IM6N<$g4v>Nw*UYD literal 0 HcmV?d00001 diff --git a/assets/textures/HAS/HAS Creature Pack 1.2/Rampart/RampartSpriteSheet55.png b/assets/textures/HAS/HAS Creature Pack 1.2/Rampart/RampartSpriteSheet55.png new file mode 100644 index 0000000000000000000000000000000000000000..4d518dcfd81a6c5b4d9403ac1136908ae9b7ef6e GIT binary patch literal 386 zcmV-|0e$|7P)Px$JV``BR9J=WmOX02Fc^kkXZX+oGNsTtQ#KD?0$pms{U<~x>)8{XRNHCG$rmn3-HUR*T@)Ff` z*HS0i#1jcVWeWhn?dqZG_0GpZ%1hMbKClU#vPHG)X6Ld1C0rH>$|9*2;d+Yu>7IL%`ot|!jCIfl-=-X8U?>F@jv2@%lQ^KQdw9&?(<&Jv+~sDEn$M1n`l zDG%2Z9xbQeI>Auh=I_D>3#c*Fq+XM^$eaE?e6YZ8r|bSdn!2Bg%y?dTj@=3V+6I`g guS93~e}4ns0h#_;{#vJxP5=M^07*qoM6N<$f>^7vU;qFB literal 0 HcmV?d00001 diff --git a/assets/textures/HAS/HAS Creature Pack 1.2/Rampart/RampartSpriteSheet56.png b/assets/textures/HAS/HAS Creature Pack 1.2/Rampart/RampartSpriteSheet56.png new file mode 100644 index 0000000000000000000000000000000000000000..bda16daadb1b53c69730a55255681a235bdc0c28 GIT binary patch literal 455 zcmV;&0XY7NP)Px$fk{L`R9J=Wm9c8VP!xuLI~?x=I9U+7IY}KdxCn)G$s4$J$Wnuon{(eloOFhrqUj`a#X!hMyG?wvA!X99v?le63w#%34!>I4s^B5tQo zdm9$jVp)dew&eQb^%($gf0LKrmfMokrSpm7lcw+_`Oyhj%}3nu3~qRaoC4heqMaua zT*vhhF^V(Lf-wz@zLS1H%~$!K%9lo}!9gJQUzx{TXKD1? x`4=bMy=p7#K}zq7;P*8^h0`A5V)%bQ0pBZkWX2GV;)nnM002ovPDHLkV1kZ0&mI5( literal 0 HcmV?d00001 diff --git a/assets/textures/HAS/HAS Creature Pack 1.2/Rampart/RampartSpriteSheet57.png b/assets/textures/HAS/HAS Creature Pack 1.2/Rampart/RampartSpriteSheet57.png new file mode 100644 index 0000000000000000000000000000000000000000..43c3846ff3a16b365931eee504cf63f9ff19cc3e GIT binary patch literal 477 zcmV<30V4j1P)Px$mq|oHR9J=WRxxYBKp1^GocRGx7Np%ATA@RRE<(XBSv$E)p^B56e?y#fkap`2 za50Nhm(oJ9P#jv37Mwd(p?n?W3&-V>=$R^19|SIU_uiN9G zW16B(B{0Fw563w;Zp~Y`?4O|jKEv152*ARG}EXp(rljn>RMV zR8I(trjPx$=1D|BR9J=WR=-OEQ5^r+@Vc?UsX%B6mx2NVmq4(^waNVmQkt|y`VVporyQcT z{s0$UoC1jq(Z!+UC}?nqChs7=4e_q$-M#ajrzF$|-tgY>{d~T^Ip80Q3C1*HOrv@0 zMCL7^3TLopI|%?--np~iENe7#f0t%WC_=T0jA>-(dDPMu0KS8_9{PCwJO%*N(ibrF zyemly2_7_K8c{Dr)Ju_HA{f)?EmxpM=8{C)Y%@X8t8M$<$XwD}uHeh#^=(qpJUhUP zOtq4JRg`gb2XSN?C-yyB+{5|mDGoN4@pOL;0LU~>&>h63x`v*&yF@&be0R+hCj)?3 zwPL>;dLFTAMLLJvPP93!Z=wEd;^V0A%i(k|THJ%R`3}}!!LZyK)A7<5eFlCKD((@P z-_jkxvu(DMFx$zoz*OK>MH#qrynBY_79MxcFf6ymY-K@M)+iFIR?r>9$AT9-P#JvQ z_zasj>-5sO^_^qUmY=oKK1Hv#X|1&HYDqu)An!75?!UN4CfU2lyhv065SJNGoN5B6 z1=r<=7vQCHOW9_^)(=EBElHRvhJkbWIXiGFGOsqClm9b=SLgjM(SpP8*HU-fs{y&g u*oW0t=8z@8X&ls%F!o`!19ANM4)_9Cxnm7Dw?5tg0000Px%14%?dR9J=WRy#`rK@k3YFm7p)NgxS zm`Jb}_gBzo9}o$y>nQ-hSnkB)?VOYihfS}eza4pdKLr42R^n(@;*MhcHMA7q_I?VQ zkw&u;hb)_TeBZM8pyj6S%`7uY?gy0qUI6_=ISzYbvcy1n+ubRA2>RI zNN_%pfo7y}S2_m(tV|49-(GUzpiNHq?dWH$`j2U0frG$YLb zuy}C{8Et~hVN4#bTmQX+2WkL-q4{g9Ud`aDd;kEL9X`;BcLAK99b zw!ZU;45r6xzAtpT>j{dm_IkSx^726>_-T9B>Yz@?v7u%8X?xe|giclHv{=q>5+UvV z6snyMok(QW5w37oI>+e1DP-Bi^V|_87d}rjHBZXMMz=O_2je&SuiAGjLN^~_x-|Cz X^%XQa2yy*800000NkvXXu0mjf#L@(h literal 0 HcmV?d00001 diff --git a/assets/textures/HAS/HAS Creature Pack 1.2/Rampart/RampartSpriteSheet60.png b/assets/textures/HAS/HAS Creature Pack 1.2/Rampart/RampartSpriteSheet60.png new file mode 100644 index 0000000000000000000000000000000000000000..6fb00c8626da601b711d67ab1701b9794a718ae7 GIT binary patch literal 96 zcmeAS@N?(olHy`uVBq!ia0vp^4nQox!3HFkJ+IURQjEnx?oJHr&dIz4a-=+6977^n p-yURS1oD~`{;$vTZ~!s$*#ra_7;A3@9sqI}JYD@<);T3K0RXo@7CQg{ literal 0 HcmV?d00001 diff --git a/assets/textures/HAS/HAS Creature Pack 1.2/Rampart/RampartSpriteSheet61.png b/assets/textures/HAS/HAS Creature Pack 1.2/Rampart/RampartSpriteSheet61.png new file mode 100644 index 0000000000000000000000000000000000000000..a352780bc7bf7a3adb9f5d9de930226d13c2ab8b GIT binary patch literal 470 zcmV;{0V)28P)Px$kV!;AR9J=Wl))Y>K!k zt1U_E;;5E5IIQMkwzQ@##UEhJk?r5i_r4_(u zB7`X|+acBy#dT|j5T?v*LHBp%by=E@8|DNKAM$RM}7gjKEp zFurvOK=IDvq;RWiiW7rAMh!1)ydi`s=N2;hVs9(0&#~@Kta1g{t<4Hy?pwC=dFR-+p-ZBo&D?%l^Jz9RsPLI`5sg{%ibSdG$J`zMJANItV-e0h%jk=J=p5rvLx| M07*qoM6N<$f&r1+6#xJL literal 0 HcmV?d00001 diff --git a/assets/textures/HAS/HAS Creature Pack 1.2/Rampart/RampartSpriteSheet62.png b/assets/textures/HAS/HAS Creature Pack 1.2/Rampart/RampartSpriteSheet62.png new file mode 100644 index 0000000000000000000000000000000000000000..678f0d9d7f33fc7112614af553fcb72d61aa2bdf GIT binary patch literal 603 zcmV-h0;K(kP)Px%6-h)vR9J=WmBDKhK@`S+Dci{wyouK+N>wn3SfQeY-fdbB0l||8Q+g2TK|M$j z1j#9e(uRU1-h@U1(w2DXv5;Clcxc&6w@~6z5b7Ubx|i{wGwzNXuw5Hd$On&Q-+b@; z-n^aNg)X}2;$I*$mPH6#3Smo?Q}>y%Z0GyO6%fLfZevf@RyL%ntF3HEx3L$}>{S2Q z0*bG$h0>x7<~rR!mOzkKC@sp}&8pnptV;8VcC3FK0mTW%`cgrzFBMwWn)(0fpD+{q z```Jv{1SlSJJ0a_W+F;J<%O_izF5&~Q;+WAxE}qdPmxUa0faP!u%+XAq|c}D{bnMn z$<^wMw)yv%4J4C&oV;?6>$e~OF|D9LFzI$0EPzAI;NlB5Aov;Fpj^a8u(Cu&yAr> zq`=(TPXPsU1AwjtsJwcLv)uq-WM&nB`e%oCwNIK;A07Pb4IHI^LI_(0f=4Ylz z_n*-MK?DV|qk}EqVFjh5c#iA+UJHB!CMNSbe?=!Z6M$j;gV&-cY?-H;;4FSNt&kCLhR|Jw*9OPSE$8002ovPDHLkV1kDlC4m3{ literal 0 HcmV?d00001 diff --git a/assets/textures/HAS/HAS Creature Pack 1.2/Rampart/RampartSpriteSheet63.png b/assets/textures/HAS/HAS Creature Pack 1.2/Rampart/RampartSpriteSheet63.png new file mode 100644 index 0000000000000000000000000000000000000000..96e667c42e9639130de969259b6e5a08102dabce GIT binary patch literal 696 zcmV;p0!RIcP)Px%a!Eu%R9J=0mN94(Q5eVn3E}kwHz$`6grv(2LIYau)J4$P4xKuPgWgn}s)J;4 zaS9^!2q<+cSSd(aPK4kjBo@I62`88YOFRlfMNn`!o=HCkedo*NF1brg;s+1zzTEHs z{l72o%omVZSc2P!xX&ys`GbrpWE3l86f0eg z1Q8HhS8UhN20R*=pG}iI*dV-ogajAp7|8_(5fIM}Y+%?1JbW0%3gz?y$+^H_SOIx} z0~r{$0T-Lo3v^K3qJ!#I@S{1bz$AJ3sED<@oul3DoG;szmti965D419sQ8z+F7(}j zIlbU4ag>P2v%dITYadUaJb-2G z0|4~=1{$BfbkvuJQLBA+*cbrZy|?Kkva8F`^BcIaas>czF?}5Qa&H5pmCbFx`I67*F=6vc?zaczY%XZug&%!_F zw#JyUK0ST1i;ap4d4gu6>2Bb9KhrV~0Ik+f?cMti8t1kamNy$swA(Fw{q|k>@Z~wT zBY$c@O(sN6Px%97#k$R9J=Wl+Q~WK@`WofjF+wu1j_6;+WS%2)9TOKUC`}Tdl@B7|v z0`#LF{pbgP!ptlf^8{m_pd8&7W@dZJyY_w-4aPjtYF~-k?vWs{wtFO6?JG^R7rbll zXVD;l&gIIMP;o*+1YRHp7S_Eb)T0vWWKaGr|~A| z%9_KF|7NR$+{+izKj(2qt#7tE2=cz*JkH1kn9a{G{r~{x-;Sf&IKbq1AfK;%`d~E! z0G-Y+{H%Y+#AE>g9?iM1ruRzqD;DP8tNyhmsmqiLFq`kx8UTQ)*Tbkbfcilb-)j33 ztWUquOsH>CjfXf_*5=*!Uv>FUT4vWzfTFZG2LO1t`a>EV8yiU~*Mf{tJeG51DK@@* zMDx52;GcgWd70V*%;rIEl!QXg<6@BaqlBIzV_p>GMzOY9>f(dEf3IQ2Jdu{Qd8gq? zgY&q^m>1cWnFSC6(3%6l?d?rhG3Rm7NQM6gh}343dw^S4HO$(>lT-VoIt!b3&f{V> wI}n*U%L@$Y-!VkGunzGAP8xAw)AW~GcLXa8!p8X3ZvX%Q07*qoM6N<$f-eatvH$=8 literal 0 HcmV?d00001 diff --git a/assets/textures/HAS/HAS Creature Pack 1.2/Rampart/RampartSpriteSheet65.png b/assets/textures/HAS/HAS Creature Pack 1.2/Rampart/RampartSpriteSheet65.png new file mode 100644 index 0000000000000000000000000000000000000000..625043eb78311bb930f2bd71bcd98cbb27f4ae93 GIT binary patch literal 632 zcmV-;0*C#HP)Px%GD$>1R9J=WlfP>dVHn3hh4A(SSBETBkTy#YiiM&UK}VYwA&VWHOmI+(ckUAMf2o1w$cUIPQJld%w^7 zJfG)17-^)DMgnq+d4w>e5QbE1YMxun4>Ps@BOwgg>7L8_!HHCb*AGr)r+e;$5~oWI zQ5CG-RFUm*@f-a^aOU3u2rmS@dv8SJKae^Q*kg*cR3qz(|mkWxx{v{#l# zd*#UDbshZ^h;cB6@+*1)ctPmabsg31iGmmfPzN&V7A1j5f*A6vuBpeHD2P$N#2~jw2Qcmo9Yn7`rGoT&Klsx4#ND|Z0Q>br03OX;W&IEu-&*X{ zkKJS&3$woDgZ}FJM_#>n>VBWQops0WSD%FnSL6Ie+&3>D^L787c3->wGsuq8+7cLSckE=59AF}!{s0M$LE?Boqvr(J-8ZCl0c)I=?= z=qSH!TSXy^S{%UO4FbqcP0;G}fMkF=1tBi4ehB$fKmqV|3&3&up@6n+6$48JH3<4` z+bTBO-)pxrH))-AYY_ko#K>{_Jej}m&NTpi{$K+fr|*NP^N$UZNQ^cwyZ;xwwEovJ STF~eK0000Px%5J^NqR9J=8l(B2uP!PsHnexyOTn`;eXo(R70`ZiH1VQOwGA3S3mkb_CP3AzB zWGWr9q<=yRrAxt3Nb4zkASBcU8yDgPj7$sxlOd!X#DnBIv`@%SPqO5;5EsQf+KHToUa_(qJ^MNL^#h6Y-%cOp* zM*UWeik3Olg4-J}+-#1+FU-#oV>(UmJomL`61=QmlRu*S^#d-uJv=pL0Ki=vW(5FH zn9ZYoVdK%(60YB#!dr!?JOH#WY{(T%iudYQc0$oI>G)ue)=Mix*%B2HRq)fJdAV{) z^Rj+r23009sH%J%UQ{40Ue=$HVZ*H8vfJ~)!tvwJ17(1y{Fje!QstHU8PloXstvWu z@xh+&OnxuOM;LEBnNF2g>Q^OTVSbK^mg$?KQ3V9?qvnV35tok|U)G-i0L~rFFe~8P z(HPUIFq=m%JEhWy+{3K$T=)Qf|EEEGmPx%lu1NER9J=8mO*F}K@^7nEi&vO#2_M4DwaT@&_JLGhComVLN0DEK?M&vNS2-p zq9_PO(Sz;Hle87-MF(EZ0D$_BCLBko%kF(ycS`~QqR9dPz>gn=|M`1Y@O$~Q zU;_)d*=VwWPo<~06us4i1kH35N#egZRrjGVA6&M?gL%ZUH$WXT!>M zcR^OQuGH}3gZMjg!XX?S9*H`wX0c!yh>QO2~D1h5RR2 zlsBwu9hpRo9>8?(E20Phw%sv}TpR$fu(-Bj8L1v^KR&2`*B6$Nf{}}xDs4H&R0-6% zJ{>H2T#GPrakE?eiTEJ?-4~$rwe61i_1kw-Zm6ab88B9T3i@yOe}noNlu71;!~g&Q M07*qoM6N<$f*{#e=l}o! literal 0 HcmV?d00001 diff --git a/assets/textures/HAS/HAS Creature Pack 1.2/Rampart/RampartSpriteSheet69.png b/assets/textures/HAS/HAS Creature Pack 1.2/Rampart/RampartSpriteSheet69.png new file mode 100644 index 0000000000000000000000000000000000000000..5d2ce1b4ee94638cad99c600d2795d91583837f5 GIT binary patch literal 637 zcmV-@0)qXCP)Px%H%UZ6R9J=WmOn@vQ5?s=ad_O&ibE%%CN&sk$3O% z`F`K;cfWggzBUFNle5QCoAE@`QJN||w~d`i!2mr9FL<#qkT zLaT_(kPw5WlQvB!ZOYHF|E#^A4lIC-*Y#J?XsL*zdA(Ak^-9rOMAYQ{_$bLo<%4u& zMU07X^`w9w)eAf}djP;2o3?{jQyF|(Ex~mgF;Pf`58~R%ZQsc{?mdZkDYw->!GVq@hF;KQ^XR8I;p zZ3mBLpW^D{v9tsHB1#A7@}}(|m9X$`ZX91$%GlgH0Dy3wRgMs&sbbyp&y_mBk7oye z?XK}LUVv4Pg%$6`+4q`v9#+9t-qlP`ht>7>eFRL~@sdv^Ea?V9h(WD*FLpNGB0KS> z>Du+r8|?3X_U1=YgXrsd2mpAounyo)p<7}30=BAgD=8+%k_Vu)gUarJ*iC?X2ZXV@ z{zV&nki!gxVT%JUyE zKI>?Ue+NsRZ;_dW<)+_&$OVi8dDm^^qwucV$Y(~L$Ha*Uu@thP|Azk! X%qX;8Jzewq00000NkvXXu0mjf&Z0M- literal 0 HcmV?d00001 diff --git a/assets/textures/HAS/HAS Creature Pack 1.2/Rampart/RampartSpriteSheet7.png b/assets/textures/HAS/HAS Creature Pack 1.2/Rampart/RampartSpriteSheet7.png new file mode 100644 index 0000000000000000000000000000000000000000..2149a0cfcefc78d9cda2090abee879d5a39c71ae GIT binary patch literal 389 zcmV;00eb$4P)Px$KS@MER9J=WmBDJmFbsxO2#Wm#Wn%|J`e=Qu!5*c@(%VkEr36~qM@W;4cE}VQ z&5rG+kU}E}L6$%1x1uBfi!HX;Vozd-iVzju8=qaklsKXyHrJj|JX9mtyr}|Y+}^`} zh(BG3PM80CnB{nC6US<2wsXFA_ok^K&o#B}ZN&+irtafDv-$HCpfH*M0LrR{k2e_Q z+xE69jHa^c*s`hzJhO$-z`8;j^1S0?v;!ZMyUd+-t;O(&ipmdz%*?jE# zFKdNr4<>-00{idZJID@eD2yKL@fDYRc3Af@&N0T@aYRKnAL3jZq<&Y9OfEb^0HUJ5 z5e9&MoTGDicuLi9kN#eO9HG?TkNgOwuv7U*=%0Lmxh+=z*jQ|Z|Cy*^PF}L!9KHrb jCwM~M$2xPo`~>_05le)biN*@-00000NkvXXu0mjf#h0<6 literal 0 HcmV?d00001 diff --git a/assets/textures/HAS/HAS Creature Pack 1.2/Rampart/RampartSpriteSheet70.png b/assets/textures/HAS/HAS Creature Pack 1.2/Rampart/RampartSpriteSheet70.png new file mode 100644 index 0000000000000000000000000000000000000000..4af1d09a8b0310450644d992d5d815f7aff9f802 GIT binary patch literal 682 zcmV;b0#*HqP)Px%WJyFpR9J=8ma&TyK@`Tn1R1tCVhRg66vILwkOd)GJOaUkAlR5|f)*Aj7c_JH9PVNRLUhrh{4t$UymIt6))o!@$l&W?Vy{h;4@)? z(WkdK9ZhiAyaE8hvuU>h09LU80C0z6@ST+Ln|GclxilKQ2X{Eeg@@Ph{l&+K-XeU= zK%-`}gS{Pgck4!^Qb`?D@kyMHhf28=oTydsvFeF}ub!xjNxX{H@gVB_GJG}+nsytf zqe%?(ML)cIrZg_&Rcu-f-^0cCv(@s17;HM|M2^Y9-cD?c5QCYQ)`dqetRdrNtd0in zb&(umya=w8ORQ0|rGJ4W^E|I&WjZnsqC)EA!1Gy3y^LwMrQc?~Y9(G}RT}>P*d2~x z6$?r&U&ksIkk73NJ><{ll=~B6FrE(w&u4vs$f7y?o2TxxE z04VjG=FO`PrJh5n=Y0P1)tQU&j4r>OhUcFZ2@81z8!#DuKqHhV;D6!&0Dza_Gw5ME QQUCw|07*qoM6N<$f<<^hDgXcg literal 0 HcmV?d00001 diff --git a/assets/textures/HAS/HAS Creature Pack 1.2/Rampart/RampartSpriteSheet71.png b/assets/textures/HAS/HAS Creature Pack 1.2/Rampart/RampartSpriteSheet71.png new file mode 100644 index 0000000000000000000000000000000000000000..e7fa6a734771133b756de76a113def943a2ceb88 GIT binary patch literal 758 zcmVPx%ut`KgR9J=8mQQFCK@`Tnl=_%Mh&dMzQVLBzzy)<;3a#Kc%mwCk&)U0)RwW4X{LFfu$Oh?p37Fs@A~>Pz~Nw)-=;L{dRS zOtkh6gY}Ya?HyY2raHAe5fknDs@Ps%3${Ref2QJ^h+?5WGDHf;}dNmx&(-r=!NeH zD1cMZdx=lP#BOy3gSjF+*TKT<6rR4^!kf)Xux9+m-4LVx36?q+0H9K9pz&o7_vV-4 zVwK`-L`-Px$+DSw~R9J=OmcL5^VHn51N<6$nOU?d5qRA~cg&G_pK_sFe(8;YK@Xsg+9NJo} zNoZ&>99jgm<(g`0xaf!ffrH%gw)DQdcb?vz?-^JR9K83ue!hP0_4V$6e_oMAgc32X zo?F&9(D&%_LCQ5)M}Ua&_UX2*S8Q~BXXx@GLp`6xPE69IKz1QcK6X iZ3nMazVet~D*hYCyb*VcXs*-%0000Px%OG!jQR9J=Ol|N_{K@`Tn3&&%MG^P@{+#Oq_It1|wA%Rm63^|Y#;RGdDos~r} zV3}$=1>ul%ViBt>DQprV+AQR>xim3Vio^WD!upD1o3S|GFf+TG+sj@S#0LYjZ})w_ zd2inA0ROq=u0xbaNc}ko2G_!w1V8dcngoc1++C{~zIxjqTO%ue$eAVqA|ZR-Eu8mG zG3%57K+TNdd3IpRyfJwTadBZJhT` z0RXG(+lk@4bA=lvrNwi*t>Y|fzA8YP1UPoD+gHAR=PUG9?sc~e4O=fOzO6HL)dX}4 zfccTc_o-F&{vPzp}Ux z;)aY!$nT%tNFpI;%4IoIE=%4q_7e&D^zp+`D-j8K^7FSO67uDPdHLnlBQ-cqACu%W z``Mj)Bl$Md*u~?MGgRh^crkw$OVw%hQN8Uas-g|x7EW@FrRD4FxcI0w+H?WA(pB&mH1_AF|I)t;d2O>)#H&QA->1?rcgk)Q-v9)`;CbP8 rW9;}e{1|3zd{jG)s&X9spN#(le+4Yc@iv|=00000NkvXXu0mjf_|-JZ literal 0 HcmV?d00001 diff --git a/assets/textures/HAS/HAS Creature Pack 1.2/Rampart/RampartSpriteSheet75.png b/assets/textures/HAS/HAS Creature Pack 1.2/Rampart/RampartSpriteSheet75.png new file mode 100644 index 0000000000000000000000000000000000000000..76437efbca85f4f886d4f550b29181fe67c0ffea GIT binary patch literal 755 zcmVPx%tw}^dR9J=WmQ6@hQ547jN*wNDB%)1(A25g@&cc{k1Y?YX@GLO|oe2uvC~aCy z2Ggp+#k5i=TtpBBWxJ=4G>kY*5D!E*6UaDjTu6;Wi*_}$kZEyROz-)|x$i^G5bMB$ z`|i8HbMHO(f9`p}fBUzsLDoqm*!*6p>`BL+1*_W_k>FG`RMR&&r=e2WYakMQ)`C&9 z86v?u*?H{ld_jx14FHU`H!zOTfgUWbtU4;1Dh{YPv09DH`;DYSCA*zkIu0PbdF8H6YR%Mb{<56 zM+bW9PRA{uOqXzCJdxl`OyQ}%AQK7h^^b5Srf?>vaIb%ai3F!V{$wJ-#hl7kiy#tA zB)Huh;Ps_hF6LBj_XcYC+c*0U&Fkz@dAs==fvPM9=QKp3!-livY#Gbha@`~kAHA@Q zzOJA`F^^CrerN>&Kq?xl;h())$B@z_ozD&beB`3-eCK4HYnv(LE?)uwl)rv*T(rJ< zbHMW31^7Bz>&DJJzKg|`Ra+mLng9U&IDa4W53V8H)xAG(w~TOCH>Tgchp(g6xKm_& zC=$o(58oZvZ!BQ@^EW0EJk=L8QXmskT+45LX_kou-??(t@N+PQ+(_8`nB{NgWjdypu_Pgn();0sAGyP5B9Tbz@;`1NVY{+z5D#Z@LdRB@}>^Po_(F^Yr?O z@`e*#%H}qJ$={EaO`0V))fY5UN$2fKm=kX$`#;FmV3hF{e5O@Ko_K lDcGGd0KBy5cj8VZ{|jo{LR)mCZJ+=E002ovPDHLkV1ks=U7Y{` literal 0 HcmV?d00001 diff --git a/assets/textures/HAS/HAS Creature Pack 1.2/Rampart/RampartSpriteSheet76.png b/assets/textures/HAS/HAS Creature Pack 1.2/Rampart/RampartSpriteSheet76.png new file mode 100644 index 0000000000000000000000000000000000000000..12ea66a5e4e4102e51310d0b29f2418abb2cd1f0 GIT binary patch literal 652 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 QbpQYW07*qoM6N<$f){TvdH?_b literal 0 HcmV?d00001 diff --git a/assets/textures/HAS/HAS Creature Pack 1.2/Rampart/RampartSpriteSheet81.png b/assets/textures/HAS/HAS Creature Pack 1.2/Rampart/RampartSpriteSheet81.png new file mode 100644 index 0000000000000000000000000000000000000000..64292f66d5828a14c5e8381790430a2c06880b59 GIT binary patch literal 676 zcmV;V0$crwP)Px%UP(kjR9J=8ma&f0KoExiL?_!RQczG(fF&eIL!F8TAVpG9xgrSr1=3Nigv3>O zfU{17$^~~_C{oZM-6PQCDok?{%@rxm*=A{Otnqr+-k3WHrb)8d@1Oa{vnvCZ@Vr2o zKHH)z_fLiA1xhKUOrQ6`b*=HPH7nwt7pTu4-&Raq{`}o&rYq-K5C8qQjU~3%v|%xy zViXQ*|0N=Wl!cM)%DL2$hztO*-`~LZ2hLh#miBvIph%-{gQP5a%hej&d{;350I7(q zBiNO5sUsCpxxU}uIB8J>DK|GSWzn-XfG4Nm1>6T`D&F$~m5QjGC@S7{0@@mQk95|Nc6rjdR8G_)4n#@kq~VPlu8 zHBu3k>o1-^0Z_fr^!!|hCMXdZQW4b}*yo#gB0au+-B=B@@l7m$+9vkaTxCt4Ks`U# zp`*te$fu{$#irnA*>nU<{5IcV6b`Y?cgU}C<FOIarX0000< KMNUMnLSTZbW<0b2 literal 0 HcmV?d00001 diff --git a/assets/textures/HAS/HAS Creature Pack 1.2/Rampart/RampartSpriteSheet82.png b/assets/textures/HAS/HAS Creature Pack 1.2/Rampart/RampartSpriteSheet82.png new file mode 100644 index 0000000000000000000000000000000000000000..fbf5676a1bb787c460d85436891553885ffd5877 GIT binary patch literal 615 zcmV-t0+{`YP)Px%AxT6*R9J=8maT8wKp4g!Ptnx{0fhrwq=H482CJb-BLSJz7EJ{PRogB32TG<& zlMb!OaA58=<_ z5S#0sMKLe8Y|Vvy5Mp!AIoCbw;Fhhqun$6PPKeFFeLPCRqwBlEjpyO=^aLxkgm&3x z$R2b>u<`_s4|mXRHI;9D8i27x%g)Q`bUf-P@1uAE*AEMI1mC9trqf?oTU*D~=myW9 zJWjC>OahE0mg|Rz;z=q20Pv_|JX7;>I`c9Mluuq>?@2LQB3s*H~7hqGzYHNpb^jGSyt z9uWbxpFITtyxRMqB%$Nw&GOhfcsU25V`@Z0x-68W<#@E&Qr^jC^LP_m7q8RUefgB}%o$apnTM?hfu7U^5MVuXhqKir%A>Fu{ezMxFCZc$P_;!r*!O%Fu zb@18fYSte1r*p&o0u#BsA^sWOl3rAaYzO{Z{x`kHBRbb4n7jZ0002ovPDHLkV1nJp B8fE|h literal 0 HcmV?d00001 diff --git a/assets/textures/HAS/HAS Creature Pack 1.2/Rampart/RampartSpriteSheet83.png b/assets/textures/HAS/HAS Creature Pack 1.2/Rampart/RampartSpriteSheet83.png new file mode 100644 index 0000000000000000000000000000000000000000..4f03d541f779660296937dcf19998caa70bff709 GIT binary patch literal 708 zcmV;#0z3VQP)Px%en~_@R9J=0mN9SBKorOSuA;LuWME`zB!*_`i1G;-h(z)MJRm|zzCaelWC@8( z`2e*lLKhFTTNon5f>a?s0E^p&>k^3$89cjmp^|MI#ZRqOF6a$#ymOdchPD# zHr9qg1R+u*Ta~*j?b#NDNS(=ahL|V$+%Sj$0Ab);Yr86E(*Niu)&Kyv&XB^uFJ-hU zr;0I8X4%U4+}T)xYGr>&H%g9`P35Yb5UJz3b(v+WeC~?hAj?*8-Mai+rL+fZrWQ3b z#ym;4*Xy*=>$Htdn0Vq^%?5g%Hoks*YdwVNR%z~Zd<566BgCAeICZ^SFAm$19Vu|zlh4I$5?LQ16V{p|h zur)^tBHjLv%WE7S?C0D@6I5ScB#J&?EUkysd1`uL;A1kKVbt$#W%d1O-%-Ddm?u!* zEC4o~*Ml?+BE&pF82C6HA0Z5Ue2ZSMWzU`t@Wm37>1=I~L(PW|3JpzeExoo^Z7--NX=6XhAJV_ qfukDQK_}YxU3i_XvcGPtGXEO_vkGbj!a#HY0000Px%3Q0skR9J=8mOn^aK^(`w3FUZ07fTikMtDPTa40mq#X*XWZE;bsNT86=xim`$ zrw&5%oC2aC3hfrr2m!&dLn{V{5>Oz?fzQO8sonGRc&!UFp;;A$XlY$m_a`~ zYuLJ+gI^F{JOKQ-`J)~9efz8UM=IF4_=1+x#FRM=0BBj=Z!?_RUd?#f`=bk2B6VTyx z6sEt5kM}xyOXsk1j_bPf9~hLyDD!auS>MsUmF+77#krf?*g42??&e0}$Msk7F}X6N eb``-yj=uw_12=al<7tWj0000Px%g-Jv~R9J=8l|g6|K@^7nq+wX37fmh-Zefv-Ll1#0d&wb)J;ov)go-2x@m$1Q zJ@p`%?I|b~f`xjEv=Pz@-t3`DLkmSzLd2COUWA-_C}BayLzpGm%*;+)F!(OnVdi`P z|7IrhfPWl>Xp|6*&WaB$7RCS}8vS}!qP1@~lydmBrsY*~MrDfWZwdf_55ImWoAm3e@*;hn{}>N)j<(QqPI1*(008u?;kRKHlnVfWMA-rW^zD{s z;=6qb>zhru?jRy!W%@yUkiOr4j0YNK0iQcv;OspBAf7J5Na}$FFkV)GEL8MW_-QsU zItnMs7W90^OW1Qx15NXI!z>`4E_!qEbWy4JS?GHk;JSlI-)`Ym;g&a)Q$jRa zsWxb(+Mo}wXKAI{prf7O&m!mx3k_l#*ed<-9f}K3u7lD<7J_uubOAO zd5Dt${}Ww+^-dP4q@gV8XZ<`O8hv#CCbx~M=&SJOsW||^cJoll|HKXG+bs|FhsXdE zztH}T?(VUWR|%PZSf1xU$|e$J%Y)k;XAG3>BCq&q_^|q6`51tbG`l!T0BUTYa`LV_ xc<|)KYd^27AC~t;2|z6}GMF}MBj5im{|B@=`<^@o50L->002ovPDHLkV1j+&QY`=g literal 0 HcmV?d00001 diff --git a/assets/textures/HAS/HAS Creature Pack 1.2/Rampart/RampartSpriteSheet87.png b/assets/textures/HAS/HAS Creature Pack 1.2/Rampart/RampartSpriteSheet87.png new file mode 100644 index 0000000000000000000000000000000000000000..f29a6972ebc04e36f4e39e0cfc2a451acb3cf9de GIT binary patch literal 722 zcmV;@0xkWCP)Px%j7da6R9J=Wl|N`xK^(`wuY@0ms7o^yj1VLUb_f{aU}=;NDi{a<6apos5)cFj zNf%o>iBr<4ONW3U1)(4nBZ!+0RtySNL?l9L8<$9M=pf-O=g{79@7{a&t_eZ~e-Lta zd7tm^et+ICz<&!jBF2drw>|IoxxdBRm=oq00OGS*06@3e006jd&mm%bqdSH5&L(c3 zdIQ((`7}(t&7}tAbsZBI3xZnjAEDja!m;FW06;styG~|`901lkn?|Q5J}QVoc{Ok) zfuV_TfX@PV_1i1D{iE1Zb&=J%gm z3?X%W@79gb!4$>Y1YpYt?MLRu`H8D%BY7gmzwDGa5#zoYAZ#?1kkt_FA69)^UcbCa zCyW>DMt2J7_==nfuG@3E)dqjPdLOyx9{|A9O}eGyE5ZJW82|BUl@l>uSz6 z?E!Pks>xF?13>b+3B7*Uy;oo$4Np8`h>XmQb0Ws;FF$&QUeplNdA${FdDE+)Ki{u^ z;}8t0{)5HGvYnz#@Tz@nwyaoTHhfq&+W2?fo+Acm4Dh$U4xCIS#j>Ov*Tf=-SC|9I ziv$j7q5y#TazR#K&!%D}?R&p=Ab3aJ?9*z>`k&?h0Lt)N3Y!1ntN;K207*qoM6N<$ Ef*Gz#Z2$lO literal 0 HcmV?d00001 diff --git a/assets/textures/HAS/HAS Creature Pack 1.2/Rampart/RampartSpriteSheet88.png b/assets/textures/HAS/HAS Creature Pack 1.2/Rampart/RampartSpriteSheet88.png new file mode 100644 index 0000000000000000000000000000000000000000..2bfcd9a14a65abb0a8c1a2cd6ba4d0fa4b996e89 GIT binary patch literal 647 zcmV;20(kw2P)Px%K}keGR9J=Wmc2_OK^VrL4Ki$T&2ecITw#lFg@xd(28$ygNQzZ2X-@J7EZdBQ%(BjY&1^ih@M(5-lHdFB z?7JVpo5DqiN(oVE(w-L2p1Ou7S1@cXGXeeb?8?jXVO(5{0Y1n{Z4;w84FI4` zk7MfFtgwO4!87IOH&Ss-qdCo+23Aj^*gZ&yO08<0TGcxJIyphDYTa{?IsDpqKO4vM zF#;37H1_xB*bgKjL~XeIxw`CZph2vMm&M!*2} z&~QF~2LN2RZ47AuP8R?GBZKc_6Zgxr7+aNJaB{jZ&&e5W$gN6{54y}Lk-Xx5Z;rZMm^#{HLd*vqf8yBH}UR|0&Ww!y> zb(E-palDBBCr^k<`5rRt2R1tUjSF12?I&P}i$y-LBp)d3rT7frjD(8ZF|A&TF9Lw# hKatdSpGCY1{s9#|Clh%iyz2k}002ovPDHLkV1mmcCiegU literal 0 HcmV?d00001 diff --git a/assets/textures/HAS/HAS Creature Pack 1.2/Rampart/RampartSpriteSheet89.png b/assets/textures/HAS/HAS Creature Pack 1.2/Rampart/RampartSpriteSheet89.png new file mode 100644 index 0000000000000000000000000000000000000000..c9dfce81ca79379705dcc6edb90bb8c6aa0752d5 GIT binary patch literal 753 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 T=ADL000000NkvXXu0mjfLSA73 literal 0 HcmV?d00001 diff --git a/assets/textures/HAS/HAS Creature Pack 1.2/Rampart/RampartSpriteSheet93.png b/assets/textures/HAS/HAS Creature Pack 1.2/Rampart/RampartSpriteSheet93.png new file mode 100644 index 0000000000000000000000000000000000000000..10837ab96a71631a370bbae70211796e590b5a1f GIT binary patch literal 548 zcmV+<0^9wGP)Px$-bqA3R9J=Wl`(7EKp2LfcsN7}LW2#SN|$;vSqz>ubjaYLWb%~R@h|Yt@GmeK z`UAWaI`{`@GI-NaD@*7U8XJNqaZuFhJEV&gsuPYo_+6wE_kQ>2)psX2>#VcNq?DH_ z43F!g3Xvv7Kc8<^AoRaL_lt zyvn{p*%vHRRR=cVFZ>1Kherbc5`btE1JLaRbUT3=i}HK43LqasIOrcOz$W~KGr*R# zjkKSrJsWbECa>D@Q~@^OH(NjsooExAg_o;{QtPx%gGod|R9J=GRe821Cioz;Uc(l<=W>jaCP6{ zFK|-i1FlJTT^dyecPesnXH9*(7fY)+!9QyEe3~-({Xd@mTBN@u6 z`tm(sJDnGrFEgMAsGbdOF3K)u;SK&1z$_NjwcF)-+b zndesz;hg%GslgON5dl?MfP^t&=`kP!MIj%mQ}lDim@VJD=(`H$SgguHpWB;j`KgLM zM*o$v9+hb5_dlyYI8X2N9_5)7FZYY^BjRAp{-o|^82Dh!*6|r_0Hd1v5>NjDW#&ya vDp=RWORR4GFKDA-x>&JtyKn;jpK1RFn!9j0(?dM900000NkvXXu0mjfF%3jX literal 0 HcmV?d00001 diff --git a/assets/textures/HAS/HAS Creature Pack 1.2/Rampart/RampartSpriteSheet95.png b/assets/textures/HAS/HAS Creature Pack 1.2/Rampart/RampartSpriteSheet95.png new file mode 100644 index 0000000000000000000000000000000000000000..3783e6afb8f0f8f5eb438f7435c77dc9624db8b7 GIT binary patch literal 715 zcmV;+0yO=JP)Px%g-Jv~R9J=WR=tYbKoI_H%p$@eRM?=(q{)#&oxs&TfQl>i2tGf7AHz>@<(%z0xOE4yHtVdJ$ zpTEO>d_p>3Aep6Dt~Ojl=zgdk$RZ4Y`I1}5KLv+){2#C$O^-TH^X!Ff1relz;z+YI z(wM3uOo$_mWR_w)NlN^4!FyB$fdfGKEg?6ge72=ory!{U3EP;e6e51rp&U}tUTTUl z+QXjHA}5krTG0Ja5SFVAcLy8C6h!N^hdrzZQ!Z%FDO4)Lb$nnK!0jO8Ze(>KwqJI$ z@hIU#mYu9cla0ym0rZJTYLHIV)d*Wb@|nKrFu=zzKY-nPshxW6%~8G#Ai?fJ-Mf&x z(4oVU0i+b@%Rp2)`rQ8R=`J{Z8Yg4vvO)Dg7}h_BA4i&hu%z8pDWt;y<4M97p*`$j xJIJ8J07^N9?5lm8hfh~Px$KS@MER9J=WR55D9KoA^-a8?maS~o(Cy6e>H0WMtT3G%PL;Nal!Zy|)=n)uCi$GI+q@Y{!VqA$%k zFmnT@(zC()M``4nNLpqq?o zb!`%)w7NXl#DAV?`Euy-vZ@D~ix@xy3*on>)$QtR>h7`}03f3f!TzYZE$)|h`01y4 zu!+YX!E+xSr5bOS<$Bflsy^R-a-GL(@Lv31<>}eXT2^(hPFd9m_Q#%{3`kiz13q?n zf>O;^2p^{&9%>38RjS#tdMV!^8HIX%lUO2uebZvn@mXaQ4mbean>c~=-6Twxe4H}C jqK2uS?YXf!XP^H9@)e_MUHPGy00000NkvXXu0mjf3lp>k literal 0 HcmV?d00001 diff --git a/assets/textures/characters/demon2/attack1.png b/assets/textures/characters/archdemon/attack1.png similarity index 100% rename from assets/textures/characters/demon2/attack1.png rename to assets/textures/characters/archdemon/attack1.png diff --git a/assets/textures/characters/demon2/attack2.png b/assets/textures/characters/archdemon/attack2.png similarity index 100% rename from assets/textures/characters/demon2/attack2.png rename to assets/textures/characters/archdemon/attack2.png diff --git a/assets/textures/characters/demon2/attack3.png b/assets/textures/characters/archdemon/attack3.png similarity index 100% rename from assets/textures/characters/demon2/attack3.png rename to assets/textures/characters/archdemon/attack3.png diff --git a/assets/textures/characters/demon2/attack4.png b/assets/textures/characters/archdemon/attack4.png similarity index 100% rename from assets/textures/characters/demon2/attack4.png rename to assets/textures/characters/archdemon/attack4.png diff --git a/assets/textures/characters/demon2/death1.png b/assets/textures/characters/archdemon/death1.png similarity index 100% rename from assets/textures/characters/demon2/death1.png rename to assets/textures/characters/archdemon/death1.png diff --git a/assets/textures/characters/demon2/death2.png b/assets/textures/characters/archdemon/death2.png similarity index 100% rename from assets/textures/characters/demon2/death2.png rename to assets/textures/characters/archdemon/death2.png diff --git a/assets/textures/characters/demon2/death3.png b/assets/textures/characters/archdemon/death3.png similarity index 100% rename from assets/textures/characters/demon2/death3.png rename to assets/textures/characters/archdemon/death3.png diff --git a/assets/textures/characters/demon2/death4.png b/assets/textures/characters/archdemon/death4.png similarity index 100% rename from assets/textures/characters/demon2/death4.png rename to assets/textures/characters/archdemon/death4.png diff --git a/assets/textures/characters/demon2/hit1.png b/assets/textures/characters/archdemon/hit1.png similarity index 100% rename from assets/textures/characters/demon2/hit1.png rename to assets/textures/characters/archdemon/hit1.png diff --git a/assets/textures/characters/demon2/hit2.png b/assets/textures/characters/archdemon/hit2.png similarity index 100% rename from assets/textures/characters/demon2/hit2.png rename to assets/textures/characters/archdemon/hit2.png diff --git a/assets/textures/characters/demon2/hit3.png b/assets/textures/characters/archdemon/hit3.png similarity index 100% rename from assets/textures/characters/demon2/hit3.png rename to assets/textures/characters/archdemon/hit3.png diff --git a/assets/textures/characters/demon2/hit4.png b/assets/textures/characters/archdemon/hit4.png similarity index 100% rename from assets/textures/characters/demon2/hit4.png rename to assets/textures/characters/archdemon/hit4.png diff --git a/assets/textures/characters/demon2/idle1.png b/assets/textures/characters/archdemon/idle1.png similarity index 100% rename from assets/textures/characters/demon2/idle1.png rename to assets/textures/characters/archdemon/idle1.png diff --git a/assets/textures/characters/demon2/idle2.png b/assets/textures/characters/archdemon/idle2.png similarity index 100% rename from assets/textures/characters/demon2/idle2.png rename to assets/textures/characters/archdemon/idle2.png diff --git a/assets/textures/characters/demon2/idle3.png b/assets/textures/characters/archdemon/idle3.png similarity index 100% rename from assets/textures/characters/demon2/idle3.png rename to assets/textures/characters/archdemon/idle3.png diff --git a/assets/textures/characters/demon2/idle4.png b/assets/textures/characters/archdemon/idle4.png similarity index 100% rename from assets/textures/characters/demon2/idle4.png rename to assets/textures/characters/archdemon/idle4.png diff --git a/assets/textures/characters/demon2/portrait.png b/assets/textures/characters/archdemon/portrait.png similarity index 100% rename from assets/textures/characters/demon2/portrait.png rename to assets/textures/characters/archdemon/portrait.png diff --git a/assets/textures/characters/demon2/walk1.png b/assets/textures/characters/archdemon/walk1.png similarity index 100% rename from assets/textures/characters/demon2/walk1.png rename to assets/textures/characters/archdemon/walk1.png diff --git a/assets/textures/characters/demon2/walk2.png b/assets/textures/characters/archdemon/walk2.png similarity index 100% rename from assets/textures/characters/demon2/walk2.png rename to assets/textures/characters/archdemon/walk2.png diff --git a/assets/textures/characters/demon2/walk3.png b/assets/textures/characters/archdemon/walk3.png similarity index 100% rename from assets/textures/characters/demon2/walk3.png rename to assets/textures/characters/archdemon/walk3.png diff --git a/assets/textures/characters/demon2/walk4.png b/assets/textures/characters/archdemon/walk4.png similarity index 100% rename from assets/textures/characters/demon2/walk4.png rename to assets/textures/characters/archdemon/walk4.png diff --git a/assets/textures/characters/imp1/attack.png b/assets/textures/characters/ariel/attack.png similarity index 100% rename from assets/textures/characters/imp1/attack.png rename to assets/textures/characters/ariel/attack.png diff --git a/assets/textures/characters/imp1/death.png b/assets/textures/characters/ariel/death.png similarity index 100% rename from assets/textures/characters/imp1/death.png rename to assets/textures/characters/ariel/death.png diff --git a/assets/textures/characters/imp1/hit.png b/assets/textures/characters/ariel/hit.png similarity index 100% rename from assets/textures/characters/imp1/hit.png rename to assets/textures/characters/ariel/hit.png diff --git a/assets/textures/characters/imp1/idle.png b/assets/textures/characters/ariel/idle.png similarity index 100% rename from assets/textures/characters/imp1/idle.png rename to assets/textures/characters/ariel/idle.png diff --git a/assets/textures/characters/ariel/idle1.png b/assets/textures/characters/ariel/idle1.png new file mode 100644 index 0000000000000000000000000000000000000000..0f86ce2f5f9bd8d420697fb93841cf5be32b56b3 GIT binary patch literal 284 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`jKx9jP7LeL$-D$|u6epRhFJ8z z4N~MgPx#@JU2LR5*>*QY#L^KoET;WV(V71cxA@K>&sX#TAMo!7X>-2*`S>Kw#h&wHQ)E zB?iL*%9=sYZMJk9isU7eyq%rz+Xem}PMshk!I~?T7IGSOJH^S(>bDj!J8FKt-s^QD z63mN$i3FQ`*zd7fSfiu?k>Ka)QSiBb7t@i4=p6r`!6AHGhUgqy!>k2dzl;4P&N%=) z=bOr2h4Fb2@XnLD1}3*@P)arv&EzT(o0=$Px#@kvBMR5*>rQZWv~FbupRm!sCO^ZjzK^s>vK4!` z`LkJ)t?VN$O`>lm_M6RRoFP1I008-91pv^+0l;SyYXW8ygr|)#n}A5kdLC5-e$s7d zE5nu0@IY4yp#2KkWn(s}E)KOEW|O-0?my5(YUdVrVE}Rfcmm^~ZJD%1kJJDF002ov JPDHLkV1mF~e#!s< literal 0 HcmV?d00001 diff --git a/assets/textures/characters/ariel/idle4.png b/assets/textures/characters/ariel/idle4.png new file mode 100644 index 0000000000000000000000000000000000000000..0f86ce2f5f9bd8d420697fb93841cf5be32b56b3 GIT binary patch literal 284 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`jKx9jP7LeL$-D$|u6epRhFJ8z z4N~MgPx$FiAu~R5*>rl0QoWK@i1%8xDeC87#zrl~^3H@gvw;NNg?=tEPW0 zN(s!#lK=n!07*qoM6N<$f~qp4qyPW_ literal 0 HcmV?d00001 diff --git a/assets/textures/characters/imp1/walk.png b/assets/textures/characters/ariel/walk.png similarity index 100% rename from assets/textures/characters/imp1/walk.png rename to assets/textures/characters/ariel/walk.png diff --git a/assets/textures/characters/charmer/attack.png b/assets/textures/characters/charmer/attack.png new file mode 100644 index 0000000000000000000000000000000000000000..896a1646a068ddcb41effc98c969ccf704f5eb35 GIT binary patch literal 511 zcmVPx$xk*GpR9J=WRWVD$Kp1^d__&IQounP46k1E(K#}Tk2sJeE@Krp(fo30P5*10HE0KD#bs{K~!VzI77`WSP;dN`BwGdg$=;= zUW1dP0}&zHHT+Px$XGugsR9J=WlQB-iFcgNr0!tpi!enjXX3QjS(VH!_oL(@(2;Ar{@f8v4wq)b}?tJS7bWBpx)H}#{u5P@2D2Wr_JC?NtRM4)c2ul9NYyT-n}UF#5h zX##9rUYu9yU5hsdK1BbcvZjx3$CVoC#MG&w>nu7w7M)(@8ZPAw&`qc9KC|tbFo~JA z`vBZ+UY!L^9$>az?@aLFzgy;G6e(wblxZtWVs200ch1kYYXI)gKAa8f^7hbG5~O*b z1Qo7;zC@VB8Q6CRP2Q9bUpGNE?~-jm1Vp+BkXZriT#<787lV}XcqGV+hirlj19!Y> zKm;H}Fkf_fgh`B)=|swOq6ctXBF8(F<29>!+k7iQP9CxevQ{txXgP)|(?h|(U&ns} XXU^*77gh%>00000NkvXXu0mjfGsw9l literal 0 HcmV?d00001 diff --git a/assets/textures/characters/charmer/hit.png b/assets/textures/characters/charmer/hit.png new file mode 100644 index 0000000000000000000000000000000000000000..aa914801092a0bb2407240a8ca6db62eb6dd668c GIT binary patch literal 390 zcmV;10eSw3P)Px$KuJVFR9J=Wma&QgF%X916+>Dp;i~08kQE!Tv9%TpeFe9)@;R(5y=Sm-8y`co zQV_8?(8hL26RQbh$ZC>ZJr?$d6bbqM%s)HDGFGZosZs?J0G9w<=EZ*HQ`Tn$z~yd# z{v4a7+i5(W^#>y-9)Qc$dShKr7FHR=K`7%Od;o0&=sd2~dL#Fz>&s$vzTIp%h4*E1 z4}e^|*?8F7HV}ZzUbo{EAPcJu0JxmiT3!KY!+PD0Dng$o8y>$N*78nP8PK4v0q`E> z=yG`%p~7j>$6e=<#2? zC98P)Bcu+O-#={lcVt2&kq}8Vza7}5T4w-!VY*NE0DM9DltQg}A(Ciz*+vF0BTw~& kRrf2eOrGdB&9q4T9YK_KPTwa#SO5S307*qoM6N<$g0e)WDF6Tf literal 0 HcmV?d00001 diff --git a/assets/textures/characters/charmer/idle.png b/assets/textures/characters/charmer/idle.png new file mode 100644 index 0000000000000000000000000000000000000000..0ff67ec0666d69c6fcf349821999d4623ace740a GIT binary patch literal 457 zcmV;)0XF`LP)Px$gGod|R9J=Wls`+uP!z>aYPr0kh@FH^rBINHi?}$}xpYW}et~4{Qg{6jj`cHi zv5Sk2E-sE$2u>-uxM_G$pHn2pynlHGDfCQ%@Vob%_wIebMjNe#h?wa02mfuOoO=C% zQvf0+o?qVt5fdx6W-gZyt^tUcxVe3DIsn&8a0=lXfQX6X!vm)Skom9Zpe!(-FRU77 z*~{_J!tP&wZ+FLvFRD@Gzp8?#jTQjFk0Sw?hbUrg0u=GKGWD;VfV|4w!m2c0d^p!A z@?UrW>Db(VZdo^xv8DlJ{KfW{vj<~%*6fJ${Ued?Q2IS%W?Zr;Qf;I068S>TLkP)%yzo^)2XF-TLTw6P5A*YXvw@JU@=WdEx;;x3)yLw*2|8 z3ZY|la^+q9rwRZB*>RDKVIboTS!+JSDS2D}l^hHrHc7{b^CaXv2_<8gHz6|x0JwX2 z3^`9i8$Rtls<%PJCMNxD{d+bca=MlkT_^qa|@<5g19}syc-@|(ost~eEgF~!|a@_w8FVZ`c%*ZBxS5)HSj>LGj!|UViC2roZ z_~-3Wuy{w_;e9-7Iy*I{Kk(|TFnuh1IGe$&b;l9Lh9Bua*w$7q0EPgAr>mdKI;Vst E03UITKL7v# literal 0 HcmV?d00001 diff --git a/assets/textures/characters/charmer/idle2.png b/assets/textures/characters/charmer/idle2.png new file mode 100644 index 0000000000000000000000000000000000000000..41451464a7f51af42a07f468f55aab2c4ec8e8ef GIT binary patch literal 317 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`jKx9jP7LeL$-D$|zI(bjhFJ6_ zCrIpT=!>B2J^%y^i}_}f;@Wi(F z;g6@`JUl$SJo<4psXM+G@cQK+h!uFY@qxY0t3x(o2_H7@WKxwfe{(wF$Jf{F%F@!u z>p3~|cKiU@1{6Ioa|Xw*mM2p@1RHMlbocWytX~yl*{5?D6dnwou6{1-oD!M<{dV|#r&}u$1)kZxD#eo?l>yh z(y~Od0!V}K5tp38D(2PVWm{}hCro&dR{5G2N@W`i<8|a&2BCQh75zJ LtDnm{r-UW|@6C!b literal 0 HcmV?d00001 diff --git a/assets/textures/characters/charmer/idle4.png b/assets/textures/characters/charmer/idle4.png new file mode 100644 index 0000000000000000000000000000000000000000..d043ae25058040882c19501703c53cf647a5a01d GIT binary patch literal 317 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`jKx9jP7LeL$-D$|zI(bjhFJ6_ zCrI3D=a|@<5g19}syc-@|(ost~eEmzp;_IyKE+sF=ZY z_+qiVq=dvP$+$f~P8Ga=C>6u!wnO1e^1=FuE3K6}2Occm&7>@4{^oSTkFT%Um8GSR z*K=~_iCoXUF}=~$Q1GcxjHclFw3?&}-UG`7rdu#96;9<&x7*eZ3<3sES3j3^P6Px$#z{m$R5*>5lR-!nQ5?p9GwdOlMPv!yu(P5_MtErs)g`13yY5901TRvcAVL=} zc8)F{q9Ev!h(Ss*54B9ZQ3eHYvOEsJO`v074uF~Y`)8+paHdLkyjmhviO0{2 zOwI37dG`a~5Apqw-=CYTFMnX=N!vdQ0Mdq3AS|2fU7ZQS!^0zbd#@^+jWEFRYMRPG zDv=2b%SK$fjAG-ho@kGz}#`J}i3xGI91oz7$FJ=`l0v?s!jm zsGYUFQ;tu*;ds7MS;&_n$E#`Q0-PLOxbVk$@p?GPx$oJmAMR9J=Wl)pa9g|bj9&!*-tNvs-qZ#}VZa?G0n6k!#fG0`F9!6nd;HoAC@VO>(qQ7R z^*<+ajSUEDK;2q1nWmb^P#<(C_PSIPnW+Mzp=3 z?h;ZMh12Vpme3;jRi2yw^89S}5>(wQ_PPL0=jwwF;H`sdVF_W$TzoXf|Nfgd!cp<7 zo#Ey;#h)iI20JEl@sU%+ivg1neFQy<56uq{gdd;`l=U&vM^GD~@+`cmh97)be%Es; z>oqiu0K{Bi0EDm_s)M#YtO#K>04`3CczS-twuhB*>YWMiBaHZE^2b~Ueu~@~&i)<# Y2RkZ4{5}E<_5c6?07*qoM6N<$f+f__8vp3_d>clQ^@`Wn`y+ZJ3ATW0rDg{8r$gn^;%AH(xA7WM++AH708dYxd|^zM9A@*|^? zg6w5o-AycY^H%MfcjQtlL&41I51)T4go>!FI@cA#!0^0BK(nujC2}HP+wFC3m*W(F z+bRoq|rmwk`Xi+tH;pXJTPZdc}hzugS9H#>iMU0u)n**-qopU#=f rli0WZyPw21$;wP8lgaUgYz^vSLIqi?(hL-Vo@MZK^>bP0l+XkKEp>JU literal 0 HcmV?d00001 diff --git a/assets/textures/characters/hellbeast/idle2.png b/assets/textures/characters/hellbeast/idle2.png new file mode 100644 index 0000000000000000000000000000000000000000..97a61fbd5e79e29ad341402ef26c93430da752ee GIT binary patch literal 287 zcmV+)0pR|LP)Px#*-1n}R5*?8lCcf}K@f(&Q;coZE{I4ZLPa4ey^dEnZ{;!ED_rzPp^*@@TDfKw z?7DNi8m&nt+5eyU|IADl{_%4JzJiF-d7Nc;XRnhKQF=eF7r5@`;xs7{M!Y*!0hnJ8 z0PM$guZb0kD7|j=w0WDH4i^Pnnm|P9$zVp3#sEwPGux1)aRD0+o_7gElx~E5PUmf@ z5#W3~+S;dClEwsPB$qgE64sg}K1t*E?q<(Ud-Qex&s$V{SIx5fGLIW!-}0}tx(J9| lQ+(rJY5zgwJ%B$}01pUEdYOnpD+~Yt002ovPDHLkV1g^5b_M_d literal 0 HcmV?d00001 diff --git a/assets/textures/characters/hellbeast/idle3.png b/assets/textures/characters/hellbeast/idle3.png new file mode 100644 index 0000000000000000000000000000000000000000..97a61fbd5e79e29ad341402ef26c93430da752ee GIT binary patch literal 287 zcmV+)0pR|LP)Px#*-1n}R5*?8lCcf}K@f(&Q;coZE{I4ZLPa4ey^dEnZ{;!ED_rzPp^*@@TDfKw z?7DNi8m&nt+5eyU|IADl{_%4JzJiF-d7Nc;XRnhKQF=eF7r5@`;xs7{M!Y*!0hnJ8 z0PM$guZb0kD7|j=w0WDH4i^Pnnm|P9$zVp3#sEwPGux1)aRD0+o_7gElx~E5PUmf@ z5#W3~+S;dClEwsPB$qgE64sg}K1t*E?q<(Ud-Qex&s$V{SIx5fGLIW!-}0}tx(J9| lQ+(rJY5zgwJ%B$}01pUEdYOnpD+~Yt002ovPDHLkV1g^5b_M_d literal 0 HcmV?d00001 diff --git a/assets/textures/characters/hellbeast/idle4.png b/assets/textures/characters/hellbeast/idle4.png new file mode 100644 index 0000000000000000000000000000000000000000..40e7815cb7036304f307410b65070f9bd9f65892 GIT binary patch literal 295 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`jKx9jP7LeL$-D$|9(uYshFJ8z z4cy4rWFWFfDkw6xHKR#Q$LOVlM2Gd_{R`@!n(z3?-6AU+p&~FRa<*RSMqk!dh2JNs z>3_d>clQ^@`Wn`y+ZJ3ATW0rDg{8r$gn^;%AH(xA7WM++AH708dYxd|^zM9A@*|^? zg6w5o-AycY^H%MfcjQtlL&41I51)T4go>!FI@cA#!0^0BK(nujC2}HP+wFC3m*W(F z+bRoq|rmwk`Xi+tH;pXJTPZdc}hzugS9H#>iMU0u)n**-qopU#=f rli0WZyPw21$;wP8lgaUgYz^vSLIqi?(hL-Vo@MZK^>bP0l+XkKEp>JU literal 0 HcmV?d00001 diff --git a/assets/textures/characters/hellhound2/portrait.png b/assets/textures/characters/hellbeast/portrait.png similarity index 100% rename from assets/textures/characters/hellhound2/portrait.png rename to assets/textures/characters/hellbeast/portrait.png diff --git a/assets/textures/characters/hellhound2/walk.png b/assets/textures/characters/hellbeast/walk.png similarity index 100% rename from assets/textures/characters/hellhound2/walk.png rename to assets/textures/characters/hellbeast/walk.png diff --git a/assets/textures/characters/hellhound1/attack.png b/assets/textures/characters/hellhound/attack.png similarity index 100% rename from assets/textures/characters/hellhound1/attack.png rename to assets/textures/characters/hellhound/attack.png diff --git a/assets/textures/characters/hellhound1/death.png b/assets/textures/characters/hellhound/death.png similarity index 100% rename from assets/textures/characters/hellhound1/death.png rename to assets/textures/characters/hellhound/death.png diff --git a/assets/textures/characters/hellhound1/hit.png b/assets/textures/characters/hellhound/hit.png similarity index 100% rename from assets/textures/characters/hellhound1/hit.png rename to assets/textures/characters/hellhound/hit.png diff --git a/assets/textures/characters/hellhound1/idle.png b/assets/textures/characters/hellhound/idle.png similarity index 100% rename from assets/textures/characters/hellhound1/idle.png rename to assets/textures/characters/hellhound/idle.png diff --git a/assets/textures/characters/hellhound1/portrait.png b/assets/textures/characters/hellhound/portrait.png similarity index 100% rename from assets/textures/characters/hellhound1/portrait.png rename to assets/textures/characters/hellhound/portrait.png diff --git a/assets/textures/characters/hellhound1/walk.png b/assets/textures/characters/hellhound/walk.png similarity index 100% rename from assets/textures/characters/hellhound1/walk.png rename to assets/textures/characters/hellhound/walk.png diff --git a/assets/textures/characters/hellhound2/idle.png b/assets/textures/characters/hellhound2/idle.png deleted file mode 100644 index 8c5e810e81a2d52e063afb0d77c1f7beca0860bd..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 410 zcmV;L0cHM)P)Px$R7pfZR9J=Wm9b94Fcd|vQT52m3Q>_Nq%6$@1Iomn4SoUsif>@cFI3qJ152e= zfwgPo#VmcsII*2TQ&cHevJ_pv^L+JUCBUdrqegi|6e*%e{dbPvDwJRNKmd5Zy#N3t z=1k?|HK3V;N^UVq+B%`XKAjV7t2BcKd+^a?=rw4d0&3PaF*s+EQ>~QwOwOV zy@L0xMv$@=KHg^7;{c)a|H_B*3!+F(G`L=aP-j)Bv^;MO!esT=+aksvw z*nywMbM5bzI3(}NuMNkvoW9ZIsCi*D>8odJh)2nP0a~%l(itj!PXGV_07*qoM6N<$ Ef;>*V^8f$< diff --git a/assets/textures/characters/imp1/idle1.png b/assets/textures/characters/imp1/idle1.png deleted file mode 100644 index 8553b8968faa77b89d366ce7a150d2fa8e81d253..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 291 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`jKx9jP7LeL$-D$|?s~d7hFJ6_ zCrGfmFw5^xU^6r8`)^lw@QLJsW5+)Jzt$Z7|K<&gf6Cp)f|pv>JbZTc`I4JETpeHk z7h_%f-=Mi?i>XI3qm{se#|H%tXEB_a_V@lwPeb{ImEBF({wEd2?zo(oGoyUM)y)gC zAO z=6-H}L1j*2178qOUC@NN-EUacy@h9p2W{A?!1}89ra}InUtg8KUSBW2(m+39V^5>t gY=wyld?4c)KJ5xw$HA`o9OzL7Pgg&ebxsLQ07AQWVE_OC diff --git a/assets/textures/characters/imp1/idle2.png b/assets/textures/characters/imp1/idle2.png deleted file mode 100644 index 745b06dc6335fd23adaee1039afa6bc4d1703900..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 292 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`jKx9jP7LeL$-D$|?s>X6hFJ6_ zCrC&hIIcgVvA6f}{{DD_O12Ff3;*o@`rvB4nOWce7ezitq>4U2E54N5dh^7wV;}E( zL^H4Ejwr~CQ(t=I01ya#d2_Fx4G0+R#n<^jp8YNv;f-x~_WYba_$r%W*~6Bu(?`do6u9Hl7KINqzl;&%-Q?j+PJGi_PhO|Z5uWg{<*(s!Por} zG2iWVcoK5dy@l5_o@iPF(hbtd0|GmnR)Ois_wOIe*1W^LzwU1WPgPm}!|Utidq6UM zbLu5!EdL9YnMrvxRx;n^28wBBNL*z-(d4ntYwn+aX3pytXfaDmAI~W{Edc@>IfXc% d82|wTL%65Ui_a%&rU8A-;OXk;vd$@?2>>6rbBzE1 diff --git a/assets/textures/characters/imp1/idle4.png b/assets/textures/characters/imp1/idle4.png deleted file mode 100644 index 8553b8968faa77b89d366ce7a150d2fa8e81d253..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 291 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`jKx9jP7LeL$-D$|?s~d7hFJ6_ zCrGfmFw5^xU^6r8`)^lw@QLJsW5+)Jzt$Z7|K<&gf6Cp)f|pv>JbZTc`I4JETpeHk z7h_%f-=Mi?i>XI3qm{se#|H%tXEB_a_V@lwPeb{ImEBF({wEd2?zo(oGoyUM)y)gC zAO z=6-H}L1j*2178qOUC@NN-EUacy@h9p2W{A?!1}89ra}InUtg8KUSBW2(m+39V^5>t gY=wyld?4c)KJ5xw$HA`o9OzL7Pgg&ebxsLQ07AQWVE_OC diff --git a/assets/textures/characters/imp2/idle1.png b/assets/textures/characters/imp2/idle1.png deleted file mode 100644 index 910d439e6033bca3f62a18e9c9ffbc413fe5eaf1..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 384 zcmV-`0e}99P)Px$I!Q!9R5*>blD$s?K@i1%cxG55ArLJLg)t--KcMiVGZxwt3h7L23@v{Rt^a~F zR93WFnn-a%3?WgB4GjtBAz2H&^Nu?}3tzLdvomkzy)67UL==T$2@$0)F0T+#x=<|r zjX*@{r_Q_fpYHqetfpyLR*#$dJ(ks5Jn=NShKSN4N*^Rr?CkC%qICWCVUjyM_UdCZ zrt4ZJ3&8p7vs0D}H%_w~$0e+!&G`}l zs{Iyz68Q0>+HWl+i1`Z}LxaZ9@a`u^`4BPx$I!Q!9R5*>blD$s?K@i1%cxG55ArLJLg)t--KcMiVGZxwt3h7L23@v{Rt^a~F zR93WFnn-a%3?WgB4GjtBAz2H&^Nu?}3tzLdvomkzy)67UL==T$2@$0)F0T+#x=<|r zjX*@{r_Q_fpYHqetfpyLR*#$dJ(ks5Jn=NShKSN4N*^Rr?CkC%qICWCVUjyM_UdCZ zrt4ZJ3&8p7vs0D}H%_w~$0e+!&G`}l zs{Iyz68Q0>+HWl+i1`Z}LxaZ9@a`u^`4BKP)Px$FG)l}R5*=|k}*reP!xqvtsdS`ioro~=pY7!=+L+o2Y*26&~Ac@WX=(x265;`uTWr8Asg~Cn%0MRl*=(r_=p2yAg zWrbjKIxPSaEt8T_zuQy_$g(sjUXoo#n*smwaMwPx$xk*GpR9J=WRWVD$Kp1^d__&IQounP46k1E(K#}Tk2sJeE@Krp(fo30P5*10HE0KD#bs{K~!VzI77`WSP;dN`BwGdg$=;= zUW1dP0}&zHHT+Px$XGugsR9J=WlQB-iFcgNr0!tpi!enjXX3QjS(VH!_oL(@(2;Ar{@f8v4wq)b}?tJS7bWBpx)H}#{u5P@2D2Wr_JC?NtRM4)c2ul9NYyT-n}UF#5h zX##9rUYu9yU5hsdK1BbcvZjx3$CVoC#MG&w>nu7w7M)(@8ZPAw&`qc9KC|tbFo~JA z`vBZ+UY!L^9$>az?@aLFzgy;G6e(wblxZtWVs200ch1kYYXI)gKAa8f^7hbG5~O*b z1Qo7;zC@VB8Q6CRP2Q9bUpGNE?~-jm1Vp+BkXZriT#<787lV}XcqGV+hirlj19!Y> zKm;H}Fkf_fgh`B)=|swOq6ctXBF8(F<29>!+k7iQP9CxevQ{txXgP)|(?h|(U&ns} XXU^*77gh%>00000NkvXXu0mjfGsw9l literal 0 HcmV?d00001 diff --git a/assets/textures/characters/impling/hit.png b/assets/textures/characters/impling/hit.png new file mode 100644 index 0000000000000000000000000000000000000000..aa914801092a0bb2407240a8ca6db62eb6dd668c GIT binary patch literal 390 zcmV;10eSw3P)Px$KuJVFR9J=Wma&QgF%X916+>Dp;i~08kQE!Tv9%TpeFe9)@;R(5y=Sm-8y`co zQV_8?(8hL26RQbh$ZC>ZJr?$d6bbqM%s)HDGFGZosZs?J0G9w<=EZ*HQ`Tn$z~yd# z{v4a7+i5(W^#>y-9)Qc$dShKr7FHR=K`7%Od;o0&=sd2~dL#Fz>&s$vzTIp%h4*E1 z4}e^|*?8F7HV}ZzUbo{EAPcJu0JxmiT3!KY!+PD0Dng$o8y>$N*78nP8PK4v0q`E> z=yG`%p~7j>$6e=<#2? zC98P)Bcu+O-#={lcVt2&kq}8Vza7}5T4w-!VY*NE0DM9DltQg}A(Ciz*+vF0BTw~& kRrf2eOrGdB&9q4T9YK_KPTwa#SO5S307*qoM6N<$g0e)WDF6Tf literal 0 HcmV?d00001 diff --git a/assets/textures/characters/impling/idle.png b/assets/textures/characters/impling/idle.png new file mode 100644 index 0000000000000000000000000000000000000000..0ff67ec0666d69c6fcf349821999d4623ace740a GIT binary patch literal 457 zcmV;)0XF`LP)Px$gGod|R9J=Wls`+uP!z>aYPr0kh@FH^rBINHi?}$}xpYW}et~4{Qg{6jj`cHi zv5Sk2E-sE$2u>-uxM_G$pHn2pynlHGDfCQ%@Vob%_wIebMjNe#h?wa02mfuOoO=C% zQvf0+o?qVt5fdx6W-gZyt^tUcxVe3DIsn&8a0=lXfQX6X!vm)Skom9Zpe!(-FRU77 z*~{_J!tP&wZ+FLvFRD@Gzp8?#jTQjFk0Sw?hbUrg0u=GKGWD;VfV|4w!m2c0d^p!A z@?UrW>Db(VZdo^xv8DlJ{KfW{vj<~%*6fJ${Ued?Q2IS%W?Zr;Qf;I068S>TLkP)%yzo^)2XF-TLTw6P5A*YXvw@JU@=WdEx;;x3)yLw*2|8 z3ZY|la^+q9rwRZB*>RDKVIboTS!+JSDS2D}l^hHrHc7{b^CaXv2_<8gHz6|x0JwX2 z3^`9i8$Rtls<%PJCMNxD{d+bca=MlkT_^qU5Xud;GjQ6<^%6Wdnk?7{^dBee!+&;)o_=srtXa4oZA^BNx-C{5+n`{oMY7O4(4> zCOePBgai-AGQCaWb98(Y;yeyMYZ6&uo_2W8$Jf{Uuf*@KTe7H{G19gw$S*PZ@eJOt lep;JYd}KWH_?Ur!;n9Y;S)Y!an*#JJgQu&X%Q~loCICU`c_jb< literal 0 HcmV?d00001 diff --git a/assets/textures/characters/impling/idle2.png b/assets/textures/characters/impling/idle2.png new file mode 100644 index 0000000000000000000000000000000000000000..dd35ea9b0bd5b1412c990d8a53cc0911f1c1ba24 GIT binary patch literal 284 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`jKx9jP7LeL$-D$|u6epRhFJ6_ zCrEs1m?+_zlOyv#@lE{xx&<#1m98z*-Y%CYs(!0sw)uSF)gnwcZdm*~Jm=i8V;}E( zL_fCQ6rRw)I{jH`kQWaKIG%s^H$5RCLEypTgIR(X<1C84aTT&1n6vZ0wQ-ll8P^I% zY3bwtb-AMccONbNfA|o?%wAm{0~6(Jmuo%R0uSSUe0|NHd|`9-hn7bteoj9)@w0x6 z;yMQxcFh|xhd@@Iyu|XXNkqe~lyQ@SS%a!rkc5Q6XD2S8p*bt22T4juNL={ok-*0c a1PpVJgvBX7Q|3FjU-JNtZRXcy;=8y5ehGqeA=f8%l# z->|W8L59GC#|KyOWh-pjSokMied&<{Kp^ntja-+^%|;Gm0oeozhT?Dk-k;HU^g{0- z7f648;DulDI_rMRi?JD)t#e3mytc>Bi!(2H-2yFUAUOQw`*ukQi2`<|JKX#0{wDBL zmGR4Y^v$W4l(GCTRAwgS(OAiRm)qmwET*F?^c=)oib7ujwLHA{^XqGOtzA`LN+ujS ocFa&Z*3it5jjhd+2M8E0=tUggIrYvbpnn-WUHx3vIVCg!0La;SXaE2J literal 0 HcmV?d00001 diff --git a/assets/textures/characters/impling/idle4.png b/assets/textures/characters/impling/idle4.png new file mode 100644 index 0000000000000000000000000000000000000000..aa1c733b0890e6ac00018fa7b22c098fbd8a3c6a GIT binary patch literal 294 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`jKx9jP7LeL$-D$|9(cMqhFJ6_ zCrGgN9MMWie*A+!`Twu4%U5Xud;GjQ6<^%6Wdnk?7{^dBee!+&;)o_=srtXa4oZA^BNx-C{5+n`{oMY7O4(4> zCOePBgai-AGQCaWb98(Y;yeyMYZ6&uo_2W8$Jf{Uuf*@KTe7H{G19gw$S*PZ@eJOt lep;JYd}KWH_?Ur!;n9Y;S)Y!an*#JJgQu&X%Q~loCICU`c_jb< literal 0 HcmV?d00001 diff --git a/assets/textures/characters/imp1/portrait.png b/assets/textures/characters/impling/portrait.png similarity index 100% rename from assets/textures/characters/imp1/portrait.png rename to assets/textures/characters/impling/portrait.png diff --git a/assets/textures/characters/impling/walk.png b/assets/textures/characters/impling/walk.png new file mode 100644 index 0000000000000000000000000000000000000000..0949194b7812688429404abee04dc36e1b8ae618 GIT binary patch literal 482 zcmV<80UiE{P)Px$oJmAMR9J=Wl)pa9g|bj9&!*-tNvs-qZ#}VZa?G0n6k!#fG0`F9!6nd;HoAC@VO>(qQ7R z^*<+ajSUEDK;2q1nWmb^P#<(C_PSIPnW+Mzp=3 z?h;ZMh12Vpme3;jRi2yw^89S}5>(wQ_PPL0=jwwF;H`sdVF_W$TzoXf|Nfgd!cp<7 zo#Ey;#h)iI20JEl@sU%+ivg1neFQy<56uq{gdd;`l=U&vM^GD~@+`cmh97)be%Es; z>oqiu0K{Bi0EDm_s)M#YtO#K>04`3CczS-twuhB*>YWMiBaHZE^2b~Ueu~@~&i)<# Y2RkZ4{5}E<_5c6?07*qoM6N<$f+f__8vpPx$K1oDDR5*>blD$s?K@i1%cxG55ArLJLg)t<=4=DWTjD_}uLOK&0L(5-7>E9p? zl@+a)CQ_UbLr4%~Lqo#3NY(=HJh%g5;WRrt``(+Gmxcch5kl;Lr$rp-$ z6A)46rTt<2r~AG-k2D*$-Q%wIh;8?lcRY`8Afk+jGDoold;5ooC{w$Cn$(U@J$z(N zcT-KJ0l0j7b#W$_+2Og_28d|w0I;%np6N)$V}aUSf%?$$@+~XWs-S>~BKu?D#o8Ev zYAVh9_{#*TlbG`0V11L;XyEOi-Tnk%_n{l$g?i8$4NN(iagC$ViPGpqaRtlC%;FUQ zD*YyY5%~3^(r+#mi1>l^p+$XYdH1uETtHyTUag&y{}+aJTr@$+P5irt?X9)rVP}70 iNkrW)>#DWm@xB2ng=FVdQ I&MBb@03l-&jQ{`u delta 50 zcmey&^nq!DA*0qrBTc5S;uB*f7`IF;yD!bMzx%b)Po^tZate74TJSLdfv2mV%Q~lo FCIII@5^4Yd diff --git a/assets/textures/characters/imps/idle3.png b/assets/textures/characters/imps/idle3.png new file mode 100644 index 0000000000000000000000000000000000000000..5202397e6cd6ddd98821a4f58ef07939063b8ed8 GIT binary patch literal 388 zcmV-~0ek+5P)Px$K1oDDR5*>blD$s?K@i1%cxG55ArLJLg)t<=4=DWTjD_}uLOK&0L(5-7>E9p? zl@+a)CQ_UbLr4%~Lqo#3NY(=HJh%g5;WRrt``(+Gmxcch5kl;Lr$rp-$ z6A)46rTt<2r~AG-k2D*$-Q%wIh;8?lcRY`8Afk+jGDoold;5ooC{w$Cn$(U@J$z(N zcT-KJ0l0j7b#W$_+2Og_28d|w0I;%np6N)$V}aUSf%?$$@+~XWs-S>~BKu?D#o8Ev zYAVh9_{#*TlbG`0V11L;XyEOi-Tnk%_n{l$g?i8$4NN(iagC$ViPGpqaRtlC%;FUQ zD*YyY5%~3^(r+#mi1>l^p+$XYdH1uETtHyTUag&y{}+aJTr@$+P5irt?X9)rVP}70 iNkrW)>#DWm@xB2ng=0fhdEP)Px$HAzH4R5*=|QawupK@^-AeY_$B4;!&aAsz^4ld}sJ{(z7o=>!`&%lkD~>R-?% zm6eSM78ZgQ=RvSaz~(CPvdy!(UG}_9E(6QXe$2et#{vx?Vhl$U5V2fbUV(^ZIGQxc zss=Fp;BNYYG+k_5)r@{P01?ad;Z2BG`r%-`_`JIZA{HW+l7omP z434GTH}|()CeOu>+#ehQ0LJr~0B8ZgZnsmryKxUzVWq+2Z`<(wwlgSzGMWYvBOu0y zD$ElAU_77IbV?QV1V=laia6*k5%iYkJofy?1QL5bl01W*z>&h8005FaL+tq#f$qoI z=}9fY|L(K^NRnq2p`$^zs9`@L(!_3-&7WT1O(8q7jfjYET$Pk6uC3** ZCVy95Yp$zT_7VU9002ovPDHLkV1nh3pi=+< literal 0 HcmV?d00001 diff --git a/assets/textures/characters/imp2/portrait.png b/assets/textures/characters/imps/portrait.png similarity index 100% rename from assets/textures/characters/imp2/portrait.png rename to assets/textures/characters/imps/portrait.png diff --git a/assets/textures/characters/imp2/walk.png b/assets/textures/characters/imps/walk.png similarity index 100% rename from assets/textures/characters/imp2/walk.png rename to assets/textures/characters/imps/walk.png diff --git a/assets/textures/characters/gog2/attack.png b/assets/textures/characters/magog/attack.png similarity index 100% rename from assets/textures/characters/gog2/attack.png rename to assets/textures/characters/magog/attack.png diff --git a/assets/textures/characters/gog2/death.png b/assets/textures/characters/magog/death.png similarity index 100% rename from assets/textures/characters/gog2/death.png rename to assets/textures/characters/magog/death.png diff --git a/assets/textures/characters/gog2/hit.png b/assets/textures/characters/magog/hit.png similarity index 100% rename from assets/textures/characters/gog2/hit.png rename to assets/textures/characters/magog/hit.png diff --git a/assets/textures/characters/gog2/idle.png b/assets/textures/characters/magog/idle.png similarity index 100% rename from assets/textures/characters/gog2/idle.png rename to assets/textures/characters/magog/idle.png diff --git a/assets/textures/characters/gog2/portrait.png b/assets/textures/characters/magog/portrait.png similarity index 100% rename from assets/textures/characters/gog2/portrait.png rename to assets/textures/characters/magog/portrait.png diff --git a/assets/textures/characters/gog2/walk.png b/assets/textures/characters/magog/walk.png similarity index 100% rename from assets/textures/characters/gog2/walk.png rename to assets/textures/characters/magog/walk.png diff --git a/assets/textures/characters/pitfield1/attack.png b/assets/textures/characters/pitfield/attack.png similarity index 100% rename from assets/textures/characters/pitfield1/attack.png rename to assets/textures/characters/pitfield/attack.png diff --git a/assets/textures/characters/pitfield1/death.png b/assets/textures/characters/pitfield/death.png similarity index 100% rename from assets/textures/characters/pitfield1/death.png rename to assets/textures/characters/pitfield/death.png diff --git a/assets/textures/characters/pitfield1/hit.png b/assets/textures/characters/pitfield/hit.png similarity index 100% rename from assets/textures/characters/pitfield1/hit.png rename to assets/textures/characters/pitfield/hit.png diff --git a/assets/textures/characters/pitfield1/idle.png b/assets/textures/characters/pitfield/idle.png similarity index 100% rename from assets/textures/characters/pitfield1/idle.png rename to assets/textures/characters/pitfield/idle.png diff --git a/assets/textures/characters/pitfield1/portrait.png b/assets/textures/characters/pitfield/portrait.png similarity index 100% rename from assets/textures/characters/pitfield1/portrait.png rename to assets/textures/characters/pitfield/portrait.png diff --git a/assets/textures/characters/pitfield1/walk.png b/assets/textures/characters/pitfield/walk.png similarity index 100% rename from assets/textures/characters/pitfield1/walk.png rename to assets/textures/characters/pitfield/walk.png diff --git a/assets/textures/characters/devil2/attack.png b/assets/textures/characters/thedevil/attack.png similarity index 100% rename from assets/textures/characters/devil2/attack.png rename to assets/textures/characters/thedevil/attack.png diff --git a/assets/textures/characters/devil2/death.png b/assets/textures/characters/thedevil/death.png similarity index 100% rename from assets/textures/characters/devil2/death.png rename to assets/textures/characters/thedevil/death.png diff --git a/assets/textures/characters/devil2/hit.png b/assets/textures/characters/thedevil/hit.png similarity index 100% rename from assets/textures/characters/devil2/hit.png rename to assets/textures/characters/thedevil/hit.png diff --git a/assets/textures/characters/devil2/idle.png b/assets/textures/characters/thedevil/idle.png similarity index 100% rename from assets/textures/characters/devil2/idle.png rename to assets/textures/characters/thedevil/idle.png diff --git a/assets/textures/characters/devil2/portrait.png b/assets/textures/characters/thedevil/portrait.png similarity index 100% rename from assets/textures/characters/devil2/portrait.png rename to assets/textures/characters/thedevil/portrait.png diff --git a/assets/textures/characters/devil2/walk.png b/assets/textures/characters/thedevil/walk.png similarity index 100% rename from assets/textures/characters/devil2/walk.png rename to assets/textures/characters/thedevil/walk.png diff --git a/assets/textures/icons/Skills.png b/assets/textures/icons/Skills.png new file mode 100644 index 0000000000000000000000000000000000000000..53098be5ff4d60459010e5b7781447e0125cd08b GIT binary patch literal 18610 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�Uw&uLL=uv+W|Jo}s0uWTEP9n{Tb`@# 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 literal 0 HcmV?d00001 diff --git a/assets/textures/icons/icon1.png b/assets/textures/icons/icon1.png new file mode 100644 index 0000000000000000000000000000000000000000..89ea11925648e1edf8d4a9074ad784a1291ffb92 GIT binary patch literal 344 zcmV-e0jK_nP)Px$5=lfsR5*>blCeqyK@f(&IZ|tyKomg`B!LtGNs~5Bsyu+TrIl}x7mz%Gtq+h? z0kO3aA%)=PKyo0SH z9S_O}Rn_Hc?d=vu2|g!*on%bRpx@KkeBmUAQG(sTu{7xS6rkCtb9sGBt97&$HzsB@ z>=tznU^ZXqWPC*#V#@*8wv36fA>|@x1Xb01+f|VJ>4O&#_%3tZjPC&WN>VO5ZSU&@ z03ssirwu1K8g}LJ=~>cjL;9T+3-&swf&jd{z6n5@Z5$_CBji8LnAm~5e|-KzEGOQ@ q?9$oEvDOa{3THc)=u_FrUi1TbEP*8-hkBs^0000(P4+7I*|gQu&X%Q~loCIIbCX-ohB literal 0 HcmV?d00001 diff --git a/assets/textures/icons/icon100.png b/assets/textures/icons/icon100.png new file mode 100644 index 0000000000000000000000000000000000000000..09b9d665bdf3efd89fe035397bece8472c0180b5 GIT binary patch literal 520 zcmV+j0{8uiP)Px$!bwCyR5*>Lkv~jRQ5431x4aTFUBig2YHwGpq==pbMu|=JKs4M zE{KkH#J#CB*_k)$%5h|A|MKpOu2_`az5R22!v7c_8Pau6cbppsL&}j&07`C2+#Vm+ z{QLYz078C)jdGQZa+RL$IGvpaTbD}0!4{u?)%2i+-Y3ehG0sNHzIsM+v(CfFV+ByD zR#@FxCpM!Uo z;RMNWLf0Pe*MtD_ugihM+?~D8^Ow`w$V)IcpVB>^=G+mz8|2I)3rnNS&BM*%TY>3* zv^2<>%O{gZ+X}s8hWBV#wk9Vt29OE}{Cvv<`ISO|crcR=h|lr?gJd|tPxCa^f1C=o z>;mOAx4nTW3*xtwNGXx>57(~7VePu|z7XJR$F}(XW3Q#jh42rw$he=8bYpA)0000< KMNUMnLSTZW3ir+c literal 0 HcmV?d00001 diff --git a/assets/textures/icons/icon101.png b/assets/textures/icons/icon101.png new file mode 100644 index 0000000000000000000000000000000000000000..42da7841987cff178fb9818183c9102f6a3257f0 GIT binary patch literal 479 zcmV<50U-W~P)Px$nMp)JR5*>LlTRo_Q5431S7RlMSx7RBL}X!DC?ir97E-Ki*s+)uE6L7Ip+pw5 zQ5K|>Lb9-!NTGP~M#-O-hIu7sVZqdhT#Iq{(X( zivX}zh5)D@SQG%a%Y)K6r1~zv?ed_!DjKG{vtC1DrVT(v!1rsjg5;@2%(SUZ%(J~4 z1wgh={wYEpK!0PiR9h58#ZmBV^*1(4mjkD26Z6b0Z0I^Wf)nTh_zze0g@%VP=jEZC zwkrZY9$!BI@HmHM&`Zp;GaJpY9=a>doKLJLpeN%%(Gr2#Ul!GHU5$sjn)JS=s$x3E zHr)=MLrVbcoW23jg-v_%fc=8DoH1N)P*Rw$8)iI(8BfukJU|A$8hCmA$>sHDZotaf zu>gqQ-4n445wQ%RBAM~jPv(rAwTCR((KYF-?-MFg#4^NJctjGKbKP5->;-;4Wjnei zl>?=+O24kRrji`JU!)hjqPx$Gf6~2R5*>jkg-YwK@f(&lYkIxf>mI_i^S4gq0Mz7gnNLH&Q#j?09W}4d4M#r z(oTGUa1U^e&7Gx(xxhjyNfQEAYazR2_i|z(PP4N+`~5Tjz<? zDGhH&yBFdI!m?8l*tM|Dyr?wMd#DKL@t1kZW?oqEGEYr@(7W-#S>nanz;wU6T;m6V zb}zKxGL!VjGs88u;c)*Hfb{c~+vg7^-#62s%p`swtcg7r)&c->wO}$hH1GZK%vPx$AxT6*R5*>zk}*reP!xqfT?(a(VA8S=^+X9ZD7a0p#Lc2rprC=oOAEx!Ny}g9?2?xdtLKqdM^Q@ zFpy~?h{8awas{^5C8mi0z#sHgKYo0|_AK^JA2f|ILGi#J^r^QT>MaKV+p{Q)D-EJB zkcGI6rt4#SmbQ*zFdvWP^=pIU;e^B99RRH5aU(#CPxU1{y?YU20j3vK6B7=+XAs)WVI+rPri!5_&(YVv*yJly~Q002ovPDHLk FV1gpRpm+cP literal 0 HcmV?d00001 diff --git a/assets/textures/icons/icon104.png b/assets/textures/icons/icon104.png new file mode 100644 index 0000000000000000000000000000000000000000..f955f2e96ffc071de1b55cee88af6f7f9a4e5af5 GIT binary patch literal 290 zcmV+-0p0$IP)Px#+(|@1R5*>@kRcAjFc^j32nhx=NwQ=L$%fq#NDv$VLx$iKh@Ap46m=Nfj!?@w zSwoX1lQlC_MXlMo1ttkk{r%hTHSYmGEly(n?ajnqR4mmEya*z5Zr`;vwST0yJ1Umy z?I8n@8L(s&^Wf;%2E9cCN3#_GfYt@15_mpNg9ejNa3jz4vEE$Px$t4TybR5*>Lk-tk@Q545NH$;b+-aJDD2Ss#gn?MJlL9BEVQ7Ii=9NiqGU0f;| zEd3AalEtYlItD}vjs{9bBNB(ihCE7Jf8@Q}BvoJFIh1#KuRdKo)46=k_j|tF0}m{5 z7nqsKl1fUqQZ;FJI>K?f)XX3E8;ob3=swjiIcqA{vX!2l7*A{dxv&R7G-SD(>X)Lo zH;VBnCIl{jFR!?~y4KvkSR0rJ+w6ZkbXsi@i}x|~Y=MYBIzXdVr&2YsR13>i zd~f{wILlVNoPR^3Rwowkb3IW6pnP;wX<)m*LJcZa6W{$qg&vQ3k4CMo z;mYFVErFkhCMfKd0^s#rHX#0=2MmmaPx#L(=QJ}Q5?qc?`3S>fM9|Nsvy}E!6ZTP24vA2kZgjWin?I4nP38n z;wG*Qf!$#f>=x;#_%n97=W^27**?#n^V>P_=hEB)V{?%EJ{AdTo?r1|VFI8WV245R z3U)Y`jcZB)->_qV6aE^Yg5kpuYmN2`o*OG$4B&k~NF>v8JRP`P0%-V{8!O7C{Kuw` z2Fq4aEWIgmHremi42B&?%scLvv$AXzB^nM%BAFIP$Zd$0-V{@x0I->D0m#&PN^isi xP^gR_5THA?RP3|Cy>2z-f5G*^$n|G)y{^I;cYQ$?p>O~I002ovPDHLkV1nbye-r=! literal 0 HcmV?d00001 diff --git a/assets/textures/icons/icon12.png b/assets/textures/icons/icon12.png new file mode 100644 index 0000000000000000000000000000000000000000..9b31b1daa818811cc7c842fd40251f761c56835a GIT binary patch literal 363 zcmV-x0hIoUP)Px$B}qgTl1)y+P!xr~%U>-UFmYh44oD;}pc50uIAQ^8!gVlX1unpmj!Brv zoYVvfEs#KhET9%co)g|nA8n0M&+zn|ulL>-{!2|(Scg+L_MBe7Oicmvkuwq zK5T%702F~b>kz<{4M6W3EFIcWfaACsNM{|ABr(rkljeB>fH$0pA>E(esFu4o1s&4T z`vVN(GQG`M;BZ8M-exR=xNJg=(Te`0PJdFTFPx#=}AOER5*>bQZWvKKoFcWK7o)J8!C(q*w9Ffp`s$zK7$uYVqtBlC@HKg44qII ztW5ZU)mkk%;2;v?G#AhAvbt z7K@qM0h8COWqp=y--`#@WB?EV@IKB70G^v$r{El4006tdZN&5Zg}}E(ZBvUZI?RsB zTiQeb2z*=AE$mZ=ILHMmC#Io`z_$gH>lPUM)S=V%D!BJPH}Zfxla?_gqIE literal 0 HcmV?d00001 diff --git a/assets/textures/icons/icon14.png b/assets/textures/icons/icon14.png new file mode 100644 index 0000000000000000000000000000000000000000..d6f065526638c5eb18754d67874b92e5bb2dab7e GIT binary patch literal 345 zcmV-f0jBPx$6G=otR5*>jlA&tEKomt!mdJd)!>V2=ykhvNmOF)$iWEERJy?gBo_+9yYcyEN^XQ^DVm8X#gSnl>t9D0`Ea<_K?>OhUw r`Rpo-U_bNFsR;iGc^YXE{}+4%=?0e_O}N_P00000NkvXXu0mjfI-Qb` literal 0 HcmV?d00001 diff --git a/assets/textures/icons/icon15.png b/assets/textures/icons/icon15.png new file mode 100644 index 0000000000000000000000000000000000000000..624e52511fd5c7d9e3bcb426ed808f7c940b0537 GIT binary patch literal 363 zcmV-x0hIoUP)Px$B}qgLlRrzfh&Uwr zzm^gSi#XKd=?U)KTLG|G1)SC#bz0l)i0#UwQL6&*Hu*5$LK61ZLFVV&x~K|WVgq!0 zeX*y+EPx$KuJVFR5*>Ll0QqsKpcjj>o*WV2$WI^O$rt=IJ&r$PDQ~*in!<|I2Cc~ z;83Uf0ZLqgb3Z@^A(ujFK?rp91Du20nKW%weBrpizvo`wJNT!>rj2;MQ~**Y0Cd{! z+OwtA1wRN?JYTA&U7=}Lh~k-9{}JE^p>iC{%s+B!4~#HQl0KQZH@ ztrq}x&z^aEIt8HK9f}-a)t=*6EC#)t?W$Wg5RtxJ%7nCwv=)ONt$rW?Ua#7!>XxZ@ zha!_f6wfl&rA&}AVeC&#F+i&yhODvD<`>>7?^Wgv&0eE{t0PVqA~>>8_M zU0fss&`+g5j)v&D{#a`P+CF?GuY)WKHRs^s+{@gUR*{Pmz~jRm0Qc9orl1J8RtI~> kO82_?L73}*NBe_50Zr7Kpux~O^#A|>07*qoM6N<$f;l~`Jpcdz literal 0 HcmV?d00001 diff --git a/assets/textures/icons/icon17.png b/assets/textures/icons/icon17.png new file mode 100644 index 0000000000000000000000000000000000000000..cadf823bcb3b9c3e0e2188992cc0897ded0c33f3 GIT binary patch literal 429 zcmV;e0aE^nP)Px$XGugsR5*>blf6qqQ5eR5S6l)K8UqLWAcP5m5Wx&gpmV$BLoW@!~~DIG@yfV&?Y3(X0w*5UH(gtC!W z>}iMQ_omD1_if`qT1Umb9(c*|PEk2{|N zKn;4j6Ud$=EJ3@}parggyYdh6K17E-kK=R--wn~GY+>HWXYg8AP zM7vqxt^IBdOsaGo5!FJ&I?pFEj=Bq=-K+p~!S)2cfR}XM{9gW@vhlFU#=`?Y)}QnN XQwgFV!WY`m00000NkvXXu0mjf3xKqv literal 0 HcmV?d00001 diff --git a/assets/textures/icons/icon18.png b/assets/textures/icons/icon18.png new file mode 100644 index 0000000000000000000000000000000000000000..30ba0a618c23db9e8471ae2d1f4957d61a52430e GIT binary patch literal 323 zcmV-J0lfZ+P)Px#{YgYYR5*>jld*2XFc^eCBNmt=Bvgh@_14T)_cBH8#6z(6DKd1(6I9)@WMG1q zKxCjeLj-E1NVI!Y7I$*wLYxX!;x@~7zW?r*;Zg{rM9=0ceVIoN)4r1wMu`ri#Qn%& z+SlK2SFJADcCWMTUITQS2%r87FmZ~ND(ka2CKPF`0Y9)dDGpNI7(h!PegK0J Vg=OXcr858k002ovPDHLkV1iEKj}QO= literal 0 HcmV?d00001 diff --git a/assets/textures/icons/icon19.png b/assets/textures/icons/icon19.png new file mode 100644 index 0000000000000000000000000000000000000000..91fab1153c2e188658c3d458c1814df10aff0660 GIT binary patch literal 319 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`jKx9jP7LeL$-D$|etNn%hFJ6_ zCrDg*aC)ib|NSwuKFiOSa;upoDIp;-FW&0h0U%f)Wh}lrN-V{1;|{&9T!XXxdUlQz zU)NSj=1B-|N^?KApQmq5JxGJZomlIKv!uoDHcP)c@l*V$frz*QGdCMwTgxNo0yCaB z|IhU->f@Zb`M0&16j&GGHDVzQ4cQ`R(pP`_q6rq>D{oxg$?Mk z#Dcf?I Mr>mdKI;Vst0C$Oem;e9( literal 0 HcmV?d00001 diff --git a/assets/textures/icons/icon2.png b/assets/textures/icons/icon2.png new file mode 100644 index 0000000000000000000000000000000000000000..ded9981cd190691ae6a059fd4debcb515f9c70ef GIT binary patch literal 257 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`jKx9jP7LeL$-D$|c6+)whFJ6_ zCoB*!FfuSOcrxwVzv+{Ml{_CWcKQv7^c+*E>6N|}W<~eKvizSycwwRP3|MbYLVZyWAKARn}4y)2cn7zd7 z)gq1WG`RP_o47`DS-YUxgy>tp>%SKlx7nWysxZ9|G%WG@JX@a0ySpU=c@Cs;D4vyI zQ;^=Y(zSO%+8Q>HD@y$1{>#s<$jnm+`zpf7kSr4DFRIqP3g`_6Pgg&ebxsLQ0F+K* A3;+NC literal 0 HcmV?d00001 diff --git a/assets/textures/icons/icon20.png b/assets/textures/icons/icon20.png new file mode 100644 index 0000000000000000000000000000000000000000..bf83966f2c8998d8895d751a1382f26a7ce757f0 GIT binary patch literal 344 zcmV-e0jK_nP)Px$5=lfsR5*>Lk)ck*P!xv0OZEbj6Ql{IX&-=O9)npXz#s_0^a&>50YFSm&X8qd zhKZ%72EU|8k~TFY4FZYS16%|-C%0W8H|$sE-h2N4Kj*)2AdD2-&D0*B1YV?%_nP5& zVpL$encDxj562VJ1E`7;fH01{h|;eU09=jEY%u713DlootkM?)(38tx&}Vdhst)cn zu45a9qrIFO0`gcDr4j}0bEg2n+w4_E z*2%IlnM~!PGXo)B%&!~k34YDsFNASKRqysPFaUSSrG=k8*U3_yrEdR3Rqp_JoIe`_ quz0w&;^G7MJ9QTk@r9eiLHGvZfN@erE+*Rm0000Px#<4Ht8R5*>rk}+<=KomsZqFfPx$SV=@dR5*>LlD|s=VHn3hMQ}KZo0XxWqG>~uEwwi_gnJI*;$k>91vW?!G_~1k zApQ%r*d!8q#|h?-3Pf~j5U006z3#m`3F|DYLO^v}NEoN!_}KK@oZR1mLNBC4on&O91rbCjRG+ky~GW zlnQCF1k3?z*vv`|0EW2?t${+;9irk57=FbYAnOj%8Ym2N8EG=(273Ps(1_fgkx(_p zfM-z~pC?HGo>&xJ)fTK}g6sQ7W3NaoI&Z3K=&B}pR@SCcAuVdvqG7 zFz@bogX7a5ARhLiC@vJmMLg_tWTXb!{Ebo2RgGqQz-%^UHk;CH4~$i;tnEiC*CDkJ zlg0y+hP`H$)F9~JrPFQA!MbLr7mQi9YnsP%(p~Xl^$Yw(-{oqG6?03QfB*mh07*qo IM6N<$f;c<3DF6Tf literal 0 HcmV?d00001 diff --git a/assets/textures/icons/icon23.png b/assets/textures/icons/icon23.png new file mode 100644 index 0000000000000000000000000000000000000000..1ed34629c1518ca98690b12b0ae34f790cc15afd GIT binary patch literal 394 zcmV;50d@X~P)Px$L`g(JR5*>rk~>QSK@^3*5gQ8w!AFQmh*>0)2Ux@^Sj2#cEH0)<`~hh!QdkA? z57^i!nBLwdAXwN4BBqL+#iU^+S&J5?f=Q0=mLVB@m>BX}3 z8*jf|+_g^7!eiFa{^qx)_SFs9LRA0=`!bVGSO8DYFZd&p?Nz-iz&vjuQ%SOgs!$0| z&n`qJov{27Ngx#CxIMwh>)y{t01&<)fl!Qm&S24)#xymC-w!;dh!!P0xg-GkoDa>$ zp~&Y95^)UxDT6!=%&FLJvj+gE*rs`_Aok3i!O7l<=~Tf%v0)Hl>FI1P4p zcl?eCY@Px$e@R3^R5*>LlRHZTK@^3*6$PyY6^)%qkxtNvWDB#6mUa819#w`FjUbxT9=?lgVsLv z#xvEnM{;NjfbiOZ0niU%&Ckf~jT<=SWuix(Yp!$q*0bhk#I9T$2Egu~D~~5hU-Iy3 z5rD7v!>dJdnb5ny?9?bbE76|=zv0Sj>FE8csJ1-{wI=zL2|(U<*sx4rfkLe*ljDZ* z?P7P&m24s|A|mn8uw)Z)eZK36WD{{ImAg_Zcjc}l0?_wSK;?8FAQm0bPTU7rnT`N( zv9kbxa-ap2BJ>{TZRZoYP;2Tzi-`ekzfY0tjc1lNFM-~4b1b6CvFM0)prWeU04SBa zQf+%W!p5Px$gGod|R5*>rk~>QSK@^3*8KyAAfPxs* zK$61BMzFC;EfGYq@Kr2o))gg?A_)q{9SfaJ)-1N3YUa#2=iWOrf)J#OHUM6tiI;3? zK-_1i!=%VC(n~Y}w2rg^gmj{$i?$#9XMhp4r(OWK&rTzs`T=xUF<}7M`ru>SbTNaT$H)n+`_03bQG(&@mM0lj9q-IX-JS?YtC!MYxgHMHT3NB$NYs7l=D z&qbfksT5&a32@Pf1?Ey^HxQyKaa1Kve#i1P#v=hX?=qnm6bLE1)NV>XZ#<#TSX?^s zy9hIPqbDGzQmob&+0GVFWjA2nUGRFxG@I(+!#7c%K$TtcTXR4GfXvdUZ>-u6KP#&f z0C04C3cxa_5QVBeNhUkW?bUVQyo2wrEdbI*TX(kwFdy9u$PZf^J@en}=Y;7%h?h6K z;XdT+J44dpu(hGvvz8w^Bpp%nlHKN>!2iJ)u;-K#oghP$00000NkvXXu0mjfW&y_x literal 0 HcmV?d00001 diff --git a/assets/textures/icons/icon26.png b/assets/textures/icons/icon26.png new file mode 100644 index 0000000000000000000000000000000000000000..2667b187fda1329b06cfcaa1456b1234b0228404 GIT binary patch literal 381 zcmV-@0fPRCP)Px$H%UZ6R5*>LlD$g_r~(uuS#Vju`p)XN3SiLoHFT$t!MD<{*u9v$FY3!pcba*43L6> zoDA-7u7Q`acg4 z=$w$5aq@fEP6LhBw~iaX-qR9avu&|N!H28SZ8_P=Y(UVqGJw~BLD>GsE8Q*&n^4Kj z>_6!V2?-YEU)hwInN{Q!wBOvXpCUNhY6th5qb-3x?U@JIfDFlVu}4+Cl^7WQ&Fs4J UnQQqOVAwEty85}Sb4q9e0Krg%(EtDd literal 0 HcmV?d00001 diff --git a/assets/textures/icons/icon28.png b/assets/textures/icons/icon28.png new file mode 100644 index 0000000000000000000000000000000000000000..7f1f474860bcf7ce97ab6f86132bed8671e3266e GIT binary patch literal 429 zcmV;e0aE^nP)Px$XGugsR5*>TlCetyVHn1L7aACb zs5f;&*|r22)KV764wb~k3IH+A-R;sBKOJY_u(-~c)jw2EnwsdSiI%>l5z^vc20 zn`JzWUs_4*DWn7d^Xehh_d6CJhGet_GA{uujhh?*Q%Tx^qFssQNqpB4D}RCeR}ZC7#gSqTyWzeG0&+>{9T>Ggkl{i8ks XxweY|Iz-uq00000NkvXXu0mjfcAcPx$kV!;AR5*>Tl0Qg7Q5eO4FG3WoB{8Z+BIsq*U@h?k5ey@jhH!F_h?a(satVT_ zmV$6-X^5tVXlTf&6he3vLA3P`qOBlF0%?ugQ1AM#&xWA0-E+_Py9e$E|D}ulRZ;I{ zqK3#s4To=+2C%&{C3=H>0E|pzHGo1kt_+T@9&5h>?2wPMA^?e8NeSlXA`L;xArm#k zYm0}yBa`lAQ2{*d#w5sV#AMSZduV*v%ifX6Hy+%wnRse-;TqJTO zS_e~{yaWhUmnFC!@^E`cdU4Cy0KliG*?v2x1jt+Q6U=_E|**ADO2bvQyc_> zV!nMq_=cy2o-&2Y{Qn|vcF$BQI&wwS%FO@5b zFBd7)uM2?dn|lqum&zVoKRweL#3&e=TA(KJo3OKwdf zgE5O_!sVXJ45F%&|KFbdCGd#NYdxboJImWPFm9i&^56gM{{tVM{B`DO-fsRfc?XlK znATdUf7RDwQ)a|!91zfYcz8qfGuy*0_4g%GSe{C5Gkt(eddE#MKvAI1bn9l3Vw*UV4ZBmNJa;0wXSCNML4fhQPry)Q@O1Ta JS?83{1OQbRqZ|ML literal 0 HcmV?d00001 diff --git a/assets/textures/icons/icon30.png b/assets/textures/icons/icon30.png new file mode 100644 index 0000000000000000000000000000000000000000..59f18bd3896be7c318a24c39c38b519794df737c GIT binary patch literal 288 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`jKx9jP7LeL$-D$|Zh5*mhFJ6_ zCrD%*=c9UBZOhGmmKfR{YAh|y&h?GU^VfUPNnhqK;NIgj>EHXC zTXyW>UL)Kab=kleX+uZG!)lbVJ$RVDmKr40_p{#o>(%^E+)VQVDGbn1pSu9Gsw>q&kt;*<6C{ zLE?tovo>ypnXWr}Pj%hmd333ZM}Pjk<0~Z(bHAu_dnR1M$jr=q_{qDZIVZoq`S`ad iz5l(sp5Px#=Sf6CR5*>LlQ9m1AQXn5rZK%j7X}7(>oGcYaO@$Rj8kVP;=~~w89KG`65Z5+ zfu+Zw)1wHOYWpW7@ZkM??-2n0R1^v_E_9w!vmPc1by)<@29uLyKO2k-&A8BC2^bgp zT3u!bnzr+jY#KAMv9s&|avIkq2|Usr9cP;rF^O&fsGqlFPV5vT#{Yd zW`orwoKMH-c7JN6B;+ZDN8bYg0B6;@kMxV)b#PxvfnAmA00000NkvXXu0mjf;AMD_ literal 0 HcmV?d00001 diff --git a/assets/textures/icons/icon32.png b/assets/textures/icons/icon32.png new file mode 100644 index 0000000000000000000000000000000000000000..f57dde97e31252591964ef6603a3994f0fec5a3b GIT binary patch literal 344 zcmV-e0jK_nP)Px$5=lfsR5*>blCMt0KoEz&HYfW6Br9r2P*hMu5T`Delt%zp2jUb@af09hb?)>v zxgZFFoT=F+s52`zxfiG}YKQ(=pb6nK-PxJ>?QgaVeWTc>EVn9>#mIKF-g0KzfNKK84;0hl<80CA%Dc)sH3^qfPrqn&f#J`;eV zthvcgyajQhFxqyU-Cmq=|N8zlf(ypbZWae^jJ6oPmeYTuBVe?pC~Ju`tcYwD(@t(6 z;F_~El4McVWLR1I2;E|~+y+@1$%%2I$kK?StiNp@jL@GsPSn6b|H4B?@RI{ktE!lLVIqvgq(x`0000Px#{z*hZR5*>rlCf$6K@>&L1V12<5YWa{S*%uDQ>EH!i}erufE0rMg<$Dl*jQPm z5UsV+H-&7KfhB?b!K9E`mT_DHA>?*5@80{~oq6z=(0O5XUf4R0suNewPmd2luJXx_ zcz=6mx4Q!X{ceYkug@U&=33|N?m&CpqrL9oj6!h~z;d;>QPjMaCI}Hjn#AV`(j-JtF|L?Q-PbK)|Bk5Hs)*D5X^5#Xp#%!e5w1`)%2n3dgs zWH5QnlrwTdcju!Kx*WYc+ty&r`(g?}YcOU6cJ{WpFbTTqys-XnL{T%ijlW*y|Hn5= WCU`HiP+a-|0000Px$9!W$&R5*>rlD$d;K@^3*4HlL{MA%rw%E2n8U9k`XDME_P8w6}E0|y^JxQY_5mLS1p8#lnFw(m07(-hnYLaF#T@J$vOb&cUz8>34sbL9ZljMGk4D2 z?q$JT=pZlCOBeBp z+x-myjlq}^=-a2~N{BU8MX4??QV7?2jlVwS|JOGHafi`ogacCm0000Px$R!KxbR5*>bQ$0w-Kp1_gA{`42Lh4Yb1eey1R;&m@2kFqsNw825gbofaUEIXY z!9ko_C={GKb@8uQM_ZTXZV2h(L8y?qP|oQ>elDH#O?ThD_wIeicffyw+773-!x zVq=j;@#PTIcKFrw$m0l&*H^DU=7ynx5C+500)~Vz)Yu7HS_gttDd!b00RU9Wd4&)L zlUk8P-DDjtt%Gi|9uNl-_#x7SU%$mp zFEY)NHz?vCP}||X{+Nq1wVewL)2e?n*IjQNH~XTcKf^B=H=U zTJYZ3^Z8MIX{o1${B&^%5a5zs`+xE0-Yus8^6yoC{J)lc{XcQ5sQ<^8vAts|@l103 z|8H?mLAs)J(TA(iZN0nKFV^^0el=x-xUkzro^nR3ia&4u*UwO6V`JNqxGAVd;#J@x z!DrvI&HpDzRK0yB&!(Kq+q2;SR}awq_jmsP{{J}r|9|_sZ~yL znVPR+t}@T+XWZ{(a=RsEk=w>7Rx`;U`h2YFEx${Q414|3&J=GuQw;PxgQu&X%Q~lo FCIHXXh{gZ_ literal 0 HcmV?d00001 diff --git a/assets/textures/icons/icon37.png b/assets/textures/icons/icon37.png new file mode 100644 index 0000000000000000000000000000000000000000..d9e15fd8cc4294b826ca3d2eb1b37231a10653e7 GIT binary patch literal 331 zcmV-R0kr;!P)Px$1xZ9fR5*>TQ#%U6KoETqZy*Q?f|W+nr4d9%y{|A1|o^ed;#iTR*Q0I+gBgL6TcNa0qqYN&m? zZ%yC!2^As4)t8rzmh zj@VNWCNv*(DX&L5$QFxY<$8v+rHbs58#dchs(CW(pkJ+|$kIU;QB1@n08*?`H?;ne z8u0GN%R>`AULLS5Q+tbC*p^Acy;BquMKO_Z@AT?gHA~q`WAOg!r51AX>7SI}6?v+E dC_M9fJORsWcT=1l3R?gG002ovPDHLkV1mh&8<`AmBQLxH*65qsR{E^a6O{fBwq^GoYzEmBdNE5>+0=}zRN-FJn})`iM?zrC&I&)~qw z@a;Hv_oYXP`*|5|_*6%Etvt!$yWf7A^0VE=3p0y&uRU`3TGg3t*(6w`xAmLtbRd6w zwbNw3ZXeq@3V(m-iak8{C}Pz~v&y8cmf2^U^Ozfxvy=QLxQPgR3No0jp0d`b-ck3- zo8_;qldE>^dsv;9ChqoQp0`p>pop-m;Y5!3DdlUAdGp9fZ!QeZ22#Hl|4g#nrRgcB k-&?`{sx4Hn|G%`|%YRLNa}+n91O^j>r>mdKI;Vst07-I&o&W#< literal 0 HcmV?d00001 diff --git a/assets/textures/icons/icon39.png b/assets/textures/icons/icon39.png new file mode 100644 index 0000000000000000000000000000000000000000..78a1c726c7fb0532942ba9c8edc122e82119bff4 GIT binary patch literal 322 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`jKx9jP7LeL$-D$|{&>1LhFJ6_ zCoB*!I3%%sy2^ib*Tq?9V%*q(Knz5vdr$t)uV<%tG7ZG~-8VlmB{3l(;YRr%p2c?U zrk;8rmNGN*BykBKSaUSA)9A^I)3*z1bxsJSMJ2i1to!mb*J3v3{6lAczUGu_yWTL{ ze15X2OG=~Moz*@!SR{eEmNa=u{e}1+PH9OPa_aKJhryF zz|3r`Mq>xhnJq^iNNr?YcY&VY8N9zOkQB#=TBjuf#Ja5>FVdQ I&MBb@06VgPCIA2c literal 0 HcmV?d00001 diff --git a/assets/textures/icons/icon4.png b/assets/textures/icons/icon4.png new file mode 100644 index 0000000000000000000000000000000000000000..d461e72293c3bf9a609e9e6db283cdfd18c57e90 GIT binary patch literal 326 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`jKx9jP7LeL$-D%z89ZGaLo9le z6C^km2o^uF?>XzSW|{i*u)paE2?-T7?-iTZOtLxrxSC&5huKRqvg6_bAb21i*&ZtE z$1EeIw&=st9~A*VDvkwo?gpAuU zi_ZZa*>Jrqr(t4aW8=dgZFv=YqS>Yx9pXt%aA?^9^bvDU{~U3RuZ+wL)z0xfcLc&u Q0t1G@)78&qol`;+0Q|>-E&u=k literal 0 HcmV?d00001 diff --git a/assets/textures/icons/icon40.png b/assets/textures/icons/icon40.png new file mode 100644 index 0000000000000000000000000000000000000000..086cb96728de00456e0b907fbcc041aac541a872 GIT binary patch literal 524 zcmV+n0`vWeP)Px$#z{m$R5*>Lkg;nMaU8`zS5lHD;p)*Q(t0saB=OErT&(C8f>;q8i=F%z9CXbf zI7sRr;N(&$*hO3v3U+WPB;p|9t`|egkw{5mjT}j|8vMC<7w=NL^o`&5eee6;7fuN& zIJo=tEda^z49W0}xOe*;hBfqdZ{{a``x8O29Et;o_R*mLc(}3c(&F>i-dF;k!R5L0 zIK!UE$r*BThN@Gew3-K?Qg6}ffBS!hotGsJA~%SIFNxKc||dd4Rvc=fvMBktT<@}&y$J_A)rv-AG9 z7b^(MF0;9{e_{e@@UzdPx$W=TXrR5*>LlfO$sQ545Nmi`4LqC`g8!3yDfW=fRNZvVX^$I~l64 z4Zk+<#%R9{Es2UC?=4_WxbR=P0g&Y~spAa8=PnL=u5}fgwTZm90KoL@f|7GfBY2O@ zRA1rh@rNfgTPzv}pd=NEMdMf#E)u8D+`Qi#E4aP;08qNWx)f9VKt0Q@`kg9Yr$a91ADF=Pe)hIyW{%oIK Wr;w6FUmJq}0000 literal 0 HcmV?d00001 diff --git a/assets/textures/icons/icon42.png b/assets/textures/icons/icon42.png new file mode 100644 index 0000000000000000000000000000000000000000..c8981e076ad7434bc3e12747e45052cec4f5195f GIT binary patch literal 282 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`jKx9jP7LeL$-D$|u6VjQhFJ6_ zCrDg*aC)ib|NSwuKFiOSa;upoDIp;-FW&0h0U%f)Wh}lrN-T!$fQb;3&yAdaMVaUR zXBOulI6C3x3x=bSFV4*~`_9%pos*v#2%59M`yGmNDBlL;H#hC$i4$KS@!`QEVK&xU zNs;twLz~1G_v@z!KC_bBDk(7g%rXY2yh1{*`UCyP;OXk;vd$@?2>{GAZk7N5 literal 0 HcmV?d00001 diff --git a/assets/textures/icons/icon43.png b/assets/textures/icons/icon43.png new file mode 100644 index 0000000000000000000000000000000000000000..7b60f5b9d8c1fe665620b7447e38eaff68614e54 GIT binary patch literal 308 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`jKx9jP7LeL$-D$|-g&w>hFJ6_ zCrC_raC)ib|NSwuKF^mZbj#_I0D^h(R_6`?!2&7c>4NhuxOXucupa3$UTB?v>yC7R zXUezcZvPD+zP@&3b0ScThhNVw@q^LBM(vOb(-SKSK618MaGO1^ocX~(j5wR8t#{kA&Q6xt11-Kn%Rc^G`j}_?bd~?^WsObycn)tfjt|(|@Xm&{ z_KZM#B-7`l|8*+jJIdatwCr3^|3APx$lSxEDR5*>bkugXcQ5eU67Xs~I1DZ)1Fu|dNl0!JqgH8bn6*6WK6s$vr%o&^u z?a)CwG$15WtaNd!5Ge^=9DH#x2nV7KKtCt#=u|Dj*X}OwF$%6H6>Cm$^DS zBIi0vpKxEhTJN&rOaQRmdySpE!4F2vOi$tmBLFUjV}7?gRxAXg>MPC!X*)%uBlTMd zUkt~_i7|k_H!!pt9m#ao<-?Z^W;1j5YcgU1obPX{=n{9WXcW48d~K)$h|?aI<0~s3 z8l>%%Hb~p%Py7qk1^~@UUI8qB{$({Qc@J( literal 0 HcmV?d00001 diff --git a/assets/textures/icons/icon45.png b/assets/textures/icons/icon45.png new file mode 100644 index 0000000000000000000000000000000000000000..ffd5877293effec7de75ec4e3b1e6862d2753a51 GIT binary patch literal 290 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`jKx9jP7LeL$-D$|?s&R5hFJ6_ zCoB*!I3%%sy2^ib*Tq?9V%*q(Knz5vdr$t)uV<%tG7ZG~-8VlmB{3l(;YRr%p2c?U zrk;8rmNGN*BykBKSaUSA)9A^I)3*z1bxsJSMI~u)eg3yEVa5@i#a>)tA2Mn(L{CmgZN01{@?nBwbK}!fj4g~O_p?fBdHS4syPs8%Enw0V bO*V%0Rc`Ue7*CV}{mJ0z>gTe~DWM4f0tsu* literal 0 HcmV?d00001 diff --git a/assets/textures/icons/icon46.png b/assets/textures/icons/icon46.png new file mode 100644 index 0000000000000000000000000000000000000000..7ebcc6f3a7e4a5fbaf3b2d7f296ae57eed485081 GIT binary patch literal 525 zcmV+o0`mQdP)Px$$4Nv%R5*>Lk+Ex2Q51*2dtW21L`t-&NQr4OiS{kerNOD71x5P@bgG?16e_y7 z>EtAIaHxw2f%c0pMW6SSr zx2cvY04%-wV8j50p*sLH8U%(|ohzGSBAujrVuZm9Wh3^38qv^bfM>U!2w=KPCI&!H z-?BN6j9(@`cZ2SU5&W9K8WZUx0Qo~>NG674V)XPa^M3FyiF6Y6Zk?r%#{y0QYxINi zr7@hJWtDdNxoPI^WEzrAkXZ0O+Tk z-Ru`*Yi|@Qv*fac|2j}>xEx0F1CP$GD7kDw`e`@N&aSB1_`Vei*;o7pt_ZbN+amhl P00000NkvXXu0mjf$(Z-p literal 0 HcmV?d00001 diff --git a/assets/textures/icons/icon47.png b/assets/textures/icons/icon47.png new file mode 100644 index 0000000000000000000000000000000000000000..5690db45d29750cffc7889ee5ee1db5f5b2062d4 GIT binary patch literal 371 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`jKx9jP7LeL$-D%zbv<1iLo9le z6BY;oWtv;dLC!Z077@Ys3``&>0fW?7}{M&T~GHJ!?f%J0|9+L?;<-Y`k7U}Tdk zUuq08$@TN&btO4ohOq_r{eIS;@qLpRee&d~2cI8Eb;c6Cfgn`MIeS3P0KTqUkXnxuLv}wh@1YjsKc)I$ztaD0e F0swernBo8c literal 0 HcmV?d00001 diff --git a/assets/textures/icons/icon48.png b/assets/textures/icons/icon48.png new file mode 100644 index 0000000000000000000000000000000000000000..2943cfd57d8d3d404d6d49560429a9d05ff6eda4 GIT binary patch literal 235 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`jKx9jP7LeL$-D$|mU_B4hFJ6_ zCrC_raBKOL|JUu7{!v#sb^r)Ee2tCbyYu;!%?u@Gb4Dhe%S{()Jsx*2y~8Hs*Z&)* zfAj3PvT?y~hS-gpMdZT@*XSv*FOZn9XxH?@_nZAIOyAUg>r`|t)wkg>V4B$2*r@nv z!OQv?moJ*?Z@2GV#J-x*z*#~Z{t9Qn*v`l)Hu)VeEa7=$TcF; ePTSIEF*10a2{hj1T(uJDUPx#$4Nv%R5*>bkwFTBFc3w5v=Dj%x0dV#uOM{qZ9GSB<6h_$O5Bx5c0GZsk}k@G zG)@eq^zR(zeJB3||B~sHGo5m|nMlFm_vv~U+zbGU7#{29V^Ld)p=zDBlHEIS7sSiw zPx$9Z5t%R5*>zl08eqP#A@us~L3@gf4zSOPm}#IEjNI_z%*lqkG2;4le!%L1_Ph zAP9;}1UqIbX$Dg$mbPOZE5{+EG|g=bPM+;t&Ux>7Kj2>@Zq*gH>RP2StIYGf?A=?n z8@5MDO2Yn(Ct;s%GO{MIR+S`xm&OGEd)G~(Xu#F^@zTUOvn07*AW7;bBe`B6*9-Lc z92QcTMKi!r?L8-&o|OP_Ucb1jZRe6WwiKP_2>|7X&$K{w$Zcf@pAs<1X$wQlen04Z zFs%+}=B&^ntXr5zW?lws3jj`g7XZJV@|)U^RcB4GI79%yxw$@pF~&$z+#7TG_MHi`Xl-aegU(2bRBsd({=y=002ovPDHLkV1m@G Bk_Z3* literal 0 HcmV?d00001 diff --git a/assets/textures/icons/icon50.png b/assets/textures/icons/icon50.png new file mode 100644 index 0000000000000000000000000000000000000000..d93819c07cdbde7e9902db58b5a70f3551960e27 GIT binary patch literal 285 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`jKx9jP7LeL$-D$|u6w#ThFJ6_ zCoEw7QIvV^zy9=Rf7Dfu9RPw3Ut^>B?)t5Qvn6`Yw&)aAdm42edOp3+_>Era|Nnn3 z6|%*=intKlur9(eo^7>7nD_+d0G@!}nWuj|cqF_>N-n16&;luAaXB`L#uGr}HtfFg z*Z$1Q7qen_moIven3CYoVpG&1AHQc-V literal 0 HcmV?d00001 diff --git a/assets/textures/icons/icon51.png b/assets/textures/icons/icon51.png new file mode 100644 index 0000000000000000000000000000000000000000..670f6ccbf7e2e5429aaca7826e475a0dec094208 GIT binary patch literal 295 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`jKx9jP7LeL$-D$|9(uYshFJ6_ zCrD%*=bcCce#-f&^C=1rvIAm@;`2|L5`T(4iLyJyG&JgTe~DWM4f>_Bkx literal 0 HcmV?d00001 diff --git a/assets/textures/icons/icon52.png b/assets/textures/icons/icon52.png new file mode 100644 index 0000000000000000000000000000000000000000..af4d923ab296c654392d13cd4832868f3c4fc9e9 GIT binary patch literal 373 zcmV-*0gC>KP)Px$FG)l}R5*>rk}*reP!xr~1aWe65NU_HSezne3Y`Qcli)0fVt;^BL0knvocse~ zX{pfJ!Jy!zPK7og5=7IIl+vM-Lvb-qdA#%`qBwY_$K{@nd+vSk-_p{Gq1%kUGu>WY zvwL{10qDOq19-i6E{^vi1@IHI3;~#ui@{q@X`Ef&5${pEinUou#8x6qYSgacc>@I& zOIhMaEf-w|wmONqPq8?U=MC7f4dK%#&6$(5&Qj}2gz1&VECvsa0|0RWkRsev?5JSm z>2^W@W=d-cpmDGB>OV2;`?MbKlK)`+)X@M6Mm}?btX zIH?89mJ;tEjwH*pRz;s2<4^hm5wCQr T7Viq+00000NkvXXu0mjfSZ|;I literal 0 HcmV?d00001 diff --git a/assets/textures/icons/icon53.png b/assets/textures/icons/icon53.png new file mode 100644 index 0000000000000000000000000000000000000000..005085798f5869d4aa90c41659826904a42a932f GIT binary patch literal 461 zcmV;;0W$uHP)Px$herlRrp8Q5431HzEk4B`D%W*pSjB|) zK~Nb=ksuUB^eAYGT7(orB=QeFhaib)2&dZ+@8Z)}OG5`P=W_4)zWbf;aN)m0*c}?# zr2GwZeSXQp>Ye~-`w1LaJjTq83m{+qAhy0F0os3hIk7)y$<5&#{1$H^s1(YCBliGo ztc?+l+_RI~R`<1s1H7{#0Wi_+m(b+F-AUB8_t(y8T&{iqoQ_@r@RSJ3;lQr2DDcjP zL_My_ql&+YB1fJTT&{l3^o*SGyG1Eu08J*=S~0O;|oP)l#2y;Yft>Ov7*h5XXt9>A2=<(sq^3UGMa#&hwJmuivp-Hm8b z@RSHjfKtYw%QtDOV0rUGfuUiHMm8xwvpS`W!N`2j7Q7j+(5DUI@ghwUMev!`Rbi!2 zZUILUIRIX&MGJ|Vsaa@xFcsBX{)xvsuId`w_)~lV7EYf0VHjc~00000NkvXXu0mjf D8ePvF literal 0 HcmV?d00001 diff --git a/assets/textures/icons/icon54.png b/assets/textures/icons/icon54.png new file mode 100644 index 0000000000000000000000000000000000000000..4b666fd512e669cca5f2e0c2260753dce41e760c GIT binary patch literal 326 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`jKx9jP7LeL$-D%z89ZGaLo9le z6C~^oXsf*ZFUGp|f3(P!f5rv|1_v^n8aQVsY}}z2I4h8+;^!B;=JU0p&?)JX>KV0VL z(G9z={IzFhWxdQcQBs;$Z>Axm5%vvadEXq*Sxtu4;=skgRd_l*?^!eCp$TW zd7Go?fdd=mqb2m_+nxhSFUZb0nQ;8zfd{FF4jX*caJhH7rM(dd7S`LF@bK-cIt|j_ zw$lB)kxb3kX$MaoW6zT?l4hHro061}kg!2qxQ$z3b0R~UvYwqQ1H-R#J_}P$o%90+ O41=eupUXO@geCwS1A;{W literal 0 HcmV?d00001 diff --git a/assets/textures/icons/icon55.png b/assets/textures/icons/icon55.png new file mode 100644 index 0000000000000000000000000000000000000000..91a95a31de4e09a28d8dfdb1c6f8de84eff7a26e GIT binary patch literal 315 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`jKx9jP7LeL$-D$|zIwVihFJ6_ zCrE5Lpsn)qzZmP<|Is2_{uvt>7#zqbIpEThc=XY(2-C-=51wBB&11*E&hXHW6FG|- z!aaoiq9-zP8+PUCdmhW0k##1H+k~hoqXLn_g>RwhF3ch%2!%< z$?F5nba8ol@F%~X-NAeYtBNl#S7>R61l5L#I~a_l*%HhiJql)Fc>dbc#69rJ17H9!c)I$ztaD0e0sy0&db|Jt literal 0 HcmV?d00001 diff --git a/assets/textures/icons/icon56.png b/assets/textures/icons/icon56.png new file mode 100644 index 0000000000000000000000000000000000000000..4e6b42051de44f5f84a9f83c802148fbba534ebc GIT binary patch literal 370 zcmV-&0ge8NP)Px$EJ;K`R5*>jlD|vCKpe$CEgc-X3A#9BaVZpscJT+g2ujG<(W#Cd9K`=YaBz@- zODCONbO@qYkPfGd0b4i3u3udV-9U~_l zBPRjWnI6V$eLOD}Pi*kqxySNuQ>qU0L@-Nb8K(~wA&g9tORfD?xppK8ng z^!sKp3&8gI;2+exJ#67(3zvGg$IP6i&B9zEJTMKgFgB`%Fjr6$f2#k44`=OT7%_wv Q%K!iX07*qoM6N<$g0M4~Bme*a literal 0 HcmV?d00001 diff --git a/assets/textures/icons/icon57.png b/assets/textures/icons/icon57.png new file mode 100644 index 0000000000000000000000000000000000000000..ef5f8935b430227e2198c41c7d682fd4be039350 GIT binary patch literal 235 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`jKx9jP7LeL$-D$|mU_B4hFJ7o zow$+rkb!{f{Ixv~I0b~%j8jCoHnR#>FmJz*(pz$d!O>~TN{vm9D})+r-Si%oZ+mBZ z_xi#6?w<2sUrw&7zyDpkP*3nkf{f=9uLJo?yaA=ohBD`~8k}o&CWYK}xNjzJYI0!N zy-VABrJBzlO8&sPha+#gHp4M1m6H-S$E+$>S2kN7vzj+ig=!3>_RelF{r5}E)&l3c9- literal 0 HcmV?d00001 diff --git a/assets/textures/icons/icon58.png b/assets/textures/icons/icon58.png new file mode 100644 index 0000000000000000000000000000000000000000..12e4012cf11b0d26dced51b4034c9e555c7a1c28 GIT binary patch literal 340 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`jKx9jP7LeL$-D%z`8-`5Lo9le z6BY;ya+L9|C^a@Vwl=P{ zl`fKpHhq^oyiClrEt)^>@BXh3uGa5hd=)i|$9&oigSr{F+JZl~ugv9{9d!kyT_W#Z z&AA236pnG2KX|tFH4g|VNpbSr;Q48=wKuUYTQ6qw`rURmJP`?c4UB@lEN$i$F->bE z^BB&so@hI8V74^(gPa+gCo;A*xSbK4qETC%%;>yivD)Fgzr!Wt?Dn27`1Yet#Mb8p z+ntD{=EN6I-X*!^%-Xn%LHdO5+rRy%Sy^~LaC!bZf8fA@51(GvvK3~!@;G-CHEvw0 gY!kDgvRR3Nfxjv%Q@}b27)lHbp00i_>zopr0MQ(RK>z>% literal 0 HcmV?d00001 diff --git a/assets/textures/icons/icon59.png b/assets/textures/icons/icon59.png new file mode 100644 index 0000000000000000000000000000000000000000..3ff29dde6bb59b5b64995794995bea24e39bf44d GIT binary patch literal 387 zcmV-}0et?6P)Px$JxN4CR5*>LkugidKp2Lfg!}+0MUhHLRMNCd2Peg)Qx{!aL~w{dz)|!E)b1j| zL9h-wb?f3F#YJ%HXxkKPyR>2`*g>3xIOPb*Spt2R`|jg=pL_2P=9D69uGilE@c!*+ zRXP^~M2%6&KuQwhERYJIHOGm~(ODJXtZ2pQ8b-m#0_) z4L~ohkm`Sn=I_s`s28$8HpAB14uBtp#1cI0Sz--pQ_ayIyt0%rV%Jar9#6{te%*~l h56f6K0HoKLOMitIXc$%5HZlMJ002ovPDHLkV1m2!rW^nO literal 0 HcmV?d00001 diff --git a/assets/textures/icons/icon6.png b/assets/textures/icons/icon6.png new file mode 100644 index 0000000000000000000000000000000000000000..3e8b6280d84f3d5d959598f3988c477a5f242560 GIT binary patch literal 287 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`jKx9jP7LeL$-D$|ZhE>nhFJ6_ zCoB*!Sj2rNZqgt5`D|Bb?9`}=xFBk?<422%c!Gq$&UmqNVf8f=8iC;9vNg6J+4fi( zw+AXeJ5kRD1l`BgB_)91UY3dh2;7NCYJQliHt9|`Yr+f;<`<2faupT4JNBylw699g zdT~0zlqK854ruton%mAIAN}+z*R&<{9{ZHbFZt$ZOW={y+ig=`9C;MArmXGPB>; bI27prJbP0l+XkKfh}+K literal 0 HcmV?d00001 diff --git a/assets/textures/icons/icon60.png b/assets/textures/icons/icon60.png new file mode 100644 index 0000000000000000000000000000000000000000..896406454ce5481dbec976235d9262e37a14a657 GIT binary patch literal 309 zcmV-50m}Y~P)Px#?@2^KR5*>LQ!x&LKoFd}_zVaM51=&R0Twof0x4-Ns4OV0EGeugXf4Hp-Urb8 z028DCz-lkcvX~gRx#V_cc4l)2{8l1&WSv7kO00000NkvXX Hu0mjfSWI{Q literal 0 HcmV?d00001 diff --git a/assets/textures/icons/icon61.png b/assets/textures/icons/icon61.png new file mode 100644 index 0000000000000000000000000000000000000000..ba65414f41bc1972c23b3d5d980b2649abd2558b GIT binary patch literal 348 zcmV-i0i*tjP)Px$7D+@wR5*>LlP!*eKorM+Og4Lp5)xEZWfKm7sA(|m6)LI_NEEUH)eBVaRx}s{ z2WW!a1CS7U4_3X|*$0Ttj)9r?{$DRM@XzG|JRg_Q4+B=4qxXDVMgTty09b8~o-|9J zd+q_ezCK228oC~rK%Z-Jvt-Q$0NhVE3oPTpo*QjbD_^gl0K6w_%DCWux{)@y6)-x2 zkW_Wc(Dj_p2LSukLX!x>ECAV;aY5STq)k4Jpqa(COPV&h-MjxbyN;oU=-PvJW zDpz$oA($hz_dtpQbcZ%~2gHS$E6iD!x_0qvh*jOP-)-6Nwv$0FiA*B+VZhM!v&~vP uN;2~ThZQB6eN-CY_AF-p%lZZ*{)$wj%u|y90000Px$FiAu~R5*>LlcA1-KoEvM$UR0$6CR+F?_QWd0NmM1G3Q>EqoFEuP zAD{`c>J$l~PjQA5m)#5tr#cDAGW*Z}|1$&dWHWfE&F({_ygfKthVREoLwg=W@;`n@bGluC?~SqnC^1ZWcJM4ruxWE)a>ja;e3 z%*~YrQn_in1;N@(%y*y_b)f{F_DAA#O4D}y)Zb*+9QfPbi?p|98z8&poc2cm;&VE? zn+>sPJEAZk3WLQU|BKlSqA)P~wOh!pIq^B=>;03lALefL4ORevEhNA2)|x2h-qtA5q_xckZJrI!B_ zC1&rLyp+?=QY~e2qMsZ4?6kB8Qw~eB89bP7$GlvI+sHlW{G^B9gxdbEGAw>r*J?R; z0e8Z^30F3^{Jwee63aTtn*k{eiXCU&VrH#mV)(}3I;UHE(oLX)7(8A5T-G@yGywqk C1y8L2 literal 0 HcmV?d00001 diff --git a/assets/textures/icons/icon64.png b/assets/textures/icons/icon64.png new file mode 100644 index 0000000000000000000000000000000000000000..f9651dbe947984e764510f34d6de2afe1e48edf6 GIT binary patch literal 362 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`jKx9jP7LeL$-D%zRXklBLo9le z6Be)wL@xLqpVD}*KBuVXNXEMjVyOv0aO3wI;loA0FKblI;E;T<>O^1oJl5%J*LA(& z+5P^1OZVH_Z=9|Dmst(e&x`q_zt|wwntiMGzdG}6T}HN*TGmrO9C*bf(eXp>q(I`4 z0}BdDgql|?SvPMs)edo+vM{Of-hXq>=@N!9AJiTSB_F+bod*QY>&vEttgc9y!v39& z=fEMhd>t1#lfU=BMD#lbouAYQ1db2ysO(6aa^pu)=DB(aH}iyZxzGRmO;eL7l6Y`> zspbECea~Y7B9#}u*y~xcu_;|T2=qcv-Am(wQ;Ux@Et#i!_^m3>|Ip-ThyJn`Tj@9y z?rLz?Zxu}AICCCoNWs|?ZA#2MjyYzJF8PQuFzmn3H0SUF*Hgg2WAJqKb6Mw<&;$Sw Cn3_=l literal 0 HcmV?d00001 diff --git a/assets/textures/icons/icon65.png b/assets/textures/icons/icon65.png new file mode 100644 index 0000000000000000000000000000000000000000..0a7e7515a1960672f77e0009821c81a1af1687a8 GIT binary patch literal 426 zcmV;b0agBqP)Px$WJyFpR5*>jkugX@Q51&1E0u!|3Od-N(CQPU5)ldtr=VFkK|vvCwxFSgaCS;k za0pt%RU90|A!vARMJNS2Bn_g3INXMM7hh=xLH~5`J^bf>|2gmyP!NdA~+|R;ul>daHE@ru$q11NqXKCKqulQ?)&2<=(;S z@s?>GGYJgE-r~f9;BDlI`mF3mmOm?QvSm&76T0|D&`;r#AuU1P@gVL&j`O z6O~d*A%uF1*Ei(ZvxY|t1K_>OE3>f;3&2n>%AsDIx#xPQ!+!b#0Q+VEhrGdiw5RG8 z0GmIF&7V{hQc4MMe)3AKJD^g?s5oC`0T4onQLBV;o{mv|>MDY{4W{*Ql{7_}1Wu_G zGK(A7wUijON_ey|JK=RX)Qd7XaRMLPsE0a>3G7-*04j6gAV5!VvKD)sOYmpC1MgUf U1>HNXx&QzG07*qoM6N<$f?6lDV*mgE literal 0 HcmV?d00001 diff --git a/assets/textures/icons/icon66.png b/assets/textures/icons/icon66.png new file mode 100644 index 0000000000000000000000000000000000000000..e1a54291501b42f98edd6bae208438af86d01ba8 GIT binary patch literal 229 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`jKx9jP7LeL$-D$|=6kw0hFJ6_ zCrE5j*uLevz2U1F1)e8PY6_-Gv@zZgQI>YQz)*6uWzV4&U&S6@ABzLL6D9{Adilq_ z|DB*2!~CQ#3~%S{k;@b0?)muQqAi=HrD~6XgPFiG!N?xLNJF24pCqU9$lKK=B>;iI zgXhT`zInAu{{bp(J9+nLPXzA?-M4@H^-ozPx#(n&-?R5*>zQY#X|Fce%E1PAC$QBOo*mOHEskVhR5dHA+;}*3+d7>>_Te=A_gLc;&{M*wZ;xh6z>;K z=PLlf3WJHbkj5g96O+e@tGSSd3u)S~H1mtBtc*?I<8r&Zl!E6CO{4Hl+UOGlfuE?g eYRnlDPXj*`Fm926xDP`B0000Px$JV``BR5*>zQol>XKp1^jI$Ds@O}HUzhf;7#CNWDhIk@x>$YvHbL!9CyShKWl z`2$=8?UF7LC!GpKy5I0Yw<1!zIGuxB$a($Cq8wYv5>=B(F3WXE#WYiT_tb~B&3 zna>OZ&MgFCBD<3%)=oo14SOUSH@VJTR3}+nMyhs-4r9#)rClaa|^@s zLjb^ubBg)f9K-2H9R`3B5{bfGi=+t02YcAr-Uk5OPp@%td0TLZg!W3Tyqq9RP=n*EL;))M4iD(_wvSUZj4-IWjkx|1b-T%w!#Of8B?fJk6>bE}A5{%n;H g*|9mm$8Dg^Z)<=07*qoM6N<$f@b=tw*UYD literal 0 HcmV?d00001 diff --git a/assets/textures/icons/icon69.png b/assets/textures/icons/icon69.png new file mode 100644 index 0000000000000000000000000000000000000000..5842c5848e703d00f4c2b9d2eaa03c9b63d2707c GIT binary patch literal 375 zcmV--0f_#IP)Px$F-b&0R5*>TlQC<t1Bv1D4wYM`X?xEumwV zm}Uq#YoT+Y&?N?UC{M_WJGBptjD2_S?n#0_mIB!AFGH4wB(YMv{bc~i(hz_oR!YEc z@56BFdH`0-nF0s|+~^!3o4Uj$$>RzOHUKzvJ?r*}sY^^^pSv{*^l94R?C?RV7yh0&ac3~ z&Be~Z?YeG{z<4VG?w;<^ra+rw^xa1A^GZ%_3Zm@-fRBeyOKhuGl2|G0z$N;bziw{; zh_(yn=ZN_^x_01_eF2Fe_44=({LIdx+|K?f%+k=3e7wC(ayjH(&ia%i*+TxKz5zs_ VuOzfh3BdpW002ovPDHLkV1lFxsG$G= literal 0 HcmV?d00001 diff --git a/assets/textures/icons/icon7.png b/assets/textures/icons/icon7.png new file mode 100644 index 0000000000000000000000000000000000000000..d6ec3d4d54b6860ca54bae241332a311683ce7cf GIT binary patch literal 267 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`jKx9jP7LeL$-D$|j(WN{hFJ9O zy=2RE$UvguVR*Xv!IK9A3j~gwb(B$gU|Pl0{y8?F{ z;HCKv-S+n-D(>mG9N53iV4um{@AkbVTu;=LIQIlC30<)3W}gLf=#<$U4JPM29`^)j zGrrhakf(IXBH2iOzv6*!6`C`n4z#YmAj!b7RY+R?T=})dio2gK5X-7*R;$@{Pip#A zprI;_>I=g*&G1d#A9?b1*#5(Px$d`Uz>R5*>LlRs<1P!z>~3HlMb2wfahbO`NI>eiu@;@-hUq+_Q}fiA6}Lcf5k zPU7TRoODX*n4+SS1i=VOBV8k;(|vvEpUJbl_ww#L_uO-H;XoJwgJBruvk8t$I*BPCEN4PkwFs*g z$+oM4^arwvI)H>QEmu+WU&eek!F0Y?t4?By2U3D4(Svo8pD^W89!}?b<%KT0Rl6bc zm}Ar{|0WPv&O}Mmv$bkBczytY=Ld{>Wp!^tyj5Px$lu1NER5*>Lld(%eQ5431PwY=<5nLQp3=CbOwuX#o7jcnjY_UmbDM5oar`DR{ zO|6kjPKt|?*rPYeBj^c6Pg;Fo(>Xn}hUkOKy^nj&cfR|b^WdK_0PY`V^Hd^CG-4R{ z53@NyDiH=C8ZitBetDhGE!ziRcYDPE2uW}wlSY!8g)G4&SwUin4FOoTPq{y!S;*2X zWXYL5EZgUCYYjkmsV*c+AacHAz5S%SW&6wy*0F3K%l4HdByt*=G&!@UN>YiiR+OqM zSC30Y)B{PhY@eLj(*Pm4tmcWICTW?)WdcFDKTv7G>X+3#j_U#7xE?LDsP`dQY*izZ zUNEU;7I9pU`g8<9eL7MS0F4x5%KZU=b^{=@bHrYERY?ywCcF=Cz7$B0gR*mGPn9I& zG2Wi90eE}9CK-<{d+`13^6j`D?b{la(mnu{(mw6mntHNeV(>XZIIgFX--kCiuE%&X zT_pHv$^c5ocS@4|IHNllF`i7RoOgi0&m_|*XPI@u#mT0gE9aeGr}xkJ1Qj0HW*wKx Qo&W#<07*qoM6N<$f*=#i>i_@% literal 0 HcmV?d00001 diff --git a/assets/textures/icons/icon72.png b/assets/textures/icons/icon72.png new file mode 100644 index 0000000000000000000000000000000000000000..e6189b87d7c1c34eddb1f60a878dd527f28498ac GIT binary patch literal 283 zcmV+$0p$LPP)Px#)k#D_R5*>@kueX!Kpe$?)WB$B5|I#unZ(qOArXnmWRh5zM92FaT@6;bRcF(! zmc}PIOH+fiQ9U(S#9JPx$L`g(JR5*>Tkv(g|P#A@u)HcMiQ#J_&LmPA#oZKC|6pCx6PFY%nPL&oUlmDQL zOTob`4id*YN{ekAM7r4if)t9}4w7&$@ni8U_YUuQ?>WzfLo2WxA)otnw8 z^|#)f7B@qbdxmk2T7HE)&Vs%0n+lh$^31ZRnnlqcOhmiW6aB$NRL!CYEJyj?OafWk oz$X1cg19ZkE5FJD*?bWF14!nVPx$M@d9MR5*>blCes|P!xv0G!oJ$h?5kDV2hbsa4N38fFOcXA0W`B(m_%jB$Ja< z$BuUBD#=nXvm)LOQe0Affe2ErgXG#Yi3;Km;a>indvpFT2mV8oT0^F5`jpjHiVg>f z&TRfF?Jz`MjR+DwbMdzq1c^>3xXJ_M48X3v#lRl{Q1^Q(#=-nSOV`S3wsv(%km#H=_Yfjx;E&j`w;6lg z9H(3dlUhUCVTcXT+*id~=a6AE1we?H@c2k|3ZShXPN4xj&Yl>1U53##=P$fI0RGFJ zroLVTuFOwiXCmCs^56omU+CBUo|+9c2W8-X0;)P_VP;;mFh4;hc|SzdRW89=`p-@obuNwc}Deknnz00000NkvXXu0mjfQ}3)Q literal 0 HcmV?d00001 diff --git a/assets/textures/icons/icon75.png b/assets/textures/icons/icon75.png new file mode 100644 index 0000000000000000000000000000000000000000..e7b6e6360fdd20c9b3cad8d7d5089118091ac7d6 GIT binary patch literal 355 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`jKx9jP7LeL$-D%zWj$RSLo9le z6BY;HV4?GaErbgSjA6?G!`JEKaF_nQ~ph#lO#7?cw36 zVA^P8`(^(w8~wPm8hQnrOn%Bgeg0`aP(xz*N^8g2i4CkXKR^1)&ZeB(`=9HV5f4wh zz2O_Hj~$M2K@&jcK79E3JI`sew+9Oh@38*vo1ggS!%ObN?fvs5RKDs+%GuTPU+?fX zZsUG)v_*2yo+py?;;qh2SaI&mf(81AKRkFO%y#|V+#{+MAmhD^g8r9J-}OIy(!^i+ zOV)mzKS6GX_@X~C|F}PVG~oE~*)YfYbE{*+{C>xV{&q&O4LcZ=nVD7CB!IxK=GUQu ucdvMN6em6cI^y7aR&{UTMRUA`85j=t6?JGE&0YiyH3m;tKbLh*2~7Y%6_~gH literal 0 HcmV?d00001 diff --git a/assets/textures/icons/icon76.png b/assets/textures/icons/icon76.png new file mode 100644 index 0000000000000000000000000000000000000000..5ca91b55f17c9289fb5d4d6d4ea4ca0afe8df664 GIT binary patch literal 345 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`jKx9jP7LeL$-D%zg*{yyLo9le z6BY;(Vmj@0_)RC4I@-kMW*vuj*5)Uev2fuKe$IOX@%8%f@!cDf3U)Gup|qG1l3& zwV%Il%<D*FI28JBI{JX{1N-qGziow&>&t;ucLK6Vwg_Yv~ literal 0 HcmV?d00001 diff --git a/assets/textures/icons/icon77.png b/assets/textures/icons/icon77.png new file mode 100644 index 0000000000000000000000000000000000000000..37a09ed52302fb77113b7f9f86d0720f2b9427aa GIT binary patch literal 323 zcmV-J0lfZ+P)Px#{YgYYR5*>jk}+$-U=W6%6W4ZAkq)hcT5u>dT{4w)5d;UpU*O)cKTI+?i9_ks z!L3oSN?VJ%sJNd~z8VvgK*4wVIPQ7x?&X7jO42l`s)~q=rb|7nS8no>NjvEn_Pk#J zvPqNuclkO8z<9PYFhJ}EA|m72%7DjkqJi5RMy?IetltU5gy{B$TCEmi;lKu#?P#Oj z(X^8zPgwkX;+p_;-B$yDj3yyCbb@6&3Q)Kz;XF12jW5rw$a6!*``WF_Wzm?N0(}Mk z!IS-<0MjoIfd0UZV}XMV{@^*2@3}xYlamIGc1Jf{u-@(r{QlNACW*3aNBscLu05L0 VavMzw(c%CA002ovPDHLkV1h}rkQM*{ literal 0 HcmV?d00001 diff --git a/assets/textures/icons/icon78.png b/assets/textures/icons/icon78.png new file mode 100644 index 0000000000000000000000000000000000000000..98eb556e38d2ac5308b75a943f2e7cb1d7056a1e GIT binary patch literal 433 zcmV;i0Z#sjP)Px$Ye_^wR5*>TlD|trQ545NSKLE_K=ARvrG^k`bC=p4E;_gsVS@xN27$vHgg}=- z9E#A*As2a@;Vv|U^an@}10fLUFSreIZqJKb-R0dM=X}23bIyZ5E(I_hwY8IWNo7i^ z?B(_K#Tic81t66vDG9#4D(Y~#24E0O6hIs>!DTP6ZH3SGXWi`%&Dl*R2$yThUS1D^ ziHZR%<{<#BW(9ywZ*1-WL{+|SGO=BPD9K)u#Tmd&v_nv66uE)UYx>8P!9g}Ra&qltD5 b|FM1m{D-+*GVAX~00000NkvXXu0mjf!GgEr literal 0 HcmV?d00001 diff --git a/assets/textures/icons/icon79.png b/assets/textures/icons/icon79.png new file mode 100644 index 0000000000000000000000000000000000000000..6e2f6e0622281b5bd72dea43eb351621981e91a3 GIT binary patch literal 486 zcmV@P)Px$ph-kQR5*>Tlf6p=K@i1%EB0a|2ssXd5EThxm(=m2kRwe}q?C{pBAOzCpd#@= zh=qluP=Z1V3r!)1g&(OSSXwAHVu%nBB={Gsh0K~e?R1)(-J3V>?VDZrV<>>z^IdI) zZ9>ts$~XzVv@nYmwgCu5(@Kih@+sZwbOAW=8VaBvFvS@sp@R&s_oup2IWuc}c#u}7 zOU6m)6R)BA0NT$j0LpF-fc>K@vj-ro^0kKt{YMZc$ptLR09Mxz4ZAeiIXL@LaC^S1 zgFq{6`&5+OoB;zYE~dT}Ou1PN;5jqCCch~WA~C&BHcQnej(3d}ws~JU_ObWo!RE$; zDL1Q2)g}Ow-WH9EOCsZAJUu)T86W$hM8<0re6-(uEQ$F!00XY)Yld}idfU_)4@%W0 z%d;a4SVNSmO*XS}M(E?w}>T+-yUpc;{a49B20Q)jNZK%mi?ov zA4baBDCnI)@Vp{hnCtl(g_{jR(X>+Vb%}!GlLo=OH)6@6>X#p}WYIjVShA?(a`gg( cHT*|>0&;1`VqL}`!~g&Q07*qoM6N<$f(Dh&6951J literal 0 HcmV?d00001 diff --git a/assets/textures/icons/icon8.png b/assets/textures/icons/icon8.png new file mode 100644 index 0000000000000000000000000000000000000000..2cda4b43b90b4139ce34a31cf6de96dabd37727b GIT binary patch literal 350 zcmV-k0iphhP)Px$7)eAyR5*>bld)<7K@>&Lx3vy*&V?SF2nr9t|?Qy?D zoTVmuy|JS1>SR|D3-8wmV!KL0+$L2LddIVY=+tH2?&?HY?6`iq2kIaNGJ?%OpI8>} z036Qs;iax`AMbt|oYxk>U@~lkCPXdJd#&+aqqZ&Lve@~kb%V`(X|veOmw||@By6~G wdEj}8?vs^kbcGEE7l-?K29u$2gT5HP0j#ibl>;b|GXMYp07*qoM6N<$g1+*bC;$Ke literal 0 HcmV?d00001 diff --git a/assets/textures/icons/icon80.png b/assets/textures/icons/icon80.png new file mode 100644 index 0000000000000000000000000000000000000000..c78361126e02c8e5662dde4be9a2960853d88280 GIT binary patch literal 525 zcmV+o0`mQdP)Px$$4Nv%R5*>Tlf7%(P!z>~FJv!S3JDgXTAYMpLY81U8I;z85nAHGV=3`qJb3WX z!C;7?kPI1whb|dBcxXHrks*!^853tJAs=`#QB`8-V)_@TgLyZyJGOVadiR`n&b{{u z{xKB5Rre?|ER#ekuL_PGl|O#KuuK3Fsl3wQ&&9ncm`nj^`vV2A3<$X3*wLcG&)aWN zvw14t=IRQ;WJllQV!|GUZ+G9<5%ueV%VYE9qR5M-PwK zxh#XTb1trb2(g`7!(3hA%h%JHgRAaQv`928ljPr$5)Y&Skd8E*(c zrC(!kc2070gVDpIIMUmKm-UK+-{G&h9_?HfK*(`d$GZoDQ*rgK`-WG>Yck%D%kmEE zH%}Zk_J!Cfw!~pL4oJIIB@QmjI{-A_CaLsmtlvC|ig(hRvmb9q9Ow-!0(2bj9*APx$4@pEpR5*>rlOa#TKp2LfBmEBul4UGlW>IZ0Xy`P-RUlCWv4l)us`vv#oZ%O& z_zB3J*<>e3+apUVDhWTJ7}`*FZCFCWtM1Ev@AJKvdO{^Y$1x=0MrmS99dySZb-6)sA{J=Tt82FJP%pjUE)iH z27Dmxh~Id^g>xugPj4Ac9$Mr6oZbNRSGr7sfhclgU7qjTw*feiS@||}1;A3zHy~|h n`1%Vr9l0mv?%sZ<`A_r-crPx$FiAu~R5*>rk}prgKp2OgBmEAzWm&*rr@CNf2c4QA1k)vxQ)HrqAZDue1whmw z&>J2B>4jv-RV-~USyIsiL-+uPYO`+L(kXuG?)~$;zk74=-x2`B(L~p3jnabEDlXh3 zwIEFtU-C@=7y$mqE1X}J0wT58>)>ct!gRZP8%qIM)68xmo$28K=}ei~EiBJJ%)w9k zn@_epKZos7R$p)ssRfqjGqYQjCKmuNusk0LSU|J}xLbZ>tl2L-;o3MA%Zq!?9-i{#<|2*H8%NonBwp1F84bmnwra&30*VB}f(h0Vzd( Uu!^tU&j0`b07*qoM6N<$g3+g+>i_@% literal 0 HcmV?d00001 diff --git a/assets/textures/icons/icon83.png b/assets/textures/icons/icon83.png new file mode 100644 index 0000000000000000000000000000000000000000..0fed1df7a7893c7c9fd75734665474c0514c0bb5 GIT binary patch literal 410 zcmV;L0cHM)P)Px$R7pfZR5*>rlC5q6K@^3*A-q9F9U&W9QA-V^23aVWBA~%61c_=8+Ykh16)(^V z3<3>(gEqTqf@KBSpM(UlNnIacYPuVS-8Q%$H#7Hq_s*Gt|59P*O8@~d7*1s_r==F| zcD}Oqf(_f+2v^qxKo-Dye}$X7RDc(30O%|X<}DLv(&wz#i_bH^jaV`p$~rP%jbD`g zOqyw>m$8kdQkZ5=0BmE)N-tBNS;_>F*_rec00B_YuI250J2oFG${NAU#UQTp5)VyUTui*M?5$*$k7*aAD30P-g5blGxJN!H&z~kFEr5}h`z9* z=Y(U@{7beof{U=7JH&Ia7aNC1RJ&6v^8_nXJZ}eO#kY>2tb9TaG>0ST#UwfZ! zQFy!i;g7aFk?9E)4-Xzymtc!vn_^^SU|?`U>*V7y$Ew4uZS3On4YsVWZ@$dk|K7Gm zx-GFmMPJ+b_b>B^K0McLo-olwuUm2( zd#1sPV`oxTX7B--2Qnq353}C*zopr0QYu&MgRZ+ literal 0 HcmV?d00001 diff --git a/assets/textures/icons/icon85.png b/assets/textures/icons/icon85.png new file mode 100644 index 0000000000000000000000000000000000000000..9d0df6c1cda6e69b89b1fb078378972c5a2049dd GIT binary patch literal 397 zcmV;80doF{P)Px$M@d9MR5*>Tlf6p=K@i1%8hPr*%R*TE9yIe z4&b8`gIHKQ6aeE>6X6c>1skv0pxDy|fK+CN^W$9!@bvJg#C)hC>ROCqxrMI9Xtujp z6;rx32Y|)Z<)N1Yzu>nJKD!W*JXiw(ur)W|7i_k>*l(|l8i~-CZ`RXH=T5~?5rZ!J ryU&Ll1kJ+cmHVymPx$bxA})R5*>TlRrp8Q5431SJEbzXpxd4$jpYwA!;wIh=?E}GLRZvgJ{UfNe73Z zt)UVMA{?@oa1V?oU6h9qFEkvo$tetOi}(5Gy=tfrF8Aa7`OdlLaN)n<4L-=Yg zjF=vP(&erM(DN0BC(qGc0Xd(@2o>DB{VJ@I4S{ep*RtHyEGq#dV>=QuIQ$-xv49Lk z&V&uX<+OJkfNVM;0UUmh!8hF*uF3%-$Ngw8^;QQ~&Px$TuDShR5*>LlQBp_K^(?^@6q5?&7lZyb8!sZH3&i+Oo-6Mp}`;`bgRWphetz$ zLrZPdU=R-VmWFVV1|bRpLu?8Hl{dJ(ru%cAuciLW9e3aN-S_|Q4*ppdK)2ltVoscB zvS4-F%>W?g!~uvV3zh;aoW5=WeD<#b1sV;8=mO@tDQ^E}O(!UlBIt8h0qL4tNxP*K%!Wl6AR5C=ETLWBG1wdX6Xj6m**xN>D_E& zG#CnbYa_|seII~`S0hm@OK!GKa5HrgxY@gqxgv*^t)HH6m2fk4+)SOrhhsWDpNLlz zaKx+8>G^Yx#etbNz|rY}h$!;o*Y~0W-FCiJ5+}Myr{{C~{=s-MCA)JX9JxmQ3F}v> z*JvPx$a!Eu%R5*>LlQBp_Q51&1_lR(+=1>HuTpR^=4TKOEg$O4H2ZNB%%@#Kuq~VP% zwxxqfD5Oh62qFza6a+8CrXWypaI@(it}k2aEcbHG`Tz5ubMA$IngP&nR#qOL7k40O z^qZ9xfXC+rz#T{$Dp}>}egoiRbhA=P6MKwK;PgAm&EKTy0DwlOCctW>B!1H=(^=WF z>HuuV52!{;G%_`E-J%pQoh>MmR%gJ(9+S-`0OWKQ+BgFhR849uCD;db&C?0-kohs?6H844g=iXj{tD>3iwlLnVYEt^vbQyK<)~> z$<~G#iw3c*I+j%@n@!LjE^zeQ7i-rEU{@%*kmLfW6%vo}OQgEfomG^YXDm@w|L0-Bgax iy}z2y<{L)(2m1zuBe<)E=Sm*{0000Px$ZAnByR5*>LlQBpFVHC%I=j2q)p$NCRI123+2q7&eL^wHK5D~f6(x!tn+}PBn ziyh%X-O?b!Aq_$l1Q((-1VP0OZrAiZK2MkEO&{<3|KI=r-upiIXBYs(UMtR;IWmQ+ zG3>QsfUKDVAXBIs3aoH?-T;`5JFx;y!wGtUWIkCul>}|=of=63fa?W9beyi_Q@Wj` zst&eo3&-i=dI7d=i9jmZ!ff1$vt|z03z&uzY};BYs*A0hfx1*G(ZB~FU#p8N+qRZx zpepMt zAy&#o9H%Qi_D2zEzaikX-=IH=795L%RVzHXJdz@c{P6L)>_E3&DHp|wUZg*YxOsi! z>-&ew{<&~ujrtSTR|(MGzTo)&jA=OG;IIwA#`+qMPcMdiCiR5XS$!%!6voVK#sJ~$ d-AH2o9KW;a!&^%zl#u`c002ovPDHLkV1iC^#Iyha literal 0 HcmV?d00001 diff --git a/assets/textures/icons/icon9.png b/assets/textures/icons/icon9.png new file mode 100644 index 0000000000000000000000000000000000000000..31e5d650da299848384b9844aefddfe1db51371f GIT binary patch literal 398 zcmV;90df9`P)Px$NJ&INR5*=eV4x5%q6_RUb^njdckSMZp#~YSpli;3UW;ZR!+%1Cz%^^c9Qm&i zbL9UP1+D*E6tv)cbXOq*CUl#7j-0Bldj16C((@-6 zbLxXpy#NCxHnSKQ7#J9CIXEyFe*VSK$HK{w@Zlu`gGwO7wliPg>SUGVQ4MhI-pT0s zv>e3{N6xS`(7*pE)|i01pnv~SxFHE5R&bm3WjPowKK_ACFLqGq zX#L+w#rS`rqxJtnM{9VXIjI=K*-tL5!Wpd$3=9k?p^Xe+=>ypStg%1{^t(30*(|se s9pBLXA33yeBwO1{-B8)t2la_CCqVfMJ%lf+QuAh>#FBM@+=8C%W@ fWT*-2-q52TbgrR`yRqgVRBKc^%6yWgI5 zM=$KzedTZc!o{ZNW;8PL1Sgv1TYqj{SpPq8hs~z6CoRW3R;86V&)~>ROHi2OR`5$w kGQnF}gYCg(pI`=t(zlaZ+Km3J1bURg)78&qol`;+0O@vhOaK4? literal 0 HcmV?d00001 diff --git a/assets/textures/icons/icon92.png b/assets/textures/icons/icon92.png new file mode 100644 index 0000000000000000000000000000000000000000..2b15abe587ee21986320b622839c1dcfbaef062f GIT binary patch literal 392 zcmV;30eAk1P)Px$LPblCev}KorKm3ql>^T*0Xzh>K2|#ZXHjt82H=KOjR9w`@Ti++0Go ztXT_^1mcoT5u^x(EC!NAkY+T~Io)xWq#%gj^b+p(z3;s{;Ey7#hzys;bpwZ-JAC=WYV=j&t9ntb1SA zor(;XTDsPO+oOq+mdM`2%jZ{b%p?ms*Ub$qU8CQF5c|ypukRZob`%$UF*xl;XEUFj m9CM)k?)&~p2ESU;f9MBAX0n$`dzG{R0000Px#|4BqaR5*>Lks)itKp2Lfgo9&H6PfukF*qOBpD|HcsF|7`6J@X;(Zvl~Js({k zI5l^JOw5J(PHf-ha=V2>U-e$zJeT*&2WKi1^VL2d#m~$t3(uj#Y-U!OO1+eV_ZPcl zmj4IDaMSfPUGFa%UGUK!rg#9h#hPug_Ge)fKxwK;xaoSh+Px$EJ;K`R5*>LQax+KFc5t*1`){O(LW$`C}_*zE!{ih2V@Ln$<(=%Dda!oV=E+M zDOp3jW$0!QloUEB5D(r$c6TUul`IW~yhTsPx$K1oDDR5*>LQon1$P!RqS0zq)e;PC!{((P>ynW}pS|A3Byi#T-d6a@bVwOc_) zDXyZO9J&P_1PdJ^n88il(;>a*U6RdP^1ZwJ?zb~RE zC0*lrzRlX`s&DICHWn2j0C4M^+pI0V%fK;#TF6;vUp!113+^4wRjc`Fbf9u zO&k{hln!gjy}SmnaGlS?LfMi#*mvC`R!311K)? i^MSnVFURO|ciSHn`=Ukak8sfd0000Px$J4r-AR5*>LlD$jAP!z>~uROtBF@qo?#-WQK#S(OBmrf2YB1H@0=p;CV?m7jW zvIruy(ltW|w`P(O?c&m4=-?{gkd${kyKSM;x=>AmYAv_Px$gGod|R5*>Ll08eqP#A@ud$~iU78Jxn+JZx&w1adIrO-jp!PU=AaB$a2{0-vb zA80!`xd<*!ouvg)9Q+!B+8R-W4z(y)a~<@ijSUWZrsU+D=e}xUm=9 zcuND~CX)*U$RN{=y#Q$4*9H)>9wu3|J@Bsp6KYR90&tVbA@BPE^sg(_&-MT)ITob{ zOMe3d!0O!xBYm$7s5aS16M*>WQfC5F2K0*Mbf2UFjuY=p4mNZ)($vN?9r-hCq$*L* zKM^6FR|$f$65zBM@$IF`jt`_ry)gq607xyQy<*M2{l2m~ z0DyzTDgcXAAq+KpoKz;w)%k_*c}HKrwg5;LZQVT0fhdEP)Px$HAzH4R5*>LlRrztKpci2<=jNvg2h23S}3liLtQF}UqKxNadZ?MoI4f#1V!pU z)Gy!=YV0IZx|V1pv_oS`R&i_K9Mq6&E)?{)gnRFOUfxSC@Xwjb+OS$9nOtvGX0+aE zoj3@jEaU}+yoj}G-IqGA79Jn7(UXHfN?nN3z-o=;;(}^eIqxIv0LP6enntRL5|FH% zgqyW;W@9lf_`~mK#p)B4LLkTH@e?msW&9y@ya@sEh8+MoCHUh0o$kk*;!}>`xDk#U z0nn_K5q1zCK?j589#reTESd%Y9WRXaU-<55Lt(U+WBc?`uFb6~pbmzNckpm~13SBE zO*5&)CFfaw?wx7P^M@yR`^yTGY9QJMvzG_TIx2;Tw(;|2CNuyr8$Ai6fY+uXYF$i9pFL#C6tOeEh?hM&o&3$vWqxPBS&oVWk)X6o?oMp4`UX-zDL znPTU4Ha0Tm-OB!3x27v0$)GT$QcU7;=rJZXAZW`?-)8^<6^1sB7kPx;*>yk;n6zh2 zL1TA+eL`r5_ng+o#>T{#KZSed^6>nZzh8Y~!~1iQ8IO$q>7P8!^= 9 then + if tex <= 1 then tex = math.random(1,7)+1 - table.insert(obj_list,g3d.newModel("assets/objects/ground.obj","assets/textures/ground/grass"..tex..".png", {r1-radius/2, 0.01 , r2-radius/2 }, { 0, ori*math.rad(90), 0 }, { 2, 2, 2} ) ) + table.insert(entities,g3d.newModel("assets/objects/ground.obj","assets/textures/ground/grass"..tex..".png", {r1-radius/2, 0.01 , r2-radius/2 }, { 0, ori*math.rad(90), 0 }, { 2, 2, 2} ) ) else - table.insert(obj_list,g3d.newModel("assets/objects/ground.obj","assets/textures/ground/grass1.png", {r1-radius/2, 0.01 , r2-radius/2 }, { 0, ori*math.rad(90), 0 }, { 2, 2, 2} ) ) + table.insert(entities,g3d.newModel("assets/objects/ground.obj","assets/textures/ground/grass1.png", {r1-radius/2, 0.01 , r2-radius/2 }, { 0, ori*math.rad(90), 0 }, { 2, 2, 2} ) ) end end end ---walls ---[[ -for r1 = 0, radius, 1 do for h = 0, 2, 1 do - table.insert(obj_list,g3d.newModel("assets/objects/vertical_plane.obj","assets/textures/wall/wooden.png", {r1-radius/2, -h, 1/2+radius/2},{0,0,0},{16,16,16})) - table.insert(obj_list,g3d.newModel("assets/objects/vertical_plane.obj","assets/textures/wall/wooden.png", {r1-radius/2, -h,-1/2-radius/2},{0,math.rad(180),0},{16,16,16})) +math.randomseed(3) +-- bunch of implings (40) +local xx, yy, zz = 3, 0, 3 +for i = 1, 8, 1 do for j = 1, 5, 1 do + local imp = Object:new2DAnimated("imp",portrait.impling,xx+0.5*(i+1),yy+0,zz+0.5*(j+1),16,16) + load_animation(imp,animation.impling.idle,4,8) + table.insert(entities,imp) end end -for r2 = 0, radius, 1 do for h = 0, 2, 1 do - table.insert(obj_list,g3d.newModel("assets/objects/vertical_plane.obj","assets/textures/wall/wooden.png", {1/2+radius/2, -h, r2-radius/2},{0,math.rad(90),0},{16,16,16,0})) - table.insert(obj_list,g3d.newModel("assets/objects/vertical_plane.obj","assets/textures/wall/wooden.png", {-1/2-radius/2, -h,r2-radius/2},{0,math.rad(270),0},{16,16,16})) + +-- bunch of hellbeast pack (6) +local xx, yy, zz = -3, 0, 3 +for i = 1, 3, 1 do for j = 1, 2, 1 do + local hellbeast = Object:new2DAnimated("hellbeast",portrait.hellbeast,xx+1*(i+1),yy+0,zz+1*(j+1),16,16) + load_animation(hellbeast,animation.hellbeast.idle,4,8) + table.insert(entities,hellbeast) end end -]]-- --- handsome yale -local rx = math.random(1,2) -local rz = math.random(1,2) - ---obj_list.yale = Object:new2DAnimated("yale","assets/textures/characters/_sive/idle5.png",rx,0,rz,32,32) ---load_animation(obj_list.yale,"assets/textures/characters/_sive/idle",32,5) - - -imp = Object:new2DAnimated("imp","assets/textures/characters/imp2/idle1.png",0.5,0,0.5,16,16) -load_animation(imp,"assets/textures/characters/imp2/idle",4,8) -table.insert(obj_list,imp) -imp = Object:new2DAnimated("imp","assets/textures/characters/imp1/idle1.png",0.5,0,-0.5,16,16) -load_animation(imp,"assets/textures/characters/imp1/idle",4,8) -table.insert(obj_list,imp) -imp = Object:new2DAnimated("imp","assets/textures/characters/imp1/idle1.png",-0.5,0,0.5,16,16) -load_animation(imp,"assets/textures/characters/imp1/idle",4,8) -table.insert(obj_list,imp) -imp = Object:new2DAnimated("imp","assets/textures/characters/imp1/idle1.png",-0.5,0,-0.5,16,16) -load_animation(imp,"assets/textures/characters/imp1/idle",4,8) -table.insert(obj_list,imp) \ No newline at end of file +-- hero archdemon (1) +local xx, yy, zz = 0, 0, 3 +local archdemon = Object:new2DAnimated("archdemon",portrait.archdemon,xx,yy,zz,16,16) +load_animation(archdemon,animation.archdemon.idle,4,8) +table.insert(entities,archdemon) diff --git a/main.lua b/main.lua index 22078fe..b4cac1c 100644 --- a/main.lua +++ b/main.lua @@ -13,25 +13,46 @@ function love.load() "123456789.,!?-+/():;%&`'*#=[]\"") love.graphics.setFont(DefaultFont) - g3d.camera.position = { (math.random(-1.5,-0.5)-1)*2 , -1, (math.random(-1.5,-0.5)-1)*2 } + --fps_count + fps_count = 0 + fps_second = 0 + fps_draw = 0 + fps_total = 0 + + -- camera + g3d.camera.pivot = { 0, 0, 0 } + g3d.camera.position = { 0, 0, 0 } + g3d.camera.pitch = 0 + g3d.camera.zoom = 10 speed = 0 + + -- enums + require "enums" + + --objects require "objects" + + -- levels require "levels" current_level = levels.main_menu end -function love.mousemoved(x,y, dx,dy) - - if not game_pause then - g3d.camera.firstPersonLook(dx,dy) - end - -end - function love.update(dt) - -- run, walk, slow? + + -- count frames per seconds + if fps_second >= 1 then + fps_second = fps_second - 1 + fps_draw = fps_count + fps_count = 0 + fps_total = fps_total + 1 + end + fps_second = fps_second + dt + fps_dt = dt + fps_count = fps_count + 1 + + -- camera: slow, fast, medium? if love.keyboard.isDown("lshift") then speed = 2 elseif love.keyboard.isDown("lctrl") then @@ -41,9 +62,28 @@ function love.update(dt) end if not game_pause then - g3d.camera.firstPersonMovement(dt,speed) + g3d.camera.strategyViewMovement(dt,speed,is_scrolling) + -- movement: w,a,s,d, + -- rotate: q,e + -- move by screen: 20 px: sides, forward, backwards + -- mouse scroll: zoom end + -- select troops + if love.mouse.isDown(1) == true then + if selecting_troops == false then + sel_pos_x = love.mouse.getX() + sel_pos_y = love.mouse.getY() + end + selecting_troops = true + else + selecting_troops = false + end +end + +function love.wheelmoved(_, y) + g3d.camera.zoom = math.min(math.max(3,g3d.camera.zoom-y/1.5),30) + is_scrolling = true end function love.keypressed(key) @@ -51,11 +91,8 @@ function love.keypressed(key) if key == "escape" then if game_pause then game_pause = false - love.mouse.setRelativeMode(true) else game_pause = true - love.mouse.setRelativeMode(false) - love.mouse.setPosition(game_width/2,game_height/2) end end @@ -66,59 +103,65 @@ function love.draw() game_width = love.graphics.getWidth() game_height = love.graphics.getHeight() - -- draw everything - local obj_count = 0 - for _, obj in pairs(current_level.obj_list) do - obj_count = obj_count + 1 - if obj.model ~= nil then + -- draw every model + local ent_count = 0 + for _, entity in pairs(current_level.entities) do + ent_count = ent_count + 1 + if entity.model ~= nil then -- do animated models - if obj.is_animated == true and obj.anim_path ~= nil then + if entity.is_animated == true and entity.anim_path ~= nil and game_pause ~= true then -- try to animate - obj.anim_subframe = obj.anim_subframe + 1 - if obj.anim_subframe >= obj.anim_speed then - obj.anim_frame = obj.anim_frame + 1 - obj.anim_subframe = obj.anim_subframe - obj.anim_speed + entity.anim_subframe = entity.anim_subframe + 1 + if entity.anim_subframe >= entity.anim_speed then + entity.anim_frame = entity.anim_frame + 1 + entity.anim_subframe = entity.anim_subframe - entity.anim_speed end -- cycle - if obj.anim_frame >= obj.anim_frames+1 then obj.anim_frame = obj.anim_frame - obj.anim_frames end + if entity.anim_frame >= entity.anim_frames+1 then entity.anim_frame = entity.anim_frame - entity.anim_frames end -- change - obj.model.mesh:setTexture(obj.anim_imgs[obj.anim_frame]) + entity.model.mesh:setTexture(entity.anim_imgs[entity.anim_frame]) end -- do rotating models - if obj.rotate_mode ~= nil and obj.rotate_mode ~= "none" then - local rm = obj.rotate_mode + if entity.rotate_mode ~= nil and entity.rotate_mode ~= "none" and game_pause ~= true then + local rm = entity.rotate_mode if rm == "cam_xz" then - local sin = g3d.camera.position[1]-obj.model.translation[1] - local cos = g3d.camera.position[3]-obj.model.translation[3] + local sin = g3d.camera.position[1]-entity.model.translation[1] + local cos = g3d.camera.position[3]-entity.model.translation[3] local angle = math.atan2(sin,cos)-math.rad(180) - obj.model:setRotation(0,angle,0) + entity.model:setRotation(0,angle,0) end end - obj.model:draw() + entity.model:draw() else - obj:draw() + entity:draw() end end + + -- draw selection + if selecting_troops == true then + love.graphics.rectangle("line",sel_pos_x,sel_pos_y, love.mouse.getX() - sel_pos_x, love.mouse.getY() - sel_pos_y) + else + + end -- print coords - if game_pause then draw_pause_menu(30,30) else - love.graphics.print("x: "..math.floor(g3d.camera.position[1])..", y: "..math.floor(g3d.camera.position[2])..", z: "..math.floor(g3d.camera.position[3]), x, y) + love.graphics.print("time: "..fps_total..", fps: "..fps_draw..", frametime: "..fps_dt..", x: "..math.floor(g3d.camera.position[1])..", y: "..math.floor(g3d.camera.position[2])..", z: "..math.floor(g3d.camera.position[3]), x, y) end - for _, obj in pairs(current_level.obj_list) do - if obj.model ~= nil then - if obj.is_animated then - love.graphics.print("["..obj.name.."] frame: "..obj.anim_frame.."/"..obj.anim_frames..", rm: \""..obj.rotate_mode.."\"",20,20) - love.graphics.print("["..obj.name.."] animation: "..obj.anim_path,20,40) + for _, entity in pairs(current_level.entities) do + if entity.model ~= nil then + if entity.is_animated then + love.graphics.print("["..entity.name.."] frame: "..entity.anim_frame.."/"..entity.anim_frames..", rm: \""..entity.rotate_mode.."\"",20,20) + love.graphics.print("["..entity.name.."] animation: "..entity.anim_path,20,40) end end end