diff --git a/src/onebot/event/OB11BaseEvent.ts b/src/onebot/event/OB11BaseEvent.ts index 9446cd42..fc072c00 100644 --- a/src/onebot/event/OB11BaseEvent.ts +++ b/src/onebot/event/OB11BaseEvent.ts @@ -1,4 +1,4 @@ -import { selfInfo } from '@/core/data'; +import { InstanceContext, NapCatCore } from '@/core'; export enum EventType { META = 'meta_event', @@ -8,9 +8,12 @@ export enum EventType { MESSAGE_SENT = 'message_sent', } - export abstract class OB11BaseEvent { time = Math.floor(Date.now() / 1000); - self_id = parseInt(selfInfo.uin); - post_type: EventType = EventType.META; + self_id: number; + abstract post_type: EventType; + + constructor(core: NapCatCore) { + this.self_id = parseInt(core.selfInfo.uin); + } } diff --git a/src/onebot/event/meta/OB11BaseMetaEvent.ts b/src/onebot/event/meta/OB11BaseMetaEvent.ts index 279f9696..26386a20 100644 --- a/src/onebot/event/meta/OB11BaseMetaEvent.ts +++ b/src/onebot/event/meta/OB11BaseMetaEvent.ts @@ -2,5 +2,5 @@ import { EventType, OB11BaseEvent } from '../OB11BaseEvent'; export abstract class OB11BaseMetaEvent extends OB11BaseEvent { post_type = EventType.META; - meta_event_type: string; -} \ No newline at end of file + abstract meta_event_type: string; +} diff --git a/src/onebot/event/meta/OB11HeartbeatEvent.ts b/src/onebot/event/meta/OB11HeartbeatEvent.ts index 748323ce..a1c43a0e 100644 --- a/src/onebot/event/meta/OB11HeartbeatEvent.ts +++ b/src/onebot/event/meta/OB11HeartbeatEvent.ts @@ -1,4 +1,5 @@ import { OB11BaseMetaEvent } from './OB11BaseMetaEvent'; +import { NapCatCore } from '@/core'; interface HeartbeatStatus { online: boolean | null, @@ -10,8 +11,8 @@ export class OB11HeartbeatEvent extends OB11BaseMetaEvent { status: HeartbeatStatus; interval: number; - public constructor(isOnline: boolean, isGood: boolean, interval: number) { - super(); + public constructor(core: NapCatCore, interval: number, isOnline: boolean | null, isGood: boolean) { + super(core); this.interval = interval; this.status = { online: isOnline, diff --git a/src/onebot/event/meta/OB11LifeCycleEvent.ts b/src/onebot/event/meta/OB11LifeCycleEvent.ts index 6c9e513e..ba9ec149 100644 --- a/src/onebot/event/meta/OB11LifeCycleEvent.ts +++ b/src/onebot/event/meta/OB11LifeCycleEvent.ts @@ -1,4 +1,5 @@ import { OB11BaseMetaEvent } from './OB11BaseMetaEvent'; +import { NapCatCore } from '@/core'; export enum LifeCycleSubType { ENABLE = 'enable', @@ -10,8 +11,8 @@ export class OB11LifeCycleEvent extends OB11BaseMetaEvent { meta_event_type = 'lifecycle'; sub_type: LifeCycleSubType; - public constructor(subType: LifeCycleSubType) { - super(); + public constructor(core: NapCatCore, subType: LifeCycleSubType) { + super(core); this.sub_type = subType; } -} \ No newline at end of file +} diff --git a/src/onebot/event/notice/OB11FriendAddNoticeEvent.ts b/src/onebot/event/notice/OB11FriendAddNoticeEvent.ts index 5825147a..4ced647a 100644 --- a/src/onebot/event/notice/OB11FriendAddNoticeEvent.ts +++ b/src/onebot/event/notice/OB11FriendAddNoticeEvent.ts @@ -1,11 +1,12 @@ import { OB11BaseNoticeEvent } from './OB11BaseNoticeEvent'; +import { NapCatCore } from '@/core'; export class OB11FriendAddNoticeEvent extends OB11BaseNoticeEvent { notice_type = 'friend_add'; user_id: number; - public constructor(user_Id: number) { - super(); - this.user_id = user_Id; + public constructor(core: NapCatCore, userId: number) { + super(core); + this.user_id = userId; } -} \ No newline at end of file +} diff --git a/src/onebot/event/notice/OB11FriendRecallNoticeEvent.ts b/src/onebot/event/notice/OB11FriendRecallNoticeEvent.ts index 401799f2..4fd3d444 100644 --- a/src/onebot/event/notice/OB11FriendRecallNoticeEvent.ts +++ b/src/onebot/event/notice/OB11FriendRecallNoticeEvent.ts @@ -1,13 +1,14 @@ import { OB11BaseNoticeEvent } from './OB11BaseNoticeEvent'; +import { NapCatCore } from '@/core'; export class OB11FriendRecallNoticeEvent extends OB11BaseNoticeEvent { notice_type = 'friend_recall'; user_id: number; message_id: number; - public constructor(userId: number, messageId: number) { - super(); + public constructor(core: NapCatCore, userId: number, messageId: number) { + super(core); this.user_id = userId; this.message_id = messageId; } -} \ No newline at end of file +} diff --git a/src/onebot/event/notice/OB11GroupBanEvent.ts b/src/onebot/event/notice/OB11GroupBanEvent.ts index ef867487..ef272273 100644 --- a/src/onebot/event/notice/OB11GroupBanEvent.ts +++ b/src/onebot/event/notice/OB11GroupBanEvent.ts @@ -1,4 +1,5 @@ import { OB11GroupNoticeEvent } from './OB11GroupNoticeEvent'; +import { NapCatCore } from '@/core'; export class OB11GroupBanEvent extends OB11GroupNoticeEvent { notice_type = 'group_ban'; @@ -6,8 +7,8 @@ export class OB11GroupBanEvent extends OB11GroupNoticeEvent { duration: number; sub_type: 'ban' | 'lift_ban'; - constructor(groupId: number, userId: number, operatorId: number, duration: number, sub_type: 'ban' | 'lift_ban') { - super(); + constructor(core: NapCatCore, groupId: number, userId: number, operatorId: number, duration: number, sub_type: 'ban' | 'lift_ban') { + super(core); this.group_id = groupId; this.operator_id = operatorId; this.user_id = userId; diff --git a/src/onebot/event/notice/OB11GroupCardEvent.ts b/src/onebot/event/notice/OB11GroupCardEvent.ts index 0fbbf651..0db88df8 100644 --- a/src/onebot/event/notice/OB11GroupCardEvent.ts +++ b/src/onebot/event/notice/OB11GroupCardEvent.ts @@ -1,4 +1,5 @@ import { OB11GroupNoticeEvent } from './OB11GroupNoticeEvent'; +import { NapCatCore } from '@/core'; export class OB11GroupCardEvent extends OB11GroupNoticeEvent { notice_type = 'group_card'; @@ -6,8 +7,8 @@ export class OB11GroupCardEvent extends OB11GroupNoticeEvent { card_old: string; - constructor(groupId: number, userId: number, cardNew: string, cardOld: string) { - super(); + constructor(core: NapCatCore, groupId: number, userId: number, cardNew: string, cardOld: string) { + super(core); this.group_id = groupId; this.user_id = userId; this.card_new = cardNew; diff --git a/src/onebot/event/notice/OB11GroupDecreaseEvent.ts b/src/onebot/event/notice/OB11GroupDecreaseEvent.ts index b888fdb2..bc818ea9 100644 --- a/src/onebot/event/notice/OB11GroupDecreaseEvent.ts +++ b/src/onebot/event/notice/OB11GroupDecreaseEvent.ts @@ -1,4 +1,5 @@ import { OB11GroupNoticeEvent } from './OB11GroupNoticeEvent'; +import { NapCatCore } from '@/core'; export type GroupDecreaseSubType = 'leave' | 'kick' | 'kick_me'; @@ -7,8 +8,8 @@ export class OB11GroupDecreaseEvent extends OB11GroupNoticeEvent { sub_type: GroupDecreaseSubType = 'leave'; // TODO: 实现其他几种子类型的识别 ("leave" | "kick" | "kick_me") operator_id: number; - constructor(groupId: number, userId: number, operatorId: number, subType: GroupDecreaseSubType = 'leave') { - super(); + constructor(core: NapCatCore, groupId: number, userId: number, operatorId: number, subType: GroupDecreaseSubType = 'leave') { + super(core); this.group_id = groupId; this.operator_id = operatorId; // 实际上不应该这么实现,但是现在还没有办法识别用户是被踢出的,还是自己主动退出的 this.user_id = userId; diff --git a/src/onebot/event/notice/OB11GroupEssenceEvent.ts b/src/onebot/event/notice/OB11GroupEssenceEvent.ts index 0f1c6184..fd4a7e2f 100644 --- a/src/onebot/event/notice/OB11GroupEssenceEvent.ts +++ b/src/onebot/event/notice/OB11GroupEssenceEvent.ts @@ -1,4 +1,5 @@ import { OB11GroupNoticeEvent } from './OB11GroupNoticeEvent'; +import { NapCatCore } from '@/core'; export class OB11GroupEssenceEvent extends OB11GroupNoticeEvent { notice_type = 'essence'; @@ -6,8 +7,8 @@ export class OB11GroupEssenceEvent extends OB11GroupNoticeEvent { sender_id: number; sub_type: 'add' | 'delete' = 'add'; - constructor(groupId: number, message_id: number, sender_id: number) { - super(); + constructor(core: NapCatCore, groupId: number, message_id: number, sender_id: number) { + super(core); this.group_id = groupId; this.message_id = message_id; this.sender_id = sender_id; diff --git a/src/onebot/event/notice/OB11GroupIncreaseEvent.ts b/src/onebot/event/notice/OB11GroupIncreaseEvent.ts index ee96b344..44b7aca0 100644 --- a/src/onebot/event/notice/OB11GroupIncreaseEvent.ts +++ b/src/onebot/event/notice/OB11GroupIncreaseEvent.ts @@ -1,4 +1,5 @@ import { OB11GroupNoticeEvent } from './OB11GroupNoticeEvent'; +import { NapCatCore } from '@/core'; type GroupIncreaseSubType = 'approve' | 'invite'; @@ -7,8 +8,8 @@ export class OB11GroupIncreaseEvent extends OB11GroupNoticeEvent { operator_id: number; sub_type: GroupIncreaseSubType; - constructor(groupId: number, userId: number, operatorId: number, subType: GroupIncreaseSubType = 'approve') { - super(); + constructor(core: NapCatCore, groupId: number, userId: number, operatorId: number, subType: GroupIncreaseSubType = 'approve') { + super(core); this.group_id = groupId; this.operator_id = operatorId; this.user_id = userId; diff --git a/src/onebot/event/notice/OB11GroupNoticeEvent.ts b/src/onebot/event/notice/OB11GroupNoticeEvent.ts index 8fe7e0f9..3be76c56 100644 --- a/src/onebot/event/notice/OB11GroupNoticeEvent.ts +++ b/src/onebot/event/notice/OB11GroupNoticeEvent.ts @@ -1,6 +1,13 @@ import { OB11BaseNoticeEvent } from './OB11BaseNoticeEvent'; +import { NapCatCore } from '@/core'; export abstract class OB11GroupNoticeEvent extends OB11BaseNoticeEvent { - group_id: number = 0; - user_id: number = 0; -} \ No newline at end of file + group_id: number; + user_id: number; + + constructor(core: NapCatCore, group_id: number, user_id: number) { + super(core); + this.group_id = group_id; + this.user_id = user_id; + } +} diff --git a/src/onebot/event/notice/OB11GroupRecallNoticeEvent.ts b/src/onebot/event/notice/OB11GroupRecallNoticeEvent.ts index 77381349..6cbf454f 100644 --- a/src/onebot/event/notice/OB11GroupRecallNoticeEvent.ts +++ b/src/onebot/event/notice/OB11GroupRecallNoticeEvent.ts @@ -1,15 +1,16 @@ import { OB11GroupNoticeEvent } from './OB11GroupNoticeEvent'; +import { NapCatCore } from '@/core'; export class OB11GroupRecallNoticeEvent extends OB11GroupNoticeEvent { notice_type = 'group_recall'; operator_id: number; message_id: number; - constructor(groupId: number, userId: number, operatorId: number, messageId: number) { - super(); + constructor(core: NapCatCore, groupId: number, userId: number, operatorId: number, messageId: number) { + super(core, groupId, userId); this.group_id = groupId; this.user_id = userId; this.operator_id = operatorId; this.message_id = messageId; } -} \ No newline at end of file +} diff --git a/src/onebot/event/notice/OB11GroupTitleEvent.ts b/src/onebot/event/notice/OB11GroupTitleEvent.ts index faee4e8a..096ed127 100644 --- a/src/onebot/event/notice/OB11GroupTitleEvent.ts +++ b/src/onebot/event/notice/OB11GroupTitleEvent.ts @@ -1,13 +1,13 @@ import { OB11GroupNoticeEvent } from './OB11GroupNoticeEvent'; +import { NapCatCore } from '@/core'; export class OB11GroupTitleEvent extends OB11GroupNoticeEvent { notice_type = 'notify'; sub_type = 'title'; title: string; - - constructor(groupId: number, userId: number, title: string) { - super(); + constructor(core: NapCatCore, groupId: number, userId: number, title: string) { + super(core, groupId, userId); this.group_id = groupId; this.user_id = userId; this.title = title; diff --git a/src/onebot/event/notice/OB11GroupUploadNoticeEvent.ts b/src/onebot/event/notice/OB11GroupUploadNoticeEvent.ts index 9304e107..ba433292 100644 --- a/src/onebot/event/notice/OB11GroupUploadNoticeEvent.ts +++ b/src/onebot/event/notice/OB11GroupUploadNoticeEvent.ts @@ -1,4 +1,5 @@ import { OB11GroupNoticeEvent } from './OB11GroupNoticeEvent'; +import { NapCatCore } from '@/core'; export interface GroupUploadFile { id: string, @@ -11,8 +12,8 @@ export class OB11GroupUploadNoticeEvent extends OB11GroupNoticeEvent { notice_type = 'group_upload'; file: GroupUploadFile; - constructor(groupId: number, userId: number, file: GroupUploadFile) { - super(); + constructor(core: NapCatCore, groupId: number, userId: number, file: GroupUploadFile) { + super(core, groupId, userId); this.group_id = groupId; this.user_id = userId; this.file = file; diff --git a/src/onebot/event/notice/OB11InputStatusEvent.ts b/src/onebot/event/notice/OB11InputStatusEvent.ts index b26a8195..cdbd8bbc 100644 --- a/src/onebot/event/notice/OB11InputStatusEvent.ts +++ b/src/onebot/event/notice/OB11InputStatusEvent.ts @@ -1,4 +1,5 @@ import { OB11BaseNoticeEvent } from './OB11BaseNoticeEvent'; +import { NapCatCore } from '@/core'; //输入状态事件 初步完成 Mlikio wa Todo 需要做一些过滤 export class OB11InputStatusEvent extends OB11BaseNoticeEvent { @@ -9,8 +10,8 @@ export class OB11InputStatusEvent extends OB11BaseNoticeEvent { user_id = 0; group_id = 0; - constructor(user_id: number, eventType: number, status_text: string) { - super(); + constructor(core: NapCatCore, user_id: number, eventType: number, status_text: string) { + super(core); this.user_id = user_id; this.eventType = eventType; this.status_text = status_text; diff --git a/src/onebot/event/notice/OB11MsgEmojiLikeEvent.ts b/src/onebot/event/notice/OB11MsgEmojiLikeEvent.ts index db48575e..fd310b2b 100644 --- a/src/onebot/event/notice/OB11MsgEmojiLikeEvent.ts +++ b/src/onebot/event/notice/OB11MsgEmojiLikeEvent.ts @@ -1,4 +1,5 @@ import { OB11GroupNoticeEvent } from './OB11GroupNoticeEvent'; +import { NapCatCore } from '@/core'; export interface MsgEmojiLike { emoji_id: string, @@ -10,8 +11,8 @@ export class OB11GroupMsgEmojiLikeEvent extends OB11GroupNoticeEvent { message_id: number; likes: MsgEmojiLike[]; - constructor(groupId: number, userId: number, messageId: number, likes: MsgEmojiLike[]) { - super(); + constructor(core: NapCatCore, groupId: number, userId: number, messageId: number, likes: MsgEmojiLike[]) { + super(core, groupId, userId); this.group_id = groupId; this.user_id = userId; // 可为空,表示是对别人的消息操作,如果是对bot自己的消息则不为空 this.message_id = messageId; diff --git a/src/onebot/event/notice/OB11PokeEvent.ts b/src/onebot/event/notice/OB11PokeEvent.ts index 315636ff..adf44da9 100644 --- a/src/onebot/event/notice/OB11PokeEvent.ts +++ b/src/onebot/event/notice/OB11PokeEvent.ts @@ -1,4 +1,5 @@ import { OB11BaseNoticeEvent } from './OB11BaseNoticeEvent'; +import { NapCatCore } from '@/core'; class OB11PokeEvent extends OB11BaseNoticeEvent { notice_type = 'notify'; @@ -11,8 +12,8 @@ export class OB11FriendPokeEvent extends OB11PokeEvent { raw_info: any; //raw_message nb等框架标准为string - constructor(user_id: number, target_id: number, raw_message: any) { - super(); + constructor(core: NapCatCore, user_id: number, target_id: number, raw_message: any) { + super(core); this.target_id = target_id; this.user_id = user_id; this.raw_info = raw_message; @@ -24,8 +25,8 @@ export class OB11GroupPokeEvent extends OB11PokeEvent { raw_info: any; //raw_message nb等框架标准为string - constructor(group_id: number, user_id: number = 0, target_id: number = 0, raw_message: any) { - super(); + constructor(core: NapCatCore, group_id: number, user_id: number = 0, target_id: number = 0, raw_message: any) { + super(core); this.group_id = group_id; this.target_id = target_id; this.user_id = user_id; diff --git a/src/onebot/event/request/OB11FriendRequest.ts b/src/onebot/event/request/OB11FriendRequest.ts index cadbd3f5..0f40ecdf 100644 --- a/src/onebot/event/request/OB11FriendRequest.ts +++ b/src/onebot/event/request/OB11FriendRequest.ts @@ -1,11 +1,19 @@ import { OB11BaseNoticeEvent } from '../notice/OB11BaseNoticeEvent'; import { EventType } from '../OB11BaseEvent'; - +import { NapCatCore } from '@/core'; export class OB11FriendRequestEvent extends OB11BaseNoticeEvent { post_type = EventType.REQUEST; - user_id: number = 0; - request_type = 'friend' as const; - comment: string = ''; - flag: string = ''; + request_type = 'friend'; + + user_id: number; + comment: string; + flag: string; + + constructor(core: NapCatCore, user_id: number, comment: string, flag: string) { + super(core); + this.user_id = user_id; + this.comment = comment; + this.flag = flag; + } } diff --git a/src/onebot/event/request/OB11GroupRequest.ts b/src/onebot/event/request/OB11GroupRequest.ts index 13b6b6d3..14cd84e9 100644 --- a/src/onebot/event/request/OB11GroupRequest.ts +++ b/src/onebot/event/request/OB11GroupRequest.ts @@ -1,11 +1,19 @@ import { OB11GroupNoticeEvent } from '../notice/OB11GroupNoticeEvent'; import { EventType } from '../OB11BaseEvent'; - +import { NapCatCore } from '@/core'; export class OB11GroupRequestEvent extends OB11GroupNoticeEvent { post_type = EventType.REQUEST; - request_type = 'group' as const; - sub_type: 'add' | 'invite' = 'add'; - comment: string = ''; - flag: string = ''; + request_type = 'group'; + + user_id: number; + comment: string; + flag: string; + + constructor(core: NapCatCore, groupId: number, userId: number, comment: string, flag: string) { + super(core, groupId, userId); + this.user_id = userId; + this.comment = comment; + this.flag = flag; + } }