new coin model
This commit is contained in:
BIN
Blends/Coin/coin.bin
Normal file
BIN
Blends/Coin/coin.bin
Normal file
Binary file not shown.
BIN
Blends/Coin/coin.blend
Normal file
BIN
Blends/Coin/coin.blend
Normal file
Binary file not shown.
53
Blends/Coin/coin.blend.import
Normal file
53
Blends/Coin/coin.blend.import
Normal file
@@ -0,0 +1,53 @@
|
|||||||
|
[remap]
|
||||||
|
|
||||||
|
importer="scene"
|
||||||
|
importer_version=1
|
||||||
|
type="PackedScene"
|
||||||
|
uid="uid://lips2cgpmr8b"
|
||||||
|
path="res://.godot/imported/coin.blend-26f8edf08583f0fed81637dbe6ec82c6.scn"
|
||||||
|
|
||||||
|
[deps]
|
||||||
|
|
||||||
|
source_file="res://Blends/Coin/coin.blend"
|
||||||
|
dest_files=["res://.godot/imported/coin.blend-26f8edf08583f0fed81637dbe6ec82c6.scn"]
|
||||||
|
|
||||||
|
[params]
|
||||||
|
|
||||||
|
nodes/root_type=""
|
||||||
|
nodes/root_name=""
|
||||||
|
nodes/apply_root_scale=true
|
||||||
|
nodes/root_scale=1.0
|
||||||
|
nodes/import_as_skeleton_bones=false
|
||||||
|
nodes/use_node_type_suffixes=true
|
||||||
|
meshes/ensure_tangents=true
|
||||||
|
meshes/generate_lods=true
|
||||||
|
meshes/create_shadow_meshes=true
|
||||||
|
meshes/light_baking=1
|
||||||
|
meshes/lightmap_texel_size=0.2
|
||||||
|
meshes/force_disable_compression=false
|
||||||
|
skins/use_named_skins=true
|
||||||
|
animation/import=true
|
||||||
|
animation/fps=30
|
||||||
|
animation/trimming=false
|
||||||
|
animation/remove_immutable_tracks=true
|
||||||
|
animation/import_rest_as_RESET=false
|
||||||
|
import_script/path=""
|
||||||
|
_subresources={}
|
||||||
|
blender/nodes/visible=0
|
||||||
|
blender/nodes/active_collection_only=false
|
||||||
|
blender/nodes/punctual_lights=true
|
||||||
|
blender/nodes/cameras=true
|
||||||
|
blender/nodes/custom_properties=true
|
||||||
|
blender/nodes/modifiers=1
|
||||||
|
blender/meshes/colors=false
|
||||||
|
blender/meshes/uvs=true
|
||||||
|
blender/meshes/normals=true
|
||||||
|
blender/meshes/export_geometry_nodes_instances=false
|
||||||
|
blender/meshes/tangents=true
|
||||||
|
blender/meshes/skins=2
|
||||||
|
blender/meshes/export_bones_deforming_mesh_only=false
|
||||||
|
blender/materials/unpack_enabled=true
|
||||||
|
blender/materials/export_materials=1
|
||||||
|
blender/animation/limit_playback=true
|
||||||
|
blender/animation/always_sample=true
|
||||||
|
blender/animation/group_tracks=true
|
||||||
205
Blends/Coin/coin.gltf
Normal file
205
Blends/Coin/coin.gltf
Normal file
@@ -0,0 +1,205 @@
|
|||||||
|
{
|
||||||
|
"asset":{
|
||||||
|
"generator":"Khronos glTF Blender I/O v4.5.47",
|
||||||
|
"version":"2.0"
|
||||||
|
},
|
||||||
|
"scene":0,
|
||||||
|
"scenes":[
|
||||||
|
{
|
||||||
|
"name":"Scene",
|
||||||
|
"nodes":[
|
||||||
|
0
|
||||||
|
]
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"nodes":[
|
||||||
|
{
|
||||||
|
"mesh":0,
|
||||||
|
"name":"Cylinder",
|
||||||
|
"scale":[
|
||||||
|
0.16937243938446045,
|
||||||
|
0.011989540420472622,
|
||||||
|
0.16937243938446045
|
||||||
|
]
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"materials":[
|
||||||
|
{
|
||||||
|
"doubleSided":true,
|
||||||
|
"name":"Material.001",
|
||||||
|
"pbrMetallicRoughness":{
|
||||||
|
"baseColorFactor":[
|
||||||
|
0.8003232479095459,
|
||||||
|
0.7214018106460571,
|
||||||
|
0.048716265708208084,
|
||||||
|
1
|
||||||
|
],
|
||||||
|
"roughnessFactor":0.2857142686843872
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"doubleSided":true,
|
||||||
|
"name":"Material.002",
|
||||||
|
"pbrMetallicRoughness":{
|
||||||
|
"baseColorFactor":[
|
||||||
|
1,
|
||||||
|
0.012268719263374805,
|
||||||
|
0.0156707726418972,
|
||||||
|
1
|
||||||
|
],
|
||||||
|
"roughnessFactor":0.3095238208770752
|
||||||
|
}
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"meshes":[
|
||||||
|
{
|
||||||
|
"name":"Cylinder",
|
||||||
|
"primitives":[
|
||||||
|
{
|
||||||
|
"attributes":{
|
||||||
|
"POSITION":0,
|
||||||
|
"NORMAL":1,
|
||||||
|
"TEXCOORD_0":2
|
||||||
|
},
|
||||||
|
"indices":3,
|
||||||
|
"material":0
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"attributes":{
|
||||||
|
"POSITION":4,
|
||||||
|
"NORMAL":5,
|
||||||
|
"TEXCOORD_0":6
|
||||||
|
},
|
||||||
|
"indices":7,
|
||||||
|
"material":1
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"accessors":[
|
||||||
|
{
|
||||||
|
"bufferView":0,
|
||||||
|
"componentType":5126,
|
||||||
|
"count":580,
|
||||||
|
"max":[
|
||||||
|
1,
|
||||||
|
1,
|
||||||
|
1
|
||||||
|
],
|
||||||
|
"min":[
|
||||||
|
-1,
|
||||||
|
-1,
|
||||||
|
-1
|
||||||
|
],
|
||||||
|
"type":"VEC3"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"bufferView":1,
|
||||||
|
"componentType":5126,
|
||||||
|
"count":580,
|
||||||
|
"type":"VEC3"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"bufferView":2,
|
||||||
|
"componentType":5126,
|
||||||
|
"count":580,
|
||||||
|
"type":"VEC2"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"bufferView":3,
|
||||||
|
"componentType":5123,
|
||||||
|
"count":1140,
|
||||||
|
"type":"SCALAR"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"bufferView":4,
|
||||||
|
"componentType":5126,
|
||||||
|
"count":18978,
|
||||||
|
"max":[
|
||||||
|
0.8202698230743408,
|
||||||
|
1.6481459140777588,
|
||||||
|
0.4704993665218353
|
||||||
|
],
|
||||||
|
"min":[
|
||||||
|
-0.7866606712341309,
|
||||||
|
-1.5491652488708496,
|
||||||
|
-0.7433416843414307
|
||||||
|
],
|
||||||
|
"type":"VEC3"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"bufferView":5,
|
||||||
|
"componentType":5126,
|
||||||
|
"count":18978,
|
||||||
|
"type":"VEC3"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"bufferView":6,
|
||||||
|
"componentType":5126,
|
||||||
|
"count":18978,
|
||||||
|
"type":"VEC2"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"bufferView":7,
|
||||||
|
"componentType":5123,
|
||||||
|
"count":75216,
|
||||||
|
"type":"SCALAR"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"bufferViews":[
|
||||||
|
{
|
||||||
|
"buffer":0,
|
||||||
|
"byteLength":6960,
|
||||||
|
"byteOffset":0,
|
||||||
|
"target":34962
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"buffer":0,
|
||||||
|
"byteLength":6960,
|
||||||
|
"byteOffset":6960,
|
||||||
|
"target":34962
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"buffer":0,
|
||||||
|
"byteLength":4640,
|
||||||
|
"byteOffset":13920,
|
||||||
|
"target":34962
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"buffer":0,
|
||||||
|
"byteLength":2280,
|
||||||
|
"byteOffset":18560,
|
||||||
|
"target":34963
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"buffer":0,
|
||||||
|
"byteLength":227736,
|
||||||
|
"byteOffset":20840,
|
||||||
|
"target":34962
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"buffer":0,
|
||||||
|
"byteLength":227736,
|
||||||
|
"byteOffset":248576,
|
||||||
|
"target":34962
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"buffer":0,
|
||||||
|
"byteLength":151824,
|
||||||
|
"byteOffset":476312,
|
||||||
|
"target":34962
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"buffer":0,
|
||||||
|
"byteLength":150432,
|
||||||
|
"byteOffset":628136,
|
||||||
|
"target":34963
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"buffers":[
|
||||||
|
{
|
||||||
|
"byteLength":778568,
|
||||||
|
"uri":"coin.bin"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
37
Blends/Coin/coin.gltf.import
Normal file
37
Blends/Coin/coin.gltf.import
Normal file
@@ -0,0 +1,37 @@
|
|||||||
|
[remap]
|
||||||
|
|
||||||
|
importer="scene"
|
||||||
|
importer_version=1
|
||||||
|
type="PackedScene"
|
||||||
|
uid="uid://bah3dldj3s48g"
|
||||||
|
path="res://.godot/imported/coin.gltf-714424d1598d1074dffd6ddc1f2a93ca.scn"
|
||||||
|
|
||||||
|
[deps]
|
||||||
|
|
||||||
|
source_file="res://Blends/Coin/coin.gltf"
|
||||||
|
dest_files=["res://.godot/imported/coin.gltf-714424d1598d1074dffd6ddc1f2a93ca.scn"]
|
||||||
|
|
||||||
|
[params]
|
||||||
|
|
||||||
|
nodes/root_type=""
|
||||||
|
nodes/root_name=""
|
||||||
|
nodes/apply_root_scale=true
|
||||||
|
nodes/root_scale=1.0
|
||||||
|
nodes/import_as_skeleton_bones=false
|
||||||
|
nodes/use_node_type_suffixes=true
|
||||||
|
meshes/ensure_tangents=true
|
||||||
|
meshes/generate_lods=true
|
||||||
|
meshes/create_shadow_meshes=true
|
||||||
|
meshes/light_baking=1
|
||||||
|
meshes/lightmap_texel_size=0.2
|
||||||
|
meshes/force_disable_compression=false
|
||||||
|
skins/use_named_skins=true
|
||||||
|
animation/import=true
|
||||||
|
animation/fps=30
|
||||||
|
animation/trimming=false
|
||||||
|
animation/remove_immutable_tracks=true
|
||||||
|
animation/import_rest_as_RESET=false
|
||||||
|
import_script/path=""
|
||||||
|
_subresources={}
|
||||||
|
gltf/naming_version=1
|
||||||
|
gltf/embedded_image_handling=1
|
||||||
@@ -1,19 +1,122 @@
|
|||||||
[gd_scene load_steps=4 format=3 uid="uid://b1lmku8qo5ln5"]
|
[gd_scene load_steps=7 format=3 uid="uid://b1lmku8qo5ln5"]
|
||||||
|
|
||||||
[ext_resource type="PackedScene" uid="uid://bge7npb7b1y6x" path="res://Scenes/revolver.tscn" id="1_4ousu"]
|
[ext_resource type="PackedScene" uid="uid://bge7npb7b1y6x" path="res://Scenes/revolver.tscn" id="1_4ousu"]
|
||||||
[ext_resource type="PackedScene" uid="uid://j06vthscroca" path="res://Scenes/bullet.tscn" id="2_6koui"]
|
[ext_resource type="PackedScene" uid="uid://j06vthscroca" path="res://Scenes/bullet.tscn" id="2_6koui"]
|
||||||
|
[ext_resource type="PackedScene" uid="uid://c7t8himcaqljg" path="res://Blends/Person/person2.gltf" id="3_6koui"]
|
||||||
|
|
||||||
|
[sub_resource type="Animation" id="Animation_3mrnv"]
|
||||||
|
resource_name = "new_animation"
|
||||||
|
tracks/0/type = "value"
|
||||||
|
tracks/0/imported = false
|
||||||
|
tracks/0/enabled = true
|
||||||
|
tracks/0/path = NodePath("person2/Cylinder_001:position")
|
||||||
|
tracks/0/interp = 1
|
||||||
|
tracks/0/loop_wrap = true
|
||||||
|
tracks/0/keys = {
|
||||||
|
"times": PackedFloat32Array(0, 0.3, 0.6, 0.8),
|
||||||
|
"transitions": PackedFloat32Array(1, 1, 1, 1),
|
||||||
|
"update": 0,
|
||||||
|
"values": [Vector3(0, 0.349901, -0.530438), Vector3(-0.0617815, 0.349901, -0.536435), Vector3(0.136233, 0.349901, -0.56728), Vector3(0.101021, 0.349901, -0.490088)]
|
||||||
|
}
|
||||||
|
tracks/1/type = "value"
|
||||||
|
tracks/1/imported = false
|
||||||
|
tracks/1/enabled = true
|
||||||
|
tracks/1/path = NodePath("person2/Cylinder_001:rotation")
|
||||||
|
tracks/1/interp = 1
|
||||||
|
tracks/1/loop_wrap = true
|
||||||
|
tracks/1/keys = {
|
||||||
|
"times": PackedFloat32Array(0, 0.3, 0.6, 0.8),
|
||||||
|
"transitions": PackedFloat32Array(1, 1, 1, 1),
|
||||||
|
"update": 0,
|
||||||
|
"values": [Vector3(1.5708, 0, 0), Vector3(1.5708, -0.193505, 0), Vector3(1.5708, -0.483596, 0), Vector3(1.5708, -0.876435, 0)]
|
||||||
|
}
|
||||||
|
tracks/2/type = "value"
|
||||||
|
tracks/2/imported = false
|
||||||
|
tracks/2/enabled = true
|
||||||
|
tracks/2/path = NodePath("person2/Cylinder_002:position")
|
||||||
|
tracks/2/interp = 1
|
||||||
|
tracks/2/loop_wrap = true
|
||||||
|
tracks/2/keys = {
|
||||||
|
"times": PackedFloat32Array(0, 0.3, 0.6, 0.8, 1),
|
||||||
|
"transitions": PackedFloat32Array(1, 1, 1, 1, 1),
|
||||||
|
"update": 0,
|
||||||
|
"values": [Vector3(0, 0.349901, -1.17486), Vector3(0.0617815, 0.349901, -1.167), Vector3(0.435, 0.349901, -1.13615), Vector3(0.594801, 0.349901, -0.901257), Vector3(0.594801, 0.349901, -0.850009)]
|
||||||
|
}
|
||||||
|
tracks/3/type = "value"
|
||||||
|
tracks/3/imported = false
|
||||||
|
tracks/3/enabled = true
|
||||||
|
tracks/3/path = NodePath("person2/Cylinder_002:rotation")
|
||||||
|
tracks/3/interp = 1
|
||||||
|
tracks/3/loop_wrap = true
|
||||||
|
tracks/3/keys = {
|
||||||
|
"times": PackedFloat32Array(0, 0.3, 0.6, 0.8, 1),
|
||||||
|
"transitions": PackedFloat32Array(1, 1, 1, 1, 1),
|
||||||
|
"update": 0,
|
||||||
|
"values": [Vector3(1.5708, 0, 0), Vector3(1.5708, -0.193505, 0), Vector3(1.5708, -0.483596, 0), Vector3(1.5708, -0.876435, 0), Vector3(1.5708, -1.71175, 0)]
|
||||||
|
}
|
||||||
|
|
||||||
|
[sub_resource type="Animation" id="Animation_uurmw"]
|
||||||
|
length = 0.001
|
||||||
|
tracks/0/type = "value"
|
||||||
|
tracks/0/imported = false
|
||||||
|
tracks/0/enabled = true
|
||||||
|
tracks/0/path = NodePath("person2/Cylinder_001:position")
|
||||||
|
tracks/0/interp = 1
|
||||||
|
tracks/0/loop_wrap = true
|
||||||
|
tracks/0/keys = {
|
||||||
|
"times": PackedFloat32Array(0),
|
||||||
|
"transitions": PackedFloat32Array(1),
|
||||||
|
"update": 0,
|
||||||
|
"values": [Vector3(0, 0.349901, -0.530438)]
|
||||||
|
}
|
||||||
|
tracks/1/type = "value"
|
||||||
|
tracks/1/imported = false
|
||||||
|
tracks/1/enabled = true
|
||||||
|
tracks/1/path = NodePath("person2/Cylinder_001:rotation")
|
||||||
|
tracks/1/interp = 1
|
||||||
|
tracks/1/loop_wrap = true
|
||||||
|
tracks/1/keys = {
|
||||||
|
"times": PackedFloat32Array(0),
|
||||||
|
"transitions": PackedFloat32Array(1),
|
||||||
|
"update": 0,
|
||||||
|
"values": [Vector3(1.5708, 0, 0)]
|
||||||
|
}
|
||||||
|
tracks/2/type = "value"
|
||||||
|
tracks/2/imported = false
|
||||||
|
tracks/2/enabled = true
|
||||||
|
tracks/2/path = NodePath("person2/Cylinder_002:position")
|
||||||
|
tracks/2/interp = 1
|
||||||
|
tracks/2/loop_wrap = true
|
||||||
|
tracks/2/keys = {
|
||||||
|
"times": PackedFloat32Array(0),
|
||||||
|
"transitions": PackedFloat32Array(1),
|
||||||
|
"update": 0,
|
||||||
|
"values": [Vector3(0, 0.349901, -1.17486)]
|
||||||
|
}
|
||||||
|
tracks/3/type = "value"
|
||||||
|
tracks/3/imported = false
|
||||||
|
tracks/3/enabled = true
|
||||||
|
tracks/3/path = NodePath("person2/Cylinder_002:rotation")
|
||||||
|
tracks/3/interp = 1
|
||||||
|
tracks/3/loop_wrap = true
|
||||||
|
tracks/3/keys = {
|
||||||
|
"times": PackedFloat32Array(0),
|
||||||
|
"transitions": PackedFloat32Array(1),
|
||||||
|
"update": 0,
|
||||||
|
"values": [Vector3(1.5708, 0, 0)]
|
||||||
|
}
|
||||||
|
|
||||||
[sub_resource type="AnimationLibrary" id="AnimationLibrary_3mrnv"]
|
[sub_resource type="AnimationLibrary" id="AnimationLibrary_3mrnv"]
|
||||||
|
_data = {
|
||||||
|
&"RESET": SubResource("Animation_uurmw"),
|
||||||
|
&"new_animation": SubResource("Animation_3mrnv")
|
||||||
|
}
|
||||||
|
|
||||||
[node name="Prototype" type="Node3D"]
|
[node name="Prototype" type="Node3D"]
|
||||||
|
|
||||||
[node name="Camera3D" type="Camera3D" parent="."]
|
[node name="Camera3D" type="Camera3D" parent="."]
|
||||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.448508, 1.2315)
|
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.448508, 1.2315)
|
||||||
|
|
||||||
[node name="revolver" parent="." instance=ExtResource("1_4ousu")]
|
|
||||||
transform = Transform3D(-0.1, -8.74228e-09, 0, 8.74228e-09, -0.1, 0, 0, 0, 0.1, 0.376162, 0, -1.28934)
|
|
||||||
is_player_revolver = true
|
|
||||||
|
|
||||||
[node name="bullet" parent="." instance=ExtResource("2_6koui")]
|
[node name="bullet" parent="." instance=ExtResource("2_6koui")]
|
||||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -0.114408, 0, -0.120555)
|
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -0.114408, 0, -0.120555)
|
||||||
|
|
||||||
@@ -22,3 +125,18 @@ libraries = {
|
|||||||
&"": SubResource("AnimationLibrary_3mrnv")
|
&"": SubResource("AnimationLibrary_3mrnv")
|
||||||
}
|
}
|
||||||
autoplay = "new_animation"
|
autoplay = "new_animation"
|
||||||
|
|
||||||
|
[node name="person2" parent="." instance=ExtResource("3_6koui")]
|
||||||
|
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 1.28447, 0, 0.116344)
|
||||||
|
|
||||||
|
[node name="Cylinder_001" parent="person2" index="2"]
|
||||||
|
transform = Transform3D(0.0938729, 0, 0, 0, -4.10331e-09, -0.0938729, 0, 0.0938729, -4.10331e-09, 0, 0.349901, -0.530438)
|
||||||
|
|
||||||
|
[node name="Cylinder_002" parent="person2" index="3"]
|
||||||
|
transform = Transform3D(0.0527661, 0, 0, 0, -2.30648e-09, -0.0527661, 0, 0.0527661, -2.30648e-09, 0, 0.349901, -1.17486)
|
||||||
|
|
||||||
|
[node name="revolver" parent="person2/Cylinder_002" index="0" instance=ExtResource("1_4ousu")]
|
||||||
|
transform = Transform3D(-0.990786, -0.0843367, 0.105973, 0.104904, 0.017018, 0.994336, -0.0856625, 0.996292, -0.00801402, 0.0800285, -14.663, -2.40374)
|
||||||
|
is_player_revolver = true
|
||||||
|
|
||||||
|
[editable path="person2"]
|
||||||
|
|||||||
@@ -78,8 +78,12 @@ func end_enemy_turn():
|
|||||||
#set_player_turn()
|
#set_player_turn()
|
||||||
#end_turn()
|
#end_turn()
|
||||||
func end_turn():
|
func end_turn():
|
||||||
if !player1_revolver.can_be_loaded() and !player2_revolver.can_be_loaded():
|
if !player1_revolver.can_be_loaded() and !player2_revolver.can_be_loaded() or !check_unloaded_bullets():
|
||||||
print("Phase 2")
|
var player = get_phase2_player_start()
|
||||||
|
if player == 0:
|
||||||
|
set_state(GameState.PLAYER1_UNLOAD)
|
||||||
|
else:
|
||||||
|
set_state(GameState.PLAYER2_UNLOAD)
|
||||||
else:
|
else:
|
||||||
if last_turn == 0:
|
if last_turn == 0:
|
||||||
set_enemy_turn()
|
set_enemy_turn()
|
||||||
@@ -92,9 +96,9 @@ func get_enemy_revolver() -> Node3D:
|
|||||||
func get_phase2_player_start():
|
func get_phase2_player_start():
|
||||||
var randNumb = randi_range(0,1)
|
var randNumb = randi_range(0,1)
|
||||||
if randNumb == 0:
|
if randNumb == 0:
|
||||||
set_state(GameState.PLAYER1_UNLOAD)
|
return 0
|
||||||
else:
|
else:
|
||||||
set_state(GameState.PLAYER2_UNLOAD)
|
return 1
|
||||||
|
|
||||||
|
|
||||||
func on_bullet_shoot(target):
|
func on_bullet_shoot(target):
|
||||||
|
|||||||
Reference in New Issue
Block a user