Fix city generation retries and remove city-wide economy mechanics
This commit is contained in:
1 parent
85df37c26e
commit
63f0c72ff3
21 files changed
+252
-585
No files matched your search
@@ -1,5 +1,5 @@
|
||||
import { create, fromBinary, toBinary } from '@bufbuild/protobuf';
|
||||
import { ClientMessageSchema, ServerMessageSchema, type ClientMessage, type Welcome, type Clock, type VoteState, type Gameplay } from './generated/city_pb';
|
||||
import { ClientMessageSchema, ServerMessageSchema, type ClientMessage, type Welcome, type Clock, type VoteState } from './generated/city_pb';
|
||||
import type { Bounds } from '../src/city/format';
|
||||
import { EntityState } from './entities';
|
||||
|
||||
@@ -15,7 +15,6 @@ export class RoomConnection {
|
||||
constructor(room: string, nickname: string, private events: {
|
||||
welcome: (welcome: Welcome) => void; status: (text: string) => void;
|
||||
clock: (clock: Clock) => void; vote: (vote: VoteState) => void;
|
||||
gameplay: (state: Gameplay) => void;
|
||||
}) {
|
||||
const url = new URL(`/api/rooms/${encodeURIComponent(room)}/ws`, location.href);
|
||||
url.protocol = url.protocol === 'https:' ? 'wss:' : 'ws:';
|
||||
@@ -43,7 +42,6 @@ export class RoomConnection {
|
||||
} else events.status(b.value.code === 'VOTE_LIMIT' ? 'Дождитесь завершения голосования или 30-секундного интервала между предложениями' : `${b.value.code}: ${b.value.message}`);
|
||||
break;
|
||||
case 'clock': events.clock(b.value); break;
|
||||
case 'gameplay': events.gameplay(b.value); break;
|
||||
case 'voteState': events.vote(b.value); break;
|
||||
}
|
||||
} catch (error) { events.status((error as Error).message); this.destroy(); }
|
||||
@@ -66,6 +64,5 @@ export class RoomConnection {
|
||||
}
|
||||
propose(speed: number) { this.send({ case: 'propose', value: { speed } }); }
|
||||
vote(yes: boolean) { this.send({ case: 'vote', value: { yes } }); }
|
||||
intervene(action: string) { this.send({ case: 'intervene', value: { action } }); }
|
||||
destroy() { this.closed = true; clearTimeout(this.retry); clearInterval(this.ping); this.socket.close(); this.entities.clear(); }
|
||||
}
|
||||
+15
-147
@@ -10,7 +10,7 @@ import type { Message } from "@bufbuild/protobuf";
|
||||
* Describes the file city.proto.
|
||||
*/
|
||||
export const file_city: GenFile = /*@__PURE__*/
|
||||
fileDesc("CgpjaXR5LnByb3RvEgRjaXR5IkIKBFJlY3QSDQoFbWluX3gYASABKBESDQoFbWluX3kYAiABKBESDQoFbWF4X3gYAyABKBESDQoFbWF4X3kYBCABKBEiPgoESm9pbhIMCgRyb29tGAEgASgJEhYKDmNsaWVudF92ZXJzaW9uGAIgASgNEhAKCG5pY2tuYW1lGAMgASgJIjIKCVN1YnNjcmliZRIYCgRyZWN0GAEgASgLMgouY2l0eS5SZWN0EgsKA2xvZBgCIAEoDSIVCgRQaW5nEg0KBW5vbmNlGAEgASgNIhgKB1Byb3Bvc2USDQoFc3BlZWQYASABKA0iEwoEVm90ZRILCgN5ZXMYASABKAgiGwoJSW50ZXJ2ZW5lEg4KBmFjdGlvbhgBIAEoCSI4CgVOZWVkcxIOCgZodW5nZXIYASABKA0SDwoHZmF0aWd1ZRgCIAEoDRIOCgZtb3JhbGUYAyABKA0iKQoJR2FtZUV2ZW50Eg4KBm1pbnV0ZRgBIAEoBBIMCgRraW5kGAIgASgJIqoBCghHYW1lcGxheRIQCgh0cmVhc3VyeRgBIAEoEhIMCgRmb29kGAIgASgEEhoKBW5lZWRzGAMgASgLMgsuY2l0eS5OZWVkcxIfCgZldmVudHMYBCADKAsyDy5jaXR5LkdhbWVFdmVudBIPCgdwZW5kaW5nGAUgAygJEg4KBm1pbnV0ZRgGIAEoBBIgChhuZXh0X2ludGVydmVudGlvbl9taW51dGUYByABKAQiNgoKQ3JlYXRlQ2l0eRIMCgRiYm94GAEgAygBEgwKBG5hbWUYAiABKAkSDAoEc2VlZBgDIAEoDSJlCgdDaXR5Sm9iEgoKAmlkGAEgASgJEg8KB2NpdHlfaWQYAiABKAkSDgoGc3RhdHVzGAMgASgJEg8KB3Jvb21faWQYBCABKAkSDQoFZXJyb3IYBSABKAkSDQoFc3RhZ2UYBiABKAki2QEKDUNsaWVudE1lc3NhZ2USGgoEam9pbhgBIAEoCzIKLmNpdHkuSm9pbkgAEiQKCXN1YnNjcmliZRgCIAEoCzIPLmNpdHkuU3Vic2NyaWJlSAASGgoEcGluZxgDIAEoCzIKLmNpdHkuUGluZ0gAEiAKB3Byb3Bvc2UYBCABKAsyDS5jaXR5LlByb3Bvc2VIABIaCgR2b3RlGAUgASgLMgouY2l0eS5Wb3RlSAASJAoJaW50ZXJ2ZW5lGAYgASgLMg8uY2l0eS5JbnRlcnZlbmVIAEIGCgRib2R5IjcKBUFnZW50EgoKAmlkGAEgASgNEgkKAXgYAiABKBESCQoBeRgDIAEoERIMCgRraW5kGAQgASgNImsKB1dlbGNvbWUSDAoEcm9vbRgBIAEoCRIMCgR0aWNrGAIgASgEEhkKEWNpdHlfbWFuaWZlc3RfdXJsGAMgASgJEg8KB3Nlc3Npb24YBCABKAkSGAoQcHJvdG9jb2xfdmVyc2lvbhgFIAEoDSI3CghTbmFwc2hvdBIMCgR0aWNrGAEgASgEEh0KCGVudGl0aWVzGAIgAygLMgsuY2l0eS5BZ2VudCJkCgVEZWx0YRIMCgR0aWNrGAEgASgEEhwKB3NwYXduZWQYAiADKAsyCy5jaXR5LkFnZW50EhwKB2NoYW5nZWQYAyADKAsyCy5jaXR5LkFnZW50EhEKCWRlc3Bhd25lZBgEIAMoDSImCgVFcnJvchIMCgRjb2RlGAEgASgJEg8KB21lc3NhZ2UYAiABKAkiYwoJVm90ZVN0YXRlEg4KBmFjdGl2ZRgBIAEoCBINCgVzcGVlZBgCIAEoDRILCgN5ZXMYAyABKA0SDwoHcGxheWVycxgEIAEoDRIZChFyZW1haW5pbmdfc2Vjb25kcxgFIAEoDSI6CgVDbG9jaxIMCgR0aWNrGAEgASgEEhQKDGdhbWVfc2Vjb25kcxgCIAEoARINCgVzcGVlZBgDIAEoDSKeAgoNU2VydmVyTWVzc2FnZRIgCgd3ZWxjb21lGAEgASgLMg0uY2l0eS5XZWxjb21lSAASIgoIc25hcHNob3QYAiABKAsyDi5jaXR5LlNuYXBzaG90SAASHAoFZGVsdGEYAyABKAsyCy5jaXR5LkRlbHRhSAASHAoFZXJyb3IYBCABKAsyCy5jaXR5LkVycm9ySAASGgoEcG9uZxgFIAEoCzIKLmNpdHkuUGluZ0gAEiUKCnZvdGVfc3RhdGUYBiABKAsyDy5jaXR5LlZvdGVTdGF0ZUgAEhwKBWNsb2NrGAcgASgLMgsuY2l0eS5DbG9ja0gAEiIKCGdhbWVwbGF5GAggASgLMg4uY2l0eS5HYW1lcGxheUgAQgYKBGJvZHkiOQoKU2F2ZWRBZ2VudBIKCgJpZBgBIAEoDRINCgVyb3V0ZRgCIAEoDRIQCghkaXN0YW5jZRgDIAEoASI6CgVSb3V0ZRIKCgJ4eRgBIAMoERIPCgdob21lX2lkGAIgASgJEhQKDHdvcmtwbGFjZV9pZBgDIAEoCSKHAgoIUm9vbVNhdmUSDwoHdmVyc2lvbhgBIAEoDRIKCgJpZBgCIAEoCRIPCgdjaXR5X2lkGAMgASgJEhQKDGNpdHlfdmVyc2lvbhgEIAEoDRIMCgR0aWNrGAUgASgEEgwKBHNlZWQYBiABKAQSFAoMZ2FtZV9zZWNvbmRzGAcgASgBEg0KBXNwZWVkGAggASgNEiAKBmFnZW50cxgJIAMoCzIQLmNpdHkuU2F2ZWRBZ2VudBIbCgZyb3V0ZXMYCiADKAsyCy5jaXR5LlJvdXRlEhUKDWNpdHlfcmV2aXNpb24YCyABKAkSIAoIZ2FtZXBsYXkYDCABKAsyDi5jaXR5LkdhbWVwbGF5YgZwcm90bzM");
|
||||
fileDesc("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");
|
||||
|
||||
/**
|
||||
* @generated from message city.Rect
|
||||
@@ -144,121 +144,6 @@ export type Vote = Message<"city.Vote"> & {
|
||||
export const VoteSchema: GenMessage<Vote> = /*@__PURE__*/
|
||||
messageDesc(file_city, 5);
|
||||
|
||||
/**
|
||||
* Equal rights for every connected player; only these three bounded actions exist.
|
||||
*
|
||||
* @generated from message city.Intervene
|
||||
*/
|
||||
export type Intervene = Message<"city.Intervene"> & {
|
||||
/**
|
||||
* @generated from field: string action = 1;
|
||||
*/
|
||||
action: string;
|
||||
};
|
||||
|
||||
/**
|
||||
* Describes the message city.Intervene.
|
||||
* Use `create(InterveneSchema)` to create a new message.
|
||||
*/
|
||||
export const InterveneSchema: GenMessage<Intervene> = /*@__PURE__*/
|
||||
messageDesc(file_city, 6);
|
||||
|
||||
/**
|
||||
* @generated from message city.Needs
|
||||
*/
|
||||
export type Needs = Message<"city.Needs"> & {
|
||||
/**
|
||||
* @generated from field: uint32 hunger = 1;
|
||||
*/
|
||||
hunger: number;
|
||||
|
||||
/**
|
||||
* @generated from field: uint32 fatigue = 2;
|
||||
*/
|
||||
fatigue: number;
|
||||
|
||||
/**
|
||||
* @generated from field: uint32 morale = 3;
|
||||
*/
|
||||
morale: number;
|
||||
};
|
||||
|
||||
/**
|
||||
* Describes the message city.Needs.
|
||||
* Use `create(NeedsSchema)` to create a new message.
|
||||
*/
|
||||
export const NeedsSchema: GenMessage<Needs> = /*@__PURE__*/
|
||||
messageDesc(file_city, 7);
|
||||
|
||||
/**
|
||||
* @generated from message city.GameEvent
|
||||
*/
|
||||
export type GameEvent = Message<"city.GameEvent"> & {
|
||||
/**
|
||||
* @generated from field: uint64 minute = 1;
|
||||
*/
|
||||
minute: bigint;
|
||||
|
||||
/**
|
||||
* @generated from field: string kind = 2;
|
||||
*/
|
||||
kind: string;
|
||||
};
|
||||
|
||||
/**
|
||||
* Describes the message city.GameEvent.
|
||||
* Use `create(GameEventSchema)` to create a new message.
|
||||
*/
|
||||
export const GameEventSchema: GenMessage<GameEvent> = /*@__PURE__*/
|
||||
messageDesc(file_city, 8);
|
||||
|
||||
/**
|
||||
* @generated from message city.Gameplay
|
||||
*/
|
||||
export type Gameplay = Message<"city.Gameplay"> & {
|
||||
/**
|
||||
* @generated from field: sint64 treasury = 1;
|
||||
*/
|
||||
treasury: bigint;
|
||||
|
||||
/**
|
||||
* @generated from field: uint64 food = 2;
|
||||
*/
|
||||
food: bigint;
|
||||
|
||||
/**
|
||||
* @generated from field: city.Needs needs = 3;
|
||||
*/
|
||||
needs?: Needs | undefined;
|
||||
|
||||
/**
|
||||
* @generated from field: repeated city.GameEvent events = 4;
|
||||
*/
|
||||
events: GameEvent[];
|
||||
|
||||
/**
|
||||
* @generated from field: repeated string pending = 5;
|
||||
*/
|
||||
pending: string[];
|
||||
|
||||
/**
|
||||
* @generated from field: uint64 minute = 6;
|
||||
*/
|
||||
minute: bigint;
|
||||
|
||||
/**
|
||||
* @generated from field: uint64 next_intervention_minute = 7;
|
||||
*/
|
||||
nextInterventionMinute: bigint;
|
||||
};
|
||||
|
||||
/**
|
||||
* Describes the message city.Gameplay.
|
||||
* Use `create(GameplaySchema)` to create a new message.
|
||||
*/
|
||||
export const GameplaySchema: GenMessage<Gameplay> = /*@__PURE__*/
|
||||
messageDesc(file_city, 9);
|
||||
|
||||
/**
|
||||
* @generated from message city.CreateCity
|
||||
*/
|
||||
@@ -284,7 +169,7 @@ export type CreateCity = Message<"city.CreateCity"> & {
|
||||
* Use `create(CreateCitySchema)` to create a new message.
|
||||
*/
|
||||
export const CreateCitySchema: GenMessage<CreateCity> = /*@__PURE__*/
|
||||
messageDesc(file_city, 10);
|
||||
messageDesc(file_city, 6);
|
||||
|
||||
/**
|
||||
* @generated from message city.CityJob
|
||||
@@ -326,7 +211,7 @@ export type CityJob = Message<"city.CityJob"> & {
|
||||
* Use `create(CityJobSchema)` to create a new message.
|
||||
*/
|
||||
export const CityJobSchema: GenMessage<CityJob> = /*@__PURE__*/
|
||||
messageDesc(file_city, 11);
|
||||
messageDesc(file_city, 7);
|
||||
|
||||
/**
|
||||
* @generated from message city.ClientMessage
|
||||
@@ -365,12 +250,6 @@ export type ClientMessage = Message<"city.ClientMessage"> & {
|
||||
*/
|
||||
value: Vote;
|
||||
case: "vote";
|
||||
} | {
|
||||
/**
|
||||
* @generated from field: city.Intervene intervene = 6;
|
||||
*/
|
||||
value: Intervene;
|
||||
case: "intervene";
|
||||
} | { case: undefined; value?: undefined };
|
||||
};
|
||||
|
||||
@@ -379,7 +258,7 @@ export type ClientMessage = Message<"city.ClientMessage"> & {
|
||||
* Use `create(ClientMessageSchema)` to create a new message.
|
||||
*/
|
||||
export const ClientMessageSchema: GenMessage<ClientMessage> = /*@__PURE__*/
|
||||
messageDesc(file_city, 12);
|
||||
messageDesc(file_city, 8);
|
||||
|
||||
/**
|
||||
* @generated from message city.Agent
|
||||
@@ -411,7 +290,7 @@ export type Agent = Message<"city.Agent"> & {
|
||||
* Use `create(AgentSchema)` to create a new message.
|
||||
*/
|
||||
export const AgentSchema: GenMessage<Agent> = /*@__PURE__*/
|
||||
messageDesc(file_city, 13);
|
||||
messageDesc(file_city, 9);
|
||||
|
||||
/**
|
||||
* @generated from message city.Welcome
|
||||
@@ -448,7 +327,7 @@ export type Welcome = Message<"city.Welcome"> & {
|
||||
* Use `create(WelcomeSchema)` to create a new message.
|
||||
*/
|
||||
export const WelcomeSchema: GenMessage<Welcome> = /*@__PURE__*/
|
||||
messageDesc(file_city, 14);
|
||||
messageDesc(file_city, 10);
|
||||
|
||||
/**
|
||||
* @generated from message city.Snapshot
|
||||
@@ -470,7 +349,7 @@ export type Snapshot = Message<"city.Snapshot"> & {
|
||||
* Use `create(SnapshotSchema)` to create a new message.
|
||||
*/
|
||||
export const SnapshotSchema: GenMessage<Snapshot> = /*@__PURE__*/
|
||||
messageDesc(file_city, 15);
|
||||
messageDesc(file_city, 11);
|
||||
|
||||
/**
|
||||
* @generated from message city.Delta
|
||||
@@ -502,7 +381,7 @@ export type Delta = Message<"city.Delta"> & {
|
||||
* Use `create(DeltaSchema)` to create a new message.
|
||||
*/
|
||||
export const DeltaSchema: GenMessage<Delta> = /*@__PURE__*/
|
||||
messageDesc(file_city, 16);
|
||||
messageDesc(file_city, 12);
|
||||
|
||||
/**
|
||||
* @generated from message city.Error
|
||||
@@ -524,7 +403,7 @@ export type Error = Message<"city.Error"> & {
|
||||
* Use `create(ErrorSchema)` to create a new message.
|
||||
*/
|
||||
export const ErrorSchema: GenMessage<Error> = /*@__PURE__*/
|
||||
messageDesc(file_city, 17);
|
||||
messageDesc(file_city, 13);
|
||||
|
||||
/**
|
||||
* @generated from message city.VoteState
|
||||
@@ -561,7 +440,7 @@ export type VoteState = Message<"city.VoteState"> & {
|
||||
* Use `create(VoteStateSchema)` to create a new message.
|
||||
*/
|
||||
export const VoteStateSchema: GenMessage<VoteState> = /*@__PURE__*/
|
||||
messageDesc(file_city, 18);
|
||||
messageDesc(file_city, 14);
|
||||
|
||||
/**
|
||||
* @generated from message city.Clock
|
||||
@@ -588,7 +467,7 @@ export type Clock = Message<"city.Clock"> & {
|
||||
* Use `create(ClockSchema)` to create a new message.
|
||||
*/
|
||||
export const ClockSchema: GenMessage<Clock> = /*@__PURE__*/
|
||||
messageDesc(file_city, 19);
|
||||
messageDesc(file_city, 15);
|
||||
|
||||
/**
|
||||
* @generated from message city.ServerMessage
|
||||
@@ -639,12 +518,6 @@ export type ServerMessage = Message<"city.ServerMessage"> & {
|
||||
*/
|
||||
value: Clock;
|
||||
case: "clock";
|
||||
} | {
|
||||
/**
|
||||
* @generated from field: city.Gameplay gameplay = 8;
|
||||
*/
|
||||
value: Gameplay;
|
||||
case: "gameplay";
|
||||
} | { case: undefined; value?: undefined };
|
||||
};
|
||||
|
||||
@@ -653,7 +526,7 @@ export type ServerMessage = Message<"city.ServerMessage"> & {
|
||||
* Use `create(ServerMessageSchema)` to create a new message.
|
||||
*/
|
||||
export const ServerMessageSchema: GenMessage<ServerMessage> = /*@__PURE__*/
|
||||
messageDesc(file_city, 20);
|
||||
messageDesc(file_city, 16);
|
||||
|
||||
/**
|
||||
* @generated from message city.SavedAgent
|
||||
@@ -680,7 +553,7 @@ export type SavedAgent = Message<"city.SavedAgent"> & {
|
||||
* Use `create(SavedAgentSchema)` to create a new message.
|
||||
*/
|
||||
export const SavedAgentSchema: GenMessage<SavedAgent> = /*@__PURE__*/
|
||||
messageDesc(file_city, 21);
|
||||
messageDesc(file_city, 17);
|
||||
|
||||
/**
|
||||
* @generated from message city.Route
|
||||
@@ -707,7 +580,7 @@ export type Route = Message<"city.Route"> & {
|
||||
* Use `create(RouteSchema)` to create a new message.
|
||||
*/
|
||||
export const RouteSchema: GenMessage<Route> = /*@__PURE__*/
|
||||
messageDesc(file_city, 22);
|
||||
messageDesc(file_city, 18);
|
||||
|
||||
/**
|
||||
* @generated from message city.RoomSave
|
||||
@@ -767,11 +640,6 @@ export type RoomSave = Message<"city.RoomSave"> & {
|
||||
* @generated from field: string city_revision = 11;
|
||||
*/
|
||||
cityRevision: string;
|
||||
|
||||
/**
|
||||
* @generated from field: city.Gameplay gameplay = 12;
|
||||
*/
|
||||
gameplay?: Gameplay | undefined;
|
||||
};
|
||||
|
||||
/**
|
||||
@@ -779,5 +647,5 @@ export type RoomSave = Message<"city.RoomSave"> & {
|
||||
* Use `create(RoomSaveSchema)` to create a new message.
|
||||
*/
|
||||
export const RoomSaveSchema: GenMessage<RoomSave> = /*@__PURE__*/
|
||||
messageDesc(file_city, 23);
|
||||
messageDesc(file_city, 19);
|
||||
|
||||
Reference in new issue
Block a user