Merge branch 'DevelopmentX' into MinorOverallAndParticles

This commit is contained in:
SergoDobro 2024-08-20 10:44:16 +03:00 committed by GitHub
commit 6d5f9e49ca
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
44 changed files with 5690 additions and 1840 deletions

View file

@ -0,0 +1,49 @@
using Microsoft.Xna.Framework.Graphics;
using MonogameLibrary.UI.Base;
using Microsoft.Xna.Framework;
using Microsoft.Xna.Framework.Graphics;
using MonogameLibrary.UI.Enums;
using System;
using System.Collections.Generic;
using System.Security.Cryptography.X509Certificates;
using System.Text;
using System.Threading;
using Microsoft.Xna.Framework.Content;
using Microsoft.Xna.Framework.Input;
namespace MonogameLibrary.UI.Elements;
public class Bar : DrawableUIElement
{
public float percent = 0.5f;
private DrawableUIElement barInside;
public Color inColor;
public string inTextureName;
public Bar(UIManager manager, int layerIndex = 0, string textureName = "") : base(manager, layerIndex, textureName)
{
}
public void Initialize()
{
barInside = new DrawableUIElement(Manager)
{
rectangle = new Rectangle(rectangle.X + rectangle.Height / 8, rectangle.Y + rectangle.Height / 8,
(int)((rectangle.Width - rectangle.Height / 4) * percent), rectangle.Height / 8 * 7),
mainColor = inColor,
textureName = inTextureName
};
}
public override void LoadTexture(ContentManager content)
{
barInside.LoadTexture(content);
base.LoadTexture(content);
}
public void Update(GameTime gameTime, float percent)
{
barInside.rectangle = new Rectangle(rectangle.X + rectangle.Height / 8, rectangle.Y + rectangle.Height / 8,
(int)((rectangle.Width - rectangle.Height / 4) * percent), rectangle.Height / 8 * 7);
}
}

View file

@ -44,6 +44,9 @@
#begin MapData/TileMaps/main.tmj
/copy:MapData/TileMaps/main.tmj
#begin MapData/TileSets/bonfire.tsj
/copy:MapData/TileSets/bonfire.tsj
#begin MapData/TileSets/IconSet.tsj
/copy:MapData/TileSets/IconSet.tsj
@ -1484,6 +1487,18 @@
/processorParam:TextureFormat=Color
/build:Textures/Test/wood.jpg
#begin Textures/TileSetImages/Campfire.png
/importer:TextureImporter
/processor:TextureProcessor
/processorParam:ColorKeyColor=255,0,255,255
/processorParam:ColorKeyEnabled=True
/processorParam:GenerateMipmaps=False
/processorParam:PremultiplyAlpha=True
/processorParam:ResizeToPowerOfTwo=False
/processorParam:MakeSquare=False
/processorParam:TextureFormat=Color
/build:Textures/TileSetImages/Campfire.png
#begin Textures/TileSetImages/Pipes.png
/importer:TextureImporter
/processor:TextureProcessor

View file

@ -1,49 +1,26 @@
{
"activeFile": "TileMaps/main.tmj",
"expandedProjectPaths": [
"TileMaps",
"Templates",
".",
"TileSets"
],
"fileStates": {
"TileMaps/main.tmj": {
"scale": 0.75,
"selectedLayer": 1,
"scale": 0.33,
"selectedLayer": 0,
"viewCenter": {
"x": 1860.6666666666665,
"y": 871.3333333333333
"x": -463.63636363636374,
"y": 300
}
},
"TileSets/IconSet.tsj": {
"dynamicWrapping": true,
"scaleInDock": 1,
"scaleInEditor": 1
"dynamicWrapping": true
},
"TileSets/TileSet 1.tsj": {
"dynamicWrapping": false,
"scaleInDock": 1.5,
"scaleInEditor": 3
"scaleInDock": 1
},
"TileSets/TilesetNature.tsj": {
"scaleInDock": 1.5,
"scaleInEditor": 1
"scaleInDock": 1.5
},
"TileSets/tileset 1 collision.tsj": {
"dynamicWrapping": false,
"scaleInDock": 1
}
},
"openFiles": [
"TileMaps/main.tmj",
"TileSets/IconSet.tsj",
"TileSets/TileSet 1.tsj",
"TileSets/TilesetNature.tsj"
],
"project": "MapSession.tiled-project",
"recentFiles": [
"TileSets/TilesetNature.tsj",
"TileSets/TileSet 1.tsj",
"TileSets/IconSet.tsj",
"TileMaps/main.tmj"
]
}
}

View file

@ -9,10 +9,9 @@
"visible":true,
"width":16
},
"tileset":
{
"firstgid":1,
"source":"..\/TileSets\/IconSet.tsj"
},
"tileset": {
"firstgid": 1,
"source": "..\/..\/TileSets\/IconSet.tsj"
},
"type":"template"
}

View file

@ -9,10 +9,9 @@
"visible":true,
"width":16
},
"tileset":
{
"firstgid":1,
"source":"..\/TileSets\/IconSet.tsj"
},
"tileset": {
"firstgid": 1,
"source": "..\/..\/TileSets\/IconSet.tsj"
},
"type":"template"
}

View file

@ -9,10 +9,9 @@
"visible":true,
"width":16
},
"tileset":
{
"firstgid":1,
"source":"..\/TileSets\/IconSet.tsj"
},
"tileset": {
"firstgid": 1,
"source": "..\/..\/TileSets\/IconSet.tsj"
},
"type":"template"
}

View file

@ -12,7 +12,7 @@
"tileset":
{
"firstgid":1,
"source":"..\/TileSets\/IconSet.tsj"
"source":"..\/..\/TileSets\/IconSet.tsj"
},
"type":"template"
}

View file

@ -9,10 +9,9 @@
"visible":true,
"width":16
},
"tileset":
{
"firstgid":1,
"source":"..\/TileSets\/IconSet.tsj"
},
"tileset": {
"firstgid": 1,
"source": "..\/..\/TileSets\/IconSet.tsj"
},
"type":"template"
}

View file

@ -9,10 +9,9 @@
"visible":true,
"width":16
},
"tileset":
{
"firstgid":1,
"source":"..\/TileSets\/IconSet.tsj"
},
"tileset": {
"firstgid": 1,
"source": "..\/..\/TileSets\/IconSet.tsj"
},
"type":"template"
}

View file

@ -9,10 +9,9 @@
"visible":true,
"width":16
},
"tileset":
{
"firstgid":1,
"source":"..\/TileSets\/IconSet.tsj"
},
"tileset": {
"firstgid": 1,
"source": "..\/..\/TileSets\/IconSet.tsj"
},
"type":"template"
}

View file

@ -0,0 +1,18 @@
{ "object":
{
"gid":8,
"height":16,
"id":1,
"name":"Zombie",
"rotation":0,
"type":"",
"visible":true,
"width":16
},
"tileset":
{
"firstgid":1,
"source":"..\/..\/TileSets\/IconSet.tsj"
},
"type":"template"
}

File diff suppressed because it is too large Load diff

View file

@ -8,51 +8,57 @@
"margin":0,
"name":"IconSet",
"spacing":0,
"tilecount":7,
"tilecount":8,
"tiledversion":"1.10.2",
"tileheight":1200,
"tiles":[
{
"id":0,
"image":"..\/..\/Textures\/icons\/Collectables\/ammunition.png",
"image":"..\/..\/Textures\/icons\/Collectables\/Ammo.png",
"imageheight":512,
"imagewidth":512
},
{
"id":1,
"image":"..\/..\/Textures\/icons\/Collectables\/Blue Potion.png",
"image":"..\/..\/Textures\/icons\/Collectables\/PureBottleOfWater.png",
"imageheight":32,
"imagewidth":32
},
{
"id":2,
"image":"..\/..\/Textures\/icons\/Collectables\/Water Bottle.png",
"image":"..\/..\/Textures\/icons\/Collectables\/BottleOfWater.png",
"imageheight":32,
"imagewidth":32
},
{
"id":3,
"image":"..\/..\/Textures\/icons\/Collectables\/Wood Log.png",
"image":"..\/..\/Textures\/icons\/Collectables\/Wood.png",
"imageheight":32,
"imagewidth":32
},
{
"id":4,
"image":"..\/..\/Textures\/icons\/Collectables\/Silver Ingot.png",
"image":"..\/..\/Textures\/icons\/Collectables\/Steel.png",
"imageheight":32,
"imagewidth":32
},
{
"id":5,
"image":"..\/..\/Textures\/icons\/Collectables\/Monster Meat.png",
"image":"..\/..\/Textures\/icons\/Collectables\/RottenFlesh.png",
"imageheight":32,
"imagewidth":32
},
{
"id":6,
"image":"..\/..\/Textures\/icons\/Collectables\/Stone.png",
"image":"..\/..\/Textures\/icons\/Collectables\/Peeble.png",
"imageheight":1200,
"imagewidth":1200
},
{
"id":7,
"image":"..\/..\/Textures\/icons\/zombie_218153.png",
"imageheight":512,
"imagewidth":512
}],
"tilewidth":1200,
"type":"tileset",

View file

@ -8,13 +8,13 @@
"width":24
},
"image":"..\/..\/Textures\/TileSetImages\/TilesetFloor.png",
"imageheight":417,
"imageheight":464,
"imagewidth":352,
"margin":0,
"name":"TileSet 1",
"objectalignment":"topleft",
"spacing":0,
"tilecount":572,
"tilecount":638,
"tiledversion":"1.10.2",
"tileheight":16,
"tiles":[
@ -2314,6 +2314,270 @@
{
"id":571,
"type":"Tile"
},
{
"id":572,
"type":"Tile"
},
{
"id":573,
"type":"Tile"
},
{
"id":574,
"type":"Tile"
},
{
"id":575,
"type":"Tile"
},
{
"id":576,
"type":"Tile"
},
{
"id":577,
"type":"Tile"
},
{
"id":578,
"type":"Tile"
},
{
"id":579,
"type":"Tile"
},
{
"id":580,
"type":"Tile"
},
{
"id":581,
"type":"Tile"
},
{
"id":582,
"type":"Tile"
},
{
"id":583,
"type":"Tile"
},
{
"id":584,
"type":"Tile"
},
{
"id":585,
"type":"Tile"
},
{
"id":586,
"type":"Tile"
},
{
"id":587,
"type":"Tile"
},
{
"id":588,
"type":"Tile"
},
{
"id":589,
"type":"Tile"
},
{
"id":590,
"type":"Tile"
},
{
"id":591,
"type":"Tile"
},
{
"id":592,
"type":"Tile"
},
{
"id":593,
"type":"Tile"
},
{
"id":594,
"type":"Tile"
},
{
"id":595,
"type":"Tile"
},
{
"id":596,
"type":"Tile"
},
{
"id":597,
"type":"Tile"
},
{
"id":598,
"type":"Tile"
},
{
"id":599,
"type":"Tile"
},
{
"id":600,
"type":"Tile"
},
{
"id":601,
"type":"Tile"
},
{
"id":602,
"type":"Tile"
},
{
"id":603,
"type":"Tile"
},
{
"id":604,
"type":"Tile"
},
{
"id":605,
"type":"Tile"
},
{
"id":606,
"type":"Tile"
},
{
"id":607,
"type":"Tile"
},
{
"id":608,
"type":"Tile"
},
{
"id":609,
"type":"Tile"
},
{
"id":610,
"type":"Tile"
},
{
"id":611,
"type":"Tile"
},
{
"id":612,
"type":"Tile"
},
{
"id":613,
"type":"Tile"
},
{
"id":614,
"type":"Tile"
},
{
"id":615,
"type":"Tile"
},
{
"id":616,
"type":"Tile"
},
{
"id":617,
"type":"Tile"
},
{
"id":618,
"type":"Tile"
},
{
"id":619,
"type":"Tile"
},
{
"id":620,
"type":"Tile"
},
{
"id":621,
"type":"Tile"
},
{
"id":622,
"type":"Tile"
},
{
"id":623,
"type":"Tile"
},
{
"id":624,
"type":"Tile"
},
{
"id":625,
"type":"Tile"
},
{
"id":626,
"type":"Tile"
},
{
"id":627,
"type":"Tile"
},
{
"id":628,
"type":"Tile"
},
{
"id":629,
"type":"Tile"
},
{
"id":630,
"type":"Tile"
},
{
"id":631,
"type":"Tile"
},
{
"id":632,
"type":"Tile"
},
{
"id":633,
"type":"Tile"
},
{
"id":634,
"type":"Tile"
},
{
"id":635,
"type":"Tile"
},
{
"id":636,
"type":"Tile"
},
{
"id":637,
"type":"Tile"
}],
"tilewidth":16,
"type":"tileset",
@ -2332,8 +2596,20 @@
"name":"SandStone",
"probability":0.3,
"tile":110
},
{
"color":"#0000ff",
"name":"LightGrass",
"probability":1,
"tile":265
},
{
"color":"#ff7700",
"name":"Dirt",
"probability":1,
"tile":177
}],
"name":"\u041f\u0435\u0441\u0447\u0430\u043d\u044b\u0439",
"name":"\u0411\u0438\u043e\u043c\u043d\u044b\u0439",
"tile":-1,
"type":"corner",
"wangtiles":[
@ -2424,6 +2700,228 @@
{
"tileid":114,
"wangid":[0, 2, 0, 2, 0, 2, 0, 2]
},
{
"tileid":154,
"wangid":[0, 3, 0, 4, 0, 3, 0, 3]
},
{
"tileid":155,
"wangid":[0, 3, 0, 4, 0, 4, 0, 3]
},
{
"tileid":156,
"wangid":[0, 3, 0, 3, 0, 4, 0, 3]
},
{
"tileid":163,
"wangid":[0, 3, 0, 4, 0, 3, 0, 4]
},
{
"tileid":176,
"wangid":[0, 4, 0, 4, 0, 3, 0, 3]
},
{
"tileid":177,
"wangid":[0, 4, 0, 4, 0, 4, 0, 4]
},
{
"tileid":178,
"wangid":[0, 3, 0, 3, 0, 4, 0, 4]
},
{
"tileid":181,
"wangid":[0, 4, 0, 3, 0, 4, 0, 4]
},
{
"tileid":182,
"wangid":[0, 4, 0, 4, 0, 3, 0, 4]
},
{
"tileid":185,
"wangid":[0, 4, 0, 3, 0, 4, 0, 3]
},
{
"tileid":198,
"wangid":[0, 4, 0, 3, 0, 3, 0, 3]
},
{
"tileid":199,
"wangid":[0, 4, 0, 3, 0, 3, 0, 4]
},
{
"tileid":200,
"wangid":[0, 3, 0, 3, 0, 3, 0, 4]
},
{
"tileid":203,
"wangid":[0, 3, 0, 4, 0, 4, 0, 4]
},
{
"tileid":204,
"wangid":[0, 4, 0, 4, 0, 4, 0, 3]
},
{
"tileid":242,
"wangid":[0, 4, 0, 4, 0, 4, 0, 4]
},
{
"tileid":243,
"wangid":[0, 4, 0, 4, 0, 4, 0, 4]
},
{
"tileid":244,
"wangid":[0, 3, 0, 3, 0, 3, 0, 3]
},
{
"tileid":245,
"wangid":[0, 3, 0, 3, 0, 3, 0, 3]
},
{
"tileid":264,
"wangid":[0, 3, 0, 3, 0, 3, 0, 3]
},
{
"tileid":265,
"wangid":[0, 3, 0, 3, 0, 3, 0, 3]
},
{
"tileid":266,
"wangid":[0, 3, 0, 3, 0, 3, 0, 3]
},
{
"tileid":267,
"wangid":[0, 3, 0, 3, 0, 3, 0, 3]
},
{
"tileid":268,
"wangid":[0, 3, 0, 3, 0, 3, 0, 3]
},
{
"tileid":578,
"wangid":[0, 3, 0, 2, 0, 3, 0, 3]
},
{
"tileid":579,
"wangid":[0, 3, 0, 2, 0, 2, 0, 3]
},
{
"tileid":580,
"wangid":[0, 3, 0, 3, 0, 2, 0, 3]
},
{
"tileid":581,
"wangid":[0, 2, 0, 3, 0, 2, 0, 2]
},
{
"tileid":582,
"wangid":[0, 2, 0, 2, 0, 3, 0, 2]
},
{
"tileid":600,
"wangid":[0, 2, 0, 2, 0, 3, 0, 3]
},
{
"tileid":601,
"wangid":[0, 2, 0, 2, 0, 2, 0, 2]
},
{
"tileid":602,
"wangid":[0, 3, 0, 3, 0, 2, 0, 2]
},
{
"tileid":603,
"wangid":[0, 3, 0, 2, 0, 2, 0, 2]
},
{
"tileid":604,
"wangid":[0, 2, 0, 2, 0, 2, 0, 3]
},
{
"tileid":622,
"wangid":[0, 2, 0, 3, 0, 3, 0, 3]
},
{
"tileid":623,
"wangid":[0, 2, 0, 3, 0, 3, 0, 2]
},
{
"tileid":624,
"wangid":[0, 3, 0, 3, 0, 3, 0, 2]
}]
},
{
"colors":[
{
"color":"#ff0000",
"name":"",
"probability":1,
"tile":264
}],
"name":"\u0422\u0440\u0430\u0432\u0430",
"tile":244,
"type":"corner",
"wangtiles":[
{
"tileid":244,
"wangid":[0, 1, 0, 1, 0, 1, 0, 1]
},
{
"tileid":245,
"wangid":[0, 1, 0, 1, 0, 1, 0, 1]
},
{
"tileid":264,
"wangid":[0, 1, 0, 1, 0, 1, 0, 1]
},
{
"tileid":265,
"wangid":[0, 1, 0, 1, 0, 1, 0, 1]
},
{
"tileid":266,
"wangid":[0, 1, 0, 1, 0, 1, 0, 1]
},
{
"tileid":267,
"wangid":[0, 1, 0, 1, 0, 1, 0, 1]
},
{
"tileid":268,
"wangid":[0, 1, 0, 1, 0, 1, 0, 1]
}]
},
{
"colors":[
{
"color":"#ff0000",
"name":"",
"probability":1,
"tile":110
}],
"name":"\u041f\u0435\u0441\u0447\u0430\u043d\u0438\u043a",
"tile":111,
"type":"corner",
"wangtiles":[
{
"tileid":110,
"wangid":[0, 1, 0, 1, 0, 1, 0, 1]
},
{
"tileid":111,
"wangid":[0, 1, 0, 1, 0, 1, 0, 1]
},
{
"tileid":112,
"wangid":[0, 1, 0, 1, 0, 1, 0, 1]
},
{
"tileid":113,
"wangid":[0, 1, 0, 1, 0, 1, 0, 1]
},
{
"tileid":114,
"wangid":[0, 1, 0, 1, 0, 1, 0, 1]
}]
}]
}

View file

@ -0,0 +1,102 @@
{ "columns":4,
"image":"..\/..\/Textures\/TileSetImages\/Campfire.png",
"imageheight":32,
"imagewidth":128,
"margin":0,
"name":"bonfire",
"spacing":0,
"tilecount":22,
"tiledversion":"1.10.2",
"tileheight":32,
"tiles":[
{
"animation":[
{
"duration":250,
"tileid":0
},
{
"duration":250,
"tileid":1
},
{
"duration":250,
"tileid":2
},
{
"duration":250,
"tileid":3
}],
"id":0,
"type":"StopObject"
},
{
"id":1,
"type":"StopObject"
},
{
"id":2,
"type":"StopObject"
},
{
"id":3,
"type":"StopObject"
},
{
"id":4
},
{
"id":7
},
{
"id":8
},
{
"id":9
},
{
"id":10
},
{
"id":11
},
{
"id":12
},
{
"id":13
},
{
"id":14
},
{
"id":20
},
{
"id":16
},
{
"id":17
},
{
"id":18
},
{
"id":19
},
{
"id":21
},
{
"id":5
},
{
"id":6
},
{
"id":15
}],
"tilewidth":32,
"type":"tileset",
"version":"1.10"
}

View file

@ -6,7 +6,7 @@
"name":"tileset 1 collision",
"spacing":0,
"tilecount":240,
"tiledversion":"1.10.2",
"tiledversion":"1.11.0",
"tileheight":16,
"tiles":[
{
@ -105,7 +105,6 @@
"objectgroup":
{
"draworder":"index",
"id":2,
"name":"",
"objects":[
{
@ -133,7 +132,6 @@
"objectgroup":
{
"draworder":"index",
"id":2,
"name":"",
"objects":[
{
@ -161,7 +159,6 @@
"objectgroup":
{
"draworder":"index",
"id":2,
"name":"",
"objects":[
{
@ -189,7 +186,6 @@
"objectgroup":
{
"draworder":"index",
"id":2,
"name":"",
"objects":[
{
@ -217,7 +213,6 @@
"objectgroup":
{
"draworder":"index",
"id":2,
"name":"",
"objects":[
{
@ -245,7 +240,6 @@
"objectgroup":
{
"draworder":"index",
"id":2,
"name":"",
"objects":[
{
@ -273,7 +267,6 @@
"objectgroup":
{
"draworder":"index",
"id":2,
"name":"",
"objects":[
{
@ -301,7 +294,6 @@
"objectgroup":
{
"draworder":"index",
"id":2,
"name":"",
"objects":[
{
@ -329,7 +321,6 @@
"objectgroup":
{
"draworder":"index",
"id":2,
"name":"",
"objects":[
{
@ -357,7 +348,6 @@
"objectgroup":
{
"draworder":"index",
"id":2,
"name":"",
"objects":[
{
@ -385,7 +375,6 @@
"objectgroup":
{
"draworder":"index",
"id":2,
"name":"",
"objects":[
{
@ -449,7 +438,6 @@
"objectgroup":
{
"draworder":"index",
"id":2,
"name":"",
"objects":[
{
@ -477,7 +465,6 @@
"objectgroup":
{
"draworder":"index",
"id":2,
"name":"",
"objects":[
{
@ -505,7 +492,6 @@
"objectgroup":
{
"draworder":"index",
"id":2,
"name":"",
"objects":[
{
@ -533,7 +519,6 @@
"objectgroup":
{
"draworder":"index",
"id":2,
"name":"",
"objects":[
{
@ -561,7 +546,6 @@
"objectgroup":
{
"draworder":"index",
"id":2,
"name":"",
"objects":[
{
@ -589,7 +573,6 @@
"objectgroup":
{
"draworder":"index",
"id":2,
"name":"",
"objects":[
{
@ -617,7 +600,6 @@
"objectgroup":
{
"draworder":"index",
"id":2,
"name":"",
"objects":[
{
@ -645,7 +627,6 @@
"objectgroup":
{
"draworder":"index",
"id":2,
"name":"",
"objects":[
{
@ -673,7 +654,6 @@
"objectgroup":
{
"draworder":"index",
"id":2,
"name":"",
"objects":[
{
@ -701,7 +681,6 @@
"objectgroup":
{
"draworder":"index",
"id":2,
"name":"",
"objects":[
{
@ -729,7 +708,6 @@
"objectgroup":
{
"draworder":"index",
"id":2,
"name":"",
"objects":[
{
@ -861,7 +839,6 @@
"objectgroup":
{
"draworder":"index",
"id":2,
"name":"",
"objects":[
{
@ -889,7 +866,6 @@
"objectgroup":
{
"draworder":"index",
"id":2,
"name":"",
"objects":[
{
@ -917,7 +893,6 @@
"objectgroup":
{
"draworder":"index",
"id":2,
"name":"",
"objects":[
{
@ -1013,7 +988,6 @@
"objectgroup":
{
"draworder":"index",
"id":2,
"name":"",
"objects":[
{
@ -1041,7 +1015,6 @@
"objectgroup":
{
"draworder":"index",
"id":2,
"name":"",
"objects":[
{
@ -1069,7 +1042,6 @@
"objectgroup":
{
"draworder":"index",
"id":2,
"name":"",
"objects":[
{
@ -1386,10 +1358,56 @@
},
{
"id":173,
"objectgroup":
{
"draworder":"index",
"id":2,
"name":"",
"objects":[
{
"height":16,
"id":1,
"name":"",
"rotation":0,
"type":"",
"visible":true,
"width":16,
"x":0,
"y":0
}],
"opacity":1,
"type":"objectgroup",
"visible":true,
"x":0,
"y":0
},
"type":"StopObject"
},
{
"id":174,
"objectgroup":
{
"draworder":"index",
"id":2,
"name":"",
"objects":[
{
"height":16,
"id":1,
"name":"",
"rotation":0,
"type":"",
"visible":true,
"width":16,
"x":0,
"y":0
}],
"opacity":1,
"type":"objectgroup",
"visible":true,
"x":0,
"y":0
},
"type":"StopObject"
},
{
@ -1466,10 +1484,56 @@
},
{
"id":193,
"objectgroup":
{
"draworder":"index",
"id":2,
"name":"",
"objects":[
{
"height":16,
"id":1,
"name":"",
"rotation":0,
"type":"",
"visible":true,
"width":16,
"x":0,
"y":0
}],
"opacity":1,
"type":"objectgroup",
"visible":true,
"x":0,
"y":0
},
"type":"StopObject"
},
{
"id":194,
"objectgroup":
{
"draworder":"index",
"id":2,
"name":"",
"objects":[
{
"height":16,
"id":1,
"name":"",
"rotation":0,
"type":"",
"visible":true,
"width":16,
"x":0,
"y":0
}],
"opacity":1,
"type":"objectgroup",
"visible":true,
"x":0,
"y":0
},
"type":"StopObject"
},
{

File diff suppressed because one or more lines are too long

View file

@ -0,0 +1 @@
{"name":"Flowers","variations":[{"map":{"compressionlevel":-1,"height":1,"infinite":false,"layers":[{"compression":"zlib","data":"eJzjZGRgAAAAKwAL","encoding":"base64","height":1,"id":1,"name":"","opacity":1,"type":"tilelayer","visible":true,"width":1,"x":0,"y":0}],"nextlayerid":2,"nextobjectid":1,"orientation":"orthogonal","renderorder":"right-down","tiledversion":"1.10.2","tileheight":16,"tilesets":[{"firstgid":1,"source":"../TileSets/TilesetNature.tsj"}],"tilewidth":16,"type":"map","version":"1.10","width":1},"probability":1},{"map":{"compressionlevel":-1,"height":1,"infinite":false,"layers":[{"compression":"zlib","data":"eJzjYmRgAAAALwAM","encoding":"base64","height":1,"id":1,"name":"","opacity":1,"type":"tilelayer","visible":true,"width":1,"x":0,"y":0}],"nextlayerid":2,"nextobjectid":1,"orientation":"orthogonal","renderorder":"right-down","tiledversion":"1.10.2","tileheight":16,"tilesets":[{"firstgid":1,"source":"../TileSets/TilesetNature.tsj"}],"tilewidth":16,"type":"map","version":"1.10","width":1},"probability":1},{"map":{"compressionlevel":-1,"height":1,"infinite":false,"layers":[{"compression":"zlib","data":"eJzjZmRgAAAAMwAN","encoding":"base64","height":1,"id":1,"name":"","opacity":1,"type":"tilelayer","visible":true,"width":1,"x":0,"y":0}],"nextlayerid":2,"nextobjectid":1,"orientation":"orthogonal","renderorder":"right-down","tiledversion":"1.10.2","tileheight":16,"tilesets":[{"firstgid":1,"source":"../TileSets/TilesetNature.tsj"}],"tilewidth":16,"type":"map","version":"1.10","width":1},"probability":1},{"map":{"compressionlevel":-1,"height":1,"infinite":false,"layers":[{"compression":"zlib","data":"eJzjYWRgAAAANwAO","encoding":"base64","height":1,"id":1,"name":"","opacity":1,"type":"tilelayer","visible":true,"width":1,"x":0,"y":0}],"nextlayerid":2,"nextobjectid":1,"orientation":"orthogonal","renderorder":"right-down","tiledversion":"1.10.2","tileheight":16,"tilesets":[{"firstgid":1,"source":"../TileSets/TilesetNature.tsj"}],"tilewidth":16,"type":"map","version":"1.10","width":1},"probability":1},{"map":{"compressionlevel":-1,"height":1,"infinite":false,"layers":[{"compression":"zlib","data":"eJzjZWRgAAAAOwAP","encoding":"base64","height":1,"id":1,"name":"","opacity":1,"type":"tilelayer","visible":true,"width":1,"x":0,"y":0}],"nextlayerid":2,"nextobjectid":1,"orientation":"orthogonal","renderorder":"right-down","tiledversion":"1.10.2","tileheight":16,"tilesets":[{"firstgid":1,"source":"../TileSets/TilesetNature.tsj"}],"tilewidth":16,"type":"map","version":"1.10","width":1},"probability":1},{"map":{"compressionlevel":-1,"height":1,"infinite":false,"layers":[{"compression":"zlib","data":"eJzjY2RgAAAAPwAQ","encoding":"base64","height":1,"id":1,"name":"","opacity":1,"type":"tilelayer","visible":true,"width":1,"x":0,"y":0}],"nextlayerid":2,"nextobjectid":1,"orientation":"orthogonal","renderorder":"right-down","tiledversion":"1.10.2","tileheight":16,"tilesets":[{"firstgid":1,"source":"../TileSets/TilesetNature.tsj"}],"tilewidth":16,"type":"map","version":"1.10","width":1},"probability":1},{"map":{"compressionlevel":-1,"height":1,"infinite":false,"layers":[{"compression":"zlib","data":"eJzjZ2RgAAAAQwAR","encoding":"base64","height":1,"id":1,"name":"","opacity":1,"type":"tilelayer","visible":true,"width":1,"x":0,"y":0}],"nextlayerid":2,"nextobjectid":1,"orientation":"orthogonal","renderorder":"right-down","tiledversion":"1.10.2","tileheight":16,"tilesets":[{"firstgid":1,"source":"../TileSets/TilesetNature.tsj"}],"tilewidth":16,"type":"map","version":"1.10","width":1},"probability":1}]}

View file

@ -0,0 +1 @@
{"name":"Green Trees","variations":[{"map":{"compressionlevel":-1,"height":3,"infinite":false,"layers":[{"compression":"zlib","data":"eJwzZWBgMANicyC2AGJfIPYDYn8gDgDiVCBOA+J0IM4AYgBToAOv","encoding":"base64","height":3,"id":1,"name":"","opacity":1,"type":"tilelayer","visible":true,"width":4,"x":0,"y":0}],"nextlayerid":2,"nextobjectid":1,"orientation":"orthogonal","renderorder":"right-down","tiledversion":"1.10.2","tileheight":16,"tilesets":[{"firstgid":1,"source":"../TileSets/TilesetNature.tsj"}],"tilewidth":16,"type":"map","version":"1.10","width":4},"probability":1},{"map":{"compressionlevel":-1,"height":2,"infinite":false,"layers":[{"compression":"zlib","data":"eJxjZGBgYAJiSSCWAmIAAWgANw==","encoding":"base64","height":2,"id":1,"name":"","opacity":1,"type":"tilelayer","visible":true,"width":2,"x":0,"y":0}],"nextlayerid":2,"nextobjectid":1,"orientation":"orthogonal","renderorder":"right-down","tiledversion":"1.10.2","tileheight":16,"tilesets":[{"firstgid":1,"source":"../TileSets/TilesetNature.tsj"}],"tilewidth":16,"type":"map","version":"1.10","width":2},"probability":1},{"map":{"compressionlevel":-1,"height":2,"infinite":false,"layers":[{"compression":"zlib","data":"eJw7zsDAcAKI7wPxAyAGACBYA08=","encoding":"base64","height":2,"id":1,"name":"","opacity":1,"type":"tilelayer","visible":true,"width":2,"x":0,"y":0}],"nextlayerid":2,"nextobjectid":1,"orientation":"orthogonal","renderorder":"right-down","tiledversion":"1.10.2","tileheight":16,"tilesets":[{"firstgid":1,"source":"../TileSets/TilesetNature.tsj"}],"tilewidth":16,"type":"map","version":"1.10","width":2},"probability":1},{"map":{"compressionlevel":-1,"height":3,"infinite":false,"layers":[{"compression":"zlib","data":"eJzbwsjAsBWItwHxGSA+C8TngPgJED8F4mdADACKGwc/","encoding":"base64","height":3,"id":1,"name":"","opacity":1,"type":"tilelayer","visible":true,"width":3,"x":0,"y":0}],"nextlayerid":2,"nextobjectid":1,"orientation":"orthogonal","renderorder":"right-down","tiledversion":"1.10.2","tileheight":16,"tilesets":[{"firstgid":1,"source":"../TileSets/TilesetNature.tsj"}],"tilewidth":16,"type":"map","version":"1.10","width":3},"probability":1},{"map":{"compressionlevel":-1,"height":2,"infinite":false,"layers":[{"compression":"zlib","data":"eJwTZGBgEAJiTSDWAmIAA+gAdw==","encoding":"base64","height":2,"id":1,"name":"","opacity":1,"type":"tilelayer","visible":true,"width":2,"x":0,"y":0}],"nextlayerid":2,"nextobjectid":1,"orientation":"orthogonal","renderorder":"right-down","tiledversion":"1.10.2","tileheight":16,"tilesets":[{"firstgid":1,"source":"../TileSets/TilesetNature.tsj"}],"tilewidth":16,"type":"map","version":"1.10","width":2},"probability":1},{"map":{"compressionlevel":-1,"height":3,"infinite":false,"layers":[{"compression":"zlib","data":"eJwNwwcNACAMALBZ45iAYYLjP7RJS0RUm93hNF1uj9fnB2JABD8=","encoding":"base64","height":3,"id":1,"name":"","opacity":1,"type":"tilelayer","visible":true,"width":4,"x":0,"y":0}],"nextlayerid":2,"nextobjectid":1,"orientation":"orthogonal","renderorder":"right-down","tiledversion":"1.10.2","tileheight":16,"tilesets":[{"firstgid":1,"source":"../TileSets/TilesetNature.tsj"}],"tilewidth":16,"type":"map","version":"1.10","width":4},"probability":1},{"map":{"compressionlevel":-1,"height":3,"infinite":false,"layers":[{"compression":"zlib","data":"eJwNwwcNACAMALCZ45iAYYIjnzZpiYhqszucpsvt8fr8ZyAEbw==","encoding":"base64","height":3,"id":1,"name":"","opacity":1,"type":"tilelayer","visible":true,"width":4,"x":0,"y":0}],"nextlayerid":2,"nextobjectid":1,"orientation":"orthogonal","renderorder":"right-down","tiledversion":"1.10.2","tileheight":16,"tilesets":[{"firstgid":1,"source":"../TileSets/TilesetNature.tsj"}],"tilewidth":16,"type":"map","version":"1.10","width":4},"probability":1},{"map":{"compressionlevel":-1,"height":2,"infinite":false,"layers":[{"compression":"zlib","data":"eJwTZmBgEAFibSDWAWIABDgAfw==","encoding":"base64","height":2,"id":1,"name":"","opacity":1,"type":"tilelayer","visible":true,"width":2,"x":0,"y":0}],"nextlayerid":2,"nextobjectid":1,"orientation":"orthogonal","renderorder":"right-down","tiledversion":"1.10.2","tileheight":16,"tilesets":[{"firstgid":1,"source":"../TileSets/TilesetNature.tsj"}],"tilewidth":16,"type":"map","version":"1.10","width":2},"probability":1}]}

View file

@ -1 +1 @@
{"name":"Stone Buildings","variations":[{"map":{"compressionlevel":-1,"height":3,"infinite":false,"layers":[{"compression":"zlib","data":"eJwNwwcNACAMALBxLMCwwPGvjzZpiYhqszucpsvt8fr8EWABDw==","encoding":"base64","height":3,"id":1,"name":"","opacity":1,"type":"tilelayer","visible":true,"width":4,"x":0,"y":0}],"nextlayerid":2,"nextobjectid":1,"orientation":"orthogonal","renderorder":"right-down","tiledversion":"1.10.2","tileheight":16,"tilesets":[{"firstgid":1,"source":"../TileSets/tileset 1 collision.tsj"}],"tilewidth":16,"type":"map","version":"1.10","width":4},"probability":1},{"map":{"compressionlevel":-1,"height":3,"infinite":false,"layers":[{"compression":"zlib","data":"eJxjZWBgYANidiDmAGJJIJYCYmkglgFiXSDWA2J9IDYAYgAWQAE/","encoding":"base64","height":3,"id":1,"name":"","opacity":1,"type":"tilelayer","visible":true,"width":4,"x":0,"y":0}],"nextlayerid":2,"nextobjectid":1,"orientation":"orthogonal","renderorder":"right-down","tiledversion":"1.10.2","tileheight":16,"tilesets":[{"firstgid":1,"source":"../TileSets/tileset 1 collision.tsj"}],"tilewidth":16,"type":"map","version":"1.10","width":4},"probability":1},{"map":{"compressionlevel":-1,"height":3,"infinite":false,"layers":[{"compression":"zlib","data":"eJzjZGBg4AJibiCWBWI5IJYHYkMgNgJiYyAGAA+EAQ8=","encoding":"base64","height":3,"id":1,"name":"","opacity":1,"type":"tilelayer","visible":true,"width":3,"x":0,"y":0}],"nextlayerid":2,"nextobjectid":1,"orientation":"orthogonal","renderorder":"right-down","tiledversion":"1.10.2","tileheight":16,"tilesets":[{"firstgid":1,"source":"../TileSets/tileset 1 collision.tsj"}],"tilewidth":16,"type":"map","version":"1.10","width":3},"probability":1},{"map":{"compressionlevel":-1,"height":3,"infinite":false,"layers":[{"compression":"zlib","data":"eJzjYWBg4AViPiBWAGJFIFYCYhMgNgViMyAGABGgASo=","encoding":"base64","height":3,"id":1,"name":"","opacity":1,"type":"tilelayer","visible":true,"width":3,"x":0,"y":0}],"nextlayerid":2,"nextobjectid":1,"orientation":"orthogonal","renderorder":"right-down","tiledversion":"1.10.2","tileheight":16,"tilesets":[{"firstgid":1,"source":"../TileSets/tileset 1 collision.tsj"}],"tilewidth":16,"type":"map","version":"1.10","width":3},"probability":1},{"map":{"compressionlevel":-1,"height":2,"infinite":false,"layers":[{"compression":"zlib","data":"eJzzY2Bg8AfiACBOAuJkIE4BYgAb1AIX","encoding":"base64","height":2,"id":1,"name":"","opacity":1,"type":"tilelayer","visible":true,"width":3,"x":0,"y":0}],"nextlayerid":2,"nextobjectid":1,"orientation":"orthogonal","renderorder":"right-down","tiledversion":"1.10.2","tileheight":16,"tilesets":[{"firstgid":1,"source":"../TileSets/tileset 1 collision.tsj"}],"tilewidth":16,"type":"map","version":"1.10","width":3},"probability":1}]}
{"name":"Stone Buildings","variations":[{"map":{"compressionlevel":-1,"height":3,"infinite":false,"layers":[{"compression":"zlib","data":"eJwNwwcNACAMALBxLMCwwPGvjzZpiYhqszucpsvt8fr8EWABDw==","encoding":"base64","height":3,"id":1,"name":"","opacity":1,"type":"tilelayer","visible":true,"width":4,"x":0,"y":0}],"nextlayerid":2,"nextobjectid":1,"orientation":"orthogonal","renderorder":"right-down","tiledversion":"1.11.0","tileheight":16,"tilesets":[{"firstgid":1,"source":"../TileSets/tileset 1 collision.tsj"}],"tilewidth":16,"type":"map","version":"1.10","width":4},"probability":1},{"map":{"compressionlevel":-1,"height":3,"infinite":false,"layers":[{"compression":"zlib","data":"eJxjZWBgYANidiDmAGJJIJYCYmkglgFiXSDWA2J9IDYAYgAWQAE/","encoding":"base64","height":3,"id":1,"name":"","opacity":1,"type":"tilelayer","visible":true,"width":4,"x":0,"y":0}],"nextlayerid":2,"nextobjectid":1,"orientation":"orthogonal","renderorder":"right-down","tiledversion":"1.11.0","tileheight":16,"tilesets":[{"firstgid":1,"source":"../TileSets/tileset 1 collision.tsj"}],"tilewidth":16,"type":"map","version":"1.10","width":4},"probability":1},{"map":{"compressionlevel":-1,"height":3,"infinite":false,"layers":[{"compression":"zlib","data":"eJzjZGBg4AJibiCWBWI5IJYHYkMgNgJiYyAGAA+EAQ8=","encoding":"base64","height":3,"id":1,"name":"","opacity":1,"type":"tilelayer","visible":true,"width":3,"x":0,"y":0}],"nextlayerid":2,"nextobjectid":1,"orientation":"orthogonal","renderorder":"right-down","tiledversion":"1.11.0","tileheight":16,"tilesets":[{"firstgid":1,"source":"../TileSets/tileset 1 collision.tsj"}],"tilewidth":16,"type":"map","version":"1.10","width":3},"probability":1},{"map":{"compressionlevel":-1,"height":3,"infinite":false,"layers":[{"compression":"zlib","data":"eJzjYWBg4AViPiBWAGJFIFYCYhMgNgViMyAGABGgASo=","encoding":"base64","height":3,"id":1,"name":"","opacity":1,"type":"tilelayer","visible":true,"width":3,"x":0,"y":0}],"nextlayerid":2,"nextobjectid":1,"orientation":"orthogonal","renderorder":"right-down","tiledversion":"1.11.0","tileheight":16,"tilesets":[{"firstgid":1,"source":"../TileSets/tileset 1 collision.tsj"}],"tilewidth":16,"type":"map","version":"1.10","width":3},"probability":1},{"map":{"compressionlevel":-1,"height":2,"infinite":false,"layers":[{"compression":"zlib","data":"eJzzY2Bg8AfiACBOAuJkIE4BYgAb1AIX","encoding":"base64","height":2,"id":1,"name":"","opacity":1,"type":"tilelayer","visible":true,"width":3,"x":0,"y":0}],"nextlayerid":2,"nextobjectid":1,"orientation":"orthogonal","renderorder":"right-down","tiledversion":"1.11.0","tileheight":16,"tilesets":[{"firstgid":1,"source":"../TileSets/tileset 1 collision.tsj"}],"tilewidth":16,"type":"map","version":"1.10","width":3},"probability":1},{"map":{"compressionlevel":-1,"height":5,"infinite":false,"layers":[{"compression":"zlib","data":"eJwNwwsRgCAUALBXXqGCQgXQCooV/MRxu9sUEbPJ7OJqsdrsbu4eng4vbx9fP38Kng2j","encoding":"base64","height":5,"id":1,"name":"","opacity":1,"type":"tilelayer","visible":true,"width":4,"x":0,"y":0}],"nextlayerid":2,"nextobjectid":1,"orientation":"orthogonal","renderorder":"right-down","tiledversion":"1.11.0","tileheight":16,"tilesets":[{"firstgid":1,"source":"../TileSets/tileset 1 collision.tsj"}],"tilewidth":16,"type":"map","version":"1.10","width":4},"probability":1},{"map":{"compressionlevel":-1,"height":5,"infinite":false,"layers":[{"compression":"zlib","data":"eJwNwwsRgCAUALBXWqGCQgXQCooV/MRyu9sUEbPJ7OJqsdrsbu4eng4vbx9fP3/WDwxj","encoding":"base64","height":5,"id":1,"name":"","opacity":1,"type":"tilelayer","visible":true,"width":4,"x":0,"y":0}],"nextlayerid":2,"nextobjectid":1,"orientation":"orthogonal","renderorder":"right-down","tiledversion":"1.11.0","tileheight":16,"tilesets":[{"firstgid":1,"source":"../TileSets/tileset 1 collision.tsj"}],"tilewidth":16,"type":"map","version":"1.10","width":4},"probability":1}]}

Binary file not shown.

Before

Width:  |  Height:  |  Size: 256 KiB

After

Width:  |  Height:  |  Size: 3.8 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 29 KiB

After

Width:  |  Height:  |  Size: 33 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 30 KiB

View file

@ -93,7 +93,7 @@ namespace ZoFo.GameCore
#endregion
Player myPlayer;
public Player myPlayer;
List<MapObject> mapObjects = new List<MapObject>();
List<GameObject> gameObjects = new List<GameObject>();
List<Player> players = new List<Player>();

View file

@ -0,0 +1,52 @@
using System;
using System.Collections.Generic;
using System.Diagnostics;
using System.Linq;
using System.Threading;
using System.Xml;
using Microsoft.Xna.Framework;
using Microsoft.Xna.Framework.Content;
using Microsoft.Xna.Framework.Graphics;
using Microsoft.Xna.Framework.Input;
using MonogameLibrary.UI.Base;
using MonogameLibrary.UI.Elements;
using ZoFo.GameCore.GameManagers;
using ZoFo.GameCore.GameManagers.ItemManager;
namespace ZoFo.GameCore.GUI;
public class ExitGameGUI : AbstractGUI
{
private DrawableUIElement menuBackground;
protected override void CreateUI()
{
int width = AppManager.Instance.CurentScreenResolution.X;
int height = AppManager.Instance.CurentScreenResolution.Y;
menuBackground = new DrawableUIElement(Manager) { rectangle = new Rectangle(0, 0, width, height), mainColor = Color.White, textureName = "Textures/GUI/background/waiting" };
Elements.Add(menuBackground);
menuBackground.LoadTexture(AppManager.Instance.Content);
Elements.Add(new Label(Manager) { rectangle = new Rectangle(width / 2 - (int)(width / 8), height / 5, (int)(width / 4), (int)(height / 20)), text = "Ты вышел из игры и потерял весь лут(((", fontColor = Color.Black, mainColor = Color.Transparent, scale = 0.9f, fontName = "Fonts/Font4"});
Button endButton = new Button(Manager)
{
rectangle = new Rectangle(width / 2 - (width / 15) / 2, height / 2 + height / 4, (int)(width / 15), (int)(height / 20)),
text = "Exit",
scale = 0.3f,
fontColor = Color.White,
mainColor = Color.Gray,
fontName = "Fonts/Font"
};
endButton.LeftButtonPressed += () =>
{
AppManager.Instance.SetGUI(new MainMenuGUI());
};
Elements.Add(endButton);
}
public override void Update(GameTime gameTime)
{
base.Update(gameTime);
}
}

View file

@ -0,0 +1,95 @@
using System;
using System.Collections.Generic;
using System.Diagnostics;
using System.Linq;
using System.Threading;
using System.Xml;
using Microsoft.Xna.Framework;
using Microsoft.Xna.Framework.Content;
using Microsoft.Xna.Framework.Graphics;
using Microsoft.Xna.Framework.Input;
using MonogameLibrary.UI.Base;
using MonogameLibrary.UI.Elements;
using ZoFo.GameCore.GameManagers;
using ZoFo.GameCore.GameManagers.ItemManager;
namespace ZoFo.GameCore.GUI;
public class FinishingGUI : AbstractGUI
{
private List<ItemDisplayLabel> ItemDisplayLabelsList;
private int labelIndex = 0;
private DrawableUIElement menuBackground;
protected override void CreateUI()
{
ItemDisplayLabelsList = new List<ItemDisplayLabel>();
int width = AppManager.Instance.CurentScreenResolution.X;
int height = AppManager.Instance.CurentScreenResolution.Y;
menuBackground = new DrawableUIElement(Manager) { rectangle = new Rectangle(0, 0, width, height), mainColor = Color.White, textureName = "Textures/GUI/background/endGame" };
Elements.Add(menuBackground);
menuBackground.LoadTexture(AppManager.Instance.Content);
Elements.Add(new Label(Manager) { rectangle = new Rectangle(width / 2 - (int)(width / 8), height / 15, (int)(width / 4), (int)(height / 20)), text = "Mission completed", fontColor = Color.Black, mainColor = Color.Transparent, scale = 0.9f, fontName = "Fonts/Font"});
DrawableUIElement inventoryBack = new DrawableUIElement(Manager)
{
rectangle = new Rectangle(width / 2 - height / 80 - width / 5 / 2,
height / 2 - (int)(height / 1.5) / 2,
height / 40 + width / 5, (int)(height / 1.5)),
mainColor = Color.LightGray
};
Elements.Add(inventoryBack);
Button ExitButton = new Button(Manager)
{
rectangle = new Rectangle(width / 2 - width / 15 / 2,
height / 2 + (int)(height / 1.5) / 2 + height / 40, (int)(width / 15), (int)(height / 20)),
text = "Exit",
scale = 0.2f,
fontColor = Color.White,
mainColor = Color.Gray,
fontName = "Fonts\\Font"
};
ExitButton.LeftButtonPressed += () => { AppManager.Instance.SetGUI(new MainMenuGUI()); };
Elements.Add(ExitButton);
//player itams
foreach (var item in AppManager.Instance.client.myPlayer.lootData.loots)
{
if (item.Value > 0)
{
ItemInfo itemInfo = AppManager.Instance.ItemManager.GetItemInfo(item.Key);
var temp = new ItemDisplayLabel(Manager)
{
rectangle = new Rectangle(
width / 2 - width / 5 / 2,
height / 2 - (int)(height / 1.5) / 2 + height / 80 +
(height / 20 + height / 80) * (labelIndex),
(int)(width / 5), (int)(height / 20)),
text1 = item.Key,
scale1 = 0.4f,
count = item.Value,
itemTextureName = itemInfo.textureName,
fontColor1 = Color.White,
mainColor = Color.Gray,
fontName1 = "Fonts\\Font4",
discriptions1 = itemInfo.description,
resourcesNeededToCraft1 = itemInfo.resourcesNeededToCraft
};
Elements.Add(temp);
temp.Initialize();
temp.LoadTexture(AppManager.Instance.Content);
ItemDisplayLabelsList.Add(temp);
labelIndex++;
}
}
}
public override void Update(GameTime gameTime)
{
base.Update(gameTime);
}
}

View file

@ -2,6 +2,7 @@
using System.Collections.Generic;
using System.Diagnostics;
using System.Linq;
using System.Threading;
using System.Xml;
using Microsoft.Xna.Framework;
using Microsoft.Xna.Framework.Content;
@ -9,19 +10,43 @@ using Microsoft.Xna.Framework.Graphics;
using Microsoft.Xna.Framework.Input;
using MonogameLibrary.UI.Base;
using MonogameLibrary.UI.Elements;
using ZoFo.GameCore.GameManagers;
using ZoFo.GameCore.GameManagers.ItemManager;
namespace ZoFo.GameCore.GUI;
public class GameEndedGUI : AbstractGUI
{
private DrawableUIElement menuBackground;
protected override void CreateUI()
{
// int width = AppManager.Instance.inGameHUDHelperResolution.X;
// int height = AppManager.Instance.inGameHUDHelperResolution.Y;
int width = AppManager.Instance.CurentScreenResolution.X;
int height = AppManager.Instance.CurentScreenResolution.Y;
menuBackground = new DrawableUIElement(Manager) { rectangle = new Rectangle(0, 0, width, height), mainColor = Color.White, textureName = "Textures/GUI/background/endGame" };
Elements.Add(menuBackground);
menuBackground.LoadTexture(AppManager.Instance.Content);
Elements.Add(new Label(Manager) { rectangle = new Rectangle(width / 2 - (int)(width / 8), height / 5, (int)(width / 4), (int)(height / 20)), text = "The End", fontColor = Color.Black, mainColor = Color.Transparent, scale = 0.9f, fontName = "Fonts/Font"});
Button endButton = new Button(Manager)
{
rectangle = new Rectangle(width / 2 - (width / 15) / 2, height / 2 + height / 4, (int)(width / 15), (int)(height / 20)),
text = "End",
scale = 0.3f,
fontColor = Color.White,
mainColor = Color.Gray,
fontName = "Fonts/Font"
};
endButton.LeftButtonPressed += () =>
{
AppManager.Instance.SetGUI(new MainMenuGUI());
};
Elements.Add(endButton);
}
public override void Update(GameTime gameTime)
{
base.Update(gameTime);
}
}

View file

@ -15,21 +15,66 @@ namespace ZoFo.GameCore.GUI;
public class HUD : AbstractGUI
{
private Bar hpBar;
private Bar radBar;
private AbstractGUI overlayGUI;
protected override void CreateUI()
{
int width = AppManager.Instance.CurentScreenResolution.X;
int height = AppManager.Instance.CurentScreenResolution.Y;
Button pauseButton = new Button(Manager)
{ fontName = "Fonts\\Font3", scale = 0.4f, text = "| |", fontColor = Color.Black, mainColor = Color.Transparent, rectangle = new Rectangle(width / 30, height / 30, width / 40, width / 40), textureName = "Textures\\GUI\\checkboxs_off"};
{ fontName = "Fonts\\Font3", scale = 0.4f, text = "| |", fontColor = Color.Black, mainColor = Color.Transparent, rectangle = new Rectangle(width - width / 30 - width / 40, height / 30, width / 40, width / 40), textureName = "Textures\\GUI\\checkboxs_off"};
Elements.Add(pauseButton);
pauseButton.LeftButtonPressed += () =>
{
AppManager.Instance.SetGUI(new PauseGUI());
AppManager.Instance.SetGUI(new FinishingGUI());
//overlayGUI = new PauseGUI();
//overlayGUI.Initialize();
//overlayGUI.LoadContent();
};
Button invButton = new Button(Manager)
{ fontName = "Fonts\\Font3", scale = 0.4f, text = "inv", fontColor = Color.Black, mainColor = Color.Transparent, rectangle = new Rectangle(width - width / 30 - width / 40, height / 15 + width / 40, width / 40, width / 40), textureName = "Textures\\GUI\\checkboxs_off"};
Elements.Add(invButton);
invButton.LeftButtonPressed += () =>
{
overlayGUI = new InventoryGUI();
overlayGUI.Initialize();
overlayGUI.LoadContent();
};
hpBar = new Bar(Manager)
{
rectangle = new Rectangle(width / 2 - width / 8 - width / 16, height - height / 10, width / 8, height / 25),
percent = 1f,
mainColor = Color.LightGray,
inColor = Color.Red
};
hpBar.Initialize();
hpBar.LoadTexture(AppManager.Instance.Content);
radBar = new Bar(Manager)
{
rectangle = new Rectangle(width / 2 + width / 16, height - height / 10, width / 8, height / 25),
percent = 0f,
mainColor = Color.LightGray,
inColor = Color.GreenYellow
};
radBar.Initialize();
radBar.LoadTexture(AppManager.Instance.Content);
}
public override void Update(GameTime gameTime)
{
overlayGUI?.Update(gameTime);
//hpBar.Update(gameTime, AppManager.Instance.client.myPlayer.health / 100f);
//radBar.Update(gameTime, AppManager.Instance.client.myPlayer.rad / 100f);
radBar.Update(gameTime, gameTime.TotalGameTime.Seconds / 100f);
base.Update(gameTime);
}
public override void Draw(SpriteBatch spriteBatch)
{
overlayGUI?.Draw(spriteBatch);
base.Draw(spriteBatch);
}
}

View file

@ -2,6 +2,7 @@
using System.Collections.Generic;
using System.Diagnostics;
using System.Linq;
using System.Threading;
using System.Xml;
using Microsoft.Xna.Framework;
using Microsoft.Xna.Framework.Content;
@ -9,19 +10,83 @@ using Microsoft.Xna.Framework.Graphics;
using Microsoft.Xna.Framework.Input;
using MonogameLibrary.UI.Base;
using MonogameLibrary.UI.Elements;
using ZoFo.GameCore.GameManagers;
using ZoFo.GameCore.GameManagers.ItemManager;
namespace ZoFo.GameCore.GUI;
public class InventoryGUI : AbstractGUI
{
private List<ItemDisplayButton> ItemDisplayButtonsList;
private int buttonIndex = 0;
protected override void CreateUI()
{
// int width = AppManager.Instance.inGameHUDHelperResolution.X;
// int height = AppManager.Instance.inGameHUDHelperResolution.Y;
ItemDisplayButtonsList = new List<ItemDisplayButton>();
int width = AppManager.Instance.CurentScreenResolution.X;
int height = AppManager.Instance.CurentScreenResolution.Y;
DrawableUIElement inventoryBack = new DrawableUIElement(Manager)
{
rectangle = new Rectangle(width / 2 - height / 80 - width / 5 / 2,
height / 2 - (int)(height / 1.5) / 2 - height / 10,
height / 40 + width / 5, (int)(height / 1.5)),
mainColor = Color.LightGray
};
Elements.Add(inventoryBack);
Button continueButton = new Button(Manager)
{
rectangle = new Rectangle(width / 2 - width / 5 / 2,
height / 2 + (int)(height / 1.5) / 2 + height / 40 - height / 10, (int)(width / 5), (int)(height / 20)),
text = "Continue",
scale = 0.2f,
fontColor = Color.White,
mainColor = Color.Gray,
fontName = "Fonts\\Font"
};
continueButton.LeftButtonPressed += () => { AppManager.Instance.SetGUI(new HUD()); };
Elements.Add(continueButton);
//player itams
foreach (var item in AppManager.Instance.client.myPlayer.lootData.loots)
{
if (item.Value > 0)
{
ItemInfo itemInfo = AppManager.Instance.ItemManager.GetItemInfo(item.Key);
var temp = new ItemDisplayButton(Manager)
{
rectangle = new Rectangle(
width / 2 - width / 5 / 2,
height / 2 - (int)(height / 1.5) / 2 + height / 80 +
(height / 20 + height / 80) * (buttonIndex) - height / 10,
(int)(width / 5), (int)(height / 20)),
text1 = item.Key,
scale1 = 0.4f,
count = item.Value,
itemTextureName = itemInfo.textureName,
fontColor1 = Color.White,
mainColor = Color.Gray,
fontName1 = "Fonts\\Font4",
discriptions1 = itemInfo.description,
resourcesNeededToCraft1 = itemInfo.resourcesNeededToCraft
};
Elements.Add(temp);
temp.Initialize();
temp.LoadTexture(AppManager.Instance.Content);
ItemDisplayButtonsList.Add(temp);
temp.LeftButtonPressed += () =>
{
};
buttonIndex++;
}
}
}
public override void Update(GameTime gameTime)
{
base.Update(gameTime);
}
}

View file

@ -58,7 +58,6 @@ namespace ZoFo.GameCore.GameManagers
Content.RootDirectory = "Content";
IsMouseVisible = true;
server = new Server();
playerData = new PlayerData();
ItemManager = new ItemManager.ItemManager();
Instance = this;

View file

@ -25,6 +25,7 @@ namespace ZoFo.GameCore.GameManagers.ItemManager
public void Initialize()
{
tagItemPairs = new Dictionary<string, ItemInfo>();
tagItemPairs.Add("Ammo", new ItemInfo("Ammo", "деньги в метро", "Textures\\icons\\Collectables\\Ammo",false,null));
tagItemPairs.Add("wood", new ItemInfo("wood", "бревна кусок", "Textures\\Test\\wood",false,null));
tagItemPairs.Add("rock", new ItemInfo("rock", "пять галек", "Textures\\Test\\rock", false, null));
tagItemPairs.Add("steel", new ItemInfo("steel", "метал, метал, \nжелезо, метал", "Textures\\Test\\steel", false, null));

View file

@ -0,0 +1,14 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace ZoFo.GameCore.GameManagers.MapManager.MapElements
{
public class Frame
{
public int Duration { get; set; }
public int TileId { get; set; }
}
}

View file

@ -11,5 +11,6 @@ namespace ZoFo.GameCore.GameManagers.MapManager.MapElements
public int Id { get; set; }
public string Type { get; set; }
public ObjectGroup Objectgroup { get; set; }
public List<Frame> Animation { get; set; }
}
}

View file

@ -20,8 +20,8 @@ namespace ZoFo.GameCore.GameManagers.MapManager
private static readonly string _templatePath = "Content/MapData/TileMaps/{0}.tmj";
private static readonly JsonSerializerOptions _options = new JsonSerializerOptions { PropertyNameCaseInsensitive = true }; // Задача настроек для JsonSerialize
private static readonly Dictionary<string, string> _classPath = new Dictionary<string, string>() {
{ "Collectables", "ZoFo.GameCore.GameObjects.Entities.Interactables.Collectables." },
{ "Enemies", "ZoFo.GameCore.GameObjects.Entities.LivingEntities.Enemies." }
{ "Collectables", "ZoFo.GameCore.GameObjects." },
{ "Enemies", "ZoFo.GameCore.GameObjects." }
};
//private static readonly float _scale = 1.0f;
@ -72,6 +72,13 @@ namespace ZoFo.GameCore.GameManagers.MapManager
if (tileSet.FirstGid <= chunk.Data[i])
{
int number = chunk.Data[i] - tileSet.FirstGid;
Tile tile = tileSet.Tiles[number]; // По факту может быть StopObjectom, но на уровне Tiled это все в первую очередь Tile
if (tile.Animation is not null)
{
}
int relativeColumn = number % tileSet.Columns;
int relativeRow = number / tileSet.Columns; // относительно левого угла чанка
@ -84,7 +91,6 @@ namespace ZoFo.GameCore.GameManagers.MapManager
(i % chunk.Width) * _tileMap.TileWidth + chunk.X * _tileMap.TileWidth,
(i / chunk.Height) * _tileMap.TileHeight + chunk.Y * _tileMap.TileHeight);
Tile tile = tileSet.Tiles[number]; // По факту может быть StopObjectom, но на уровне Tiled это все в первую очередь Tile
switch (tile.Type)
{

View file

@ -13,7 +13,7 @@ using ZoFo.GameCore.GUI;
namespace ZoFo.GameCore.GameObjects
{
class Ammo:Collectable
class Ammo : Collectable
{
public override StaticGraphicsComponent graphicsComponent { get; } = new(_path + "Ammo");
public Ammo(Vector2 position) : base(position)
@ -26,6 +26,14 @@ namespace ZoFo.GameCore.GameObjects
public override void OnInteraction(GameObject sender)
{
DebugHUD.DebugLog("collected");
if (AppManager.Instance.client.myPlayer.lootData.loots.Keys.Contains("Ammo"))
{
AppManager.Instance.client.myPlayer.lootData.loots["Ammo"] += 1;
}
else
{
AppManager.Instance.client.myPlayer.lootData.loots.Add("Ammo", 1);
}
AppManager.Instance.server.AddData(new UpdateLoot("Ammo"));
AppManager.Instance.server.DeleteObject(this);
}

View file

@ -10,14 +10,15 @@ using ZoFo.GameCore.GameManagers.CollisionManager;
using ZoFo.GameCore.GameManagers.NetworkManager.Updates.ServerToClient;
using ZoFo.GameCore.GameManagers;
namespace ZoFo.GameCore.GameObjects.Entities.Interactables.Collectables
namespace ZoFo.GameCore.GameObjects
{
public class BottleOfWater : Collectable
{
public override StaticGraphicsComponent graphicsComponent { get; } = new(_path + "BottleOfWater");
public BottleOfWater(Vector2 position) : base(position)
{
graphicsComponent.ObjectDrawRectangle.Width = 20;
graphicsComponent.ObjectDrawRectangle.Height = 20;
}
public override void OnInteraction(GameObject sender)
{

View file

@ -10,7 +10,7 @@ using ZoFo.GameCore.GameManagers.NetworkManager.Updates.ServerToClient;
using ZoFo.GameCore.GameManagers;
namespace ZoFo.GameCore.GameObjects.Entities.Interactables.Collectables
namespace ZoFo.GameCore.GameObjects
{
public class Peeble:Collectable
{
@ -18,7 +18,8 @@ namespace ZoFo.GameCore.GameObjects.Entities.Interactables.Collectables
public Peeble(Vector2 position) : base(position)
{
graphicsComponent.ObjectDrawRectangle.Width = 20;
graphicsComponent.ObjectDrawRectangle.Height = 20;
}
public override void OnInteraction(GameObject sender)
{

View file

@ -9,7 +9,7 @@ using ZoFo.GameCore.GameManagers.NetworkManager.Updates.ServerToClient;
using ZoFo.GameCore.GameManagers;
using ZoFo.GameCore.Graphics;
namespace ZoFo.GameCore.GameObjects.Entities.Interactables.Collectables
namespace ZoFo.GameCore.GameObjects
{
class PureBottleOfWater:Collectable
{
@ -17,6 +17,8 @@ namespace ZoFo.GameCore.GameObjects.Entities.Interactables.Collectables
public PureBottleOfWater(Vector2 position) : base(position)
{
graphicsComponent.ObjectDrawRectangle.Width = 20;
graphicsComponent.ObjectDrawRectangle.Height = 20;
}
public override void OnInteraction(GameObject sender)
{

View file

@ -9,14 +9,15 @@ using ZoFo.GameCore.GameManagers.NetworkManager.Updates.ServerToClient;
using ZoFo.GameCore.GameManagers;
using ZoFo.GameCore.Graphics;
namespace ZoFo.GameCore.GameObjects.Entities.Interactables.Collectables
namespace ZoFo.GameCore.GameObjects
{
class RottenFlesh:Collectable
{
public override StaticGraphicsComponent graphicsComponent { get; } = new(_path + "RottenFlesh");
public RottenFlesh(Vector2 position) : base(position)
{
graphicsComponent.ObjectDrawRectangle.Width = 20;
graphicsComponent.ObjectDrawRectangle.Height = 20;
}
public override void OnInteraction(GameObject sender)
{

View file

@ -9,7 +9,7 @@ using ZoFo.GameCore.GameManagers.NetworkManager.Updates.ServerToClient;
using ZoFo.GameCore.GameManagers;
using ZoFo.GameCore.Graphics;
namespace ZoFo.GameCore.GameObjects.Entities.Interactables.Collectables
namespace ZoFo.GameCore.GameObjects
{
class Steel:Collectable
{
@ -17,6 +17,8 @@ namespace ZoFo.GameCore.GameObjects.Entities.Interactables.Collectables
public Steel(Vector2 position) : base(position)
{
graphicsComponent.ObjectDrawRectangle.Width = 20;
graphicsComponent.ObjectDrawRectangle.Height = 20;
}
public override void OnInteraction(GameObject sender)
{

View file

@ -5,7 +5,7 @@ using ZoFo.GameCore.GameManagers.CollisionManager;
using ZoFo.GameCore.GameManagers.NetworkManager.Updates.ServerToClient;
using ZoFo.GameCore.Graphics;
namespace ZoFo.GameCore.GameObjects.Entities.Interactables.Collectables;
namespace ZoFo.GameCore.GameObjects;
public class Wood : Collectable
{
@ -13,7 +13,8 @@ public class Wood : Collectable
public Wood(Vector2 position) : base(position)
{
graphicsComponent.ObjectDrawRectangle.Width = 20;
graphicsComponent.ObjectDrawRectangle.Height = 20;
}
public override void OnInteraction(GameObject sender)
{

View file

@ -6,7 +6,7 @@ using System.Threading.Tasks;
namespace ZoFo.GameCore.GameObjects
{
class LootData
public class LootData
{
public Dictionary<string, int> loots;

View file

@ -18,20 +18,26 @@ public class Player : LivingEntity
{
public Vector2 InputWeaponRotation { get; set; }
public Vector2 InputPlayerRotation { get; set; }
private float speed;
public int reloading;
public int health = 100;
public int rad = 0;
public LootData lootData;
public override GraphicsComponent graphicsComponent { get; } = new AnimatedGraphicsComponent(AppManager.Instance.AssetManager.Player);
public bool IsTryingToInteract { get; set; }
/// <summary>
/// Факт того, что плеер в этом апдейте пытается стрелять
/// </summary>
//public bool IsTryingToShoot { get; set; }
private float speed;
private int health;
public int reloading;
public override GraphicsComponent graphicsComponent { get; } = new AnimatedGraphicsComponent(AppManager.Instance.AssetManager.Player);
private LootData lootData;
public bool IsTryingToInteract { get; set; }
public bool IsTryingToShoot { get; set; }
public Player(Vector2 position) : base(position)
{
lootData = new LootData();
lootData.loots = new Dictionary<string, int>();
graphicsComponent.ObjectDrawRectangle = new Rectangle(0, 0, 30, 30);
collisionComponent.stopRectangle = new Rectangle(0, 20, 30, 10);
speed = 5;