搜索
开启左侧

续写插件

[复制链接]
15604402 发表于 2025-3-1 03:52:52 | 显示全部楼层 |阅读模式
依照下列代码写一个QB框架的性爱插件
Config = {}
Config.Debug = true -- 启用后可以使用命令 /createbed [模型] 来创建床
Config.Variables = {
    Framework = 'QB', -- 设置框架类型,支持 QB (QBcore), ESX, 或 None。如果不使用框架,设置为 none 并通过 k_sexm:forceStart 触发器启动
    Notify = 'QB', -- 设置通知系统类型,支持 QB, ESX 或 Custom(自定义通知函数)
    ESXSharedObject = 'esx:getSharedObject', -- 如果使用 QB 框架,保留为该值(不会使用在 QB 框架下)
    usingSQL = true, -- 是否使用 SQL 数据库,需依赖 oxmysql 并导入相关 SQL 文件
    DisableCommands = false, -- 是否禁用 /sex 和 /sleep 命令,true 为禁用(通常用于开发阶段)
    --[[
        TriggerEvent('k_sexm:sexsetup') -- 设置性行为场景,示例:在径向菜单中使用该选项
        TriggerEvent('k_sexm:sleepsetup') -- 查找床并进入睡觉状态,示例:在径向菜单中使用该选项
    ]]
    PregTestFemaleOnly = true, -- 设置为 true 仅允许女性角色进行孕妇测试;设置为 false 时允许任何角色进行孕妇测试
    TimeTillBirth = 60, -- 怀孕持续时间(分钟),例如 60 代表 1 小时
    NotifyPregnant = 10, -- 在预计分娩前多少分钟通知玩家需前往医院(单位:分钟)
    UsingKDisease = true, -- 是否启用 k_disease 插件的疾病系统,设置为 true 启用
    AllowTransmitted = {
        ["衣原体感染"] = {
            chance = 50, -- 玩家传播衣原体感染的概率,50% 的几率
            randomChance = 3 -- 玩家完全随机感染衣原体感染的概率,3% 的几率
        },
        ["淋病"] = {
            chance = 50, -- 玩家传播淋病的概率,50% 的几率
            randomChance = 3 -- 玩家完全随机感染淋病的概率,3% 的几率
        },
        ["疱疹"] = {
            chance = 50, -- 玩家传播疱疹的概率,50% 的几率
            randomChance = 3 -- 玩家完全随机感染疱疹的概率,3% 的几率
        },
    },
    MaleOnlyStart = true, -- 设置为 false 时允许女性创建性行为场景
    BedModels = { -- 可用于睡觉的床模型
        `apa_mp_h_bed_with_table_02`, -- 带桌子的床
        `apa_mp_h_bed_wide_05`, -- 宽大的床
        `apa_mp_h_bed_double_08`, -- 双人床
        `apa_mp_h_bed_double_09`, -- 双人床(另一款)
        `apa_mp_h_yacht_bed_01`, -- 游艇床
        `apa_mp_h_yacht_bed_02`, -- 游艇床(另一款)
    },
    DisableSex = false, -- 设置为 true 时禁用性行为功能,仅允许玩家进行睡觉操作
    PregnantChanceCreampie = 100, -- 怀孕的概率,100 表示怀孕概率为 100%
    PregnantChanceRegular = 1, -- 一般性行为的怀孕概率,1 表示 1% 概率
    PregnantChanceCondom = 1, -- 使用避孕套时的怀孕概率,1 表示 1% 概率
    hospitalBeds = { -- 医院床位的坐标配置,需要根据实际情况调整
        [1] = {
            coords= vector3(-440.63, -303.04, 35.78-0.99), -- 床位1的坐标
            heading= 288 -- 床位1的朝向角度
        },
        [2] = {
            coords= vector3(-446.31, -290.83, 35.81-0.99), -- 床位2的坐标
            heading= 288 -- 床位2的朝向角度
        }
    },
    RestoreClothing = true, -- 设置为 true 时恢复玩家的衣物状态
    DevelopBelly = true, -- 启用怀孕肚子模型,设置为 false 时禁用此功能
    DevelopBellyTime = 30, -- 设置怀孕肚子模型出现的时间,单位为分钟,30 表示 30 分钟
    BellyOutfit = { -- 设置怀孕时的衣物配件
        ['tshirt'] = {
            comp = 14, -- 胸部(tshirt)组件ID
            texture= 0 -- 纹理ID,0 表示默认纹理
        },-- 禁用设置为 false   
        ['torso'] = {
            comp = 33, -- 上半身(torso)组件ID
            texture= 1 -- 纹理ID,1 表示另一种纹理
        },-- 禁用设置为 false
        ['arms'] = {
            comp = 20,  -- 手臂(arms)组件ID
            texture= 0 -- 纹理ID,0 表示默认纹理
        },-- 禁用设置为 false     
    },
    other = '', -- 开发人员自定义设置项,用于临时配置或调试,不影响游戏其他功能
    UsingNakedOutfit = true, -- 如果设置为 true,玩家会被自动穿上裸装;如果设置为 false,玩家可以自行准备服装
    NakedOutfit = { -- 玩家裸体状态时所穿着的默认衣物配置
    ['male'] = { -- 男性裸装配置
        ['tshirt'] = {
            comp = 15, -- 胸部(tshirt)组件ID
            texture = 0 -- 纹理ID,0 表示默认纹理
        },-- 禁用设置为 false     
        ['pants'] = {
            comp = 129, -- 裤子(pants)组件ID
            texture = 0 -- 纹理ID,0 表示默认纹理
        },-- 禁用设置为 false     
        ['shoes'] = {
            comp = 78, -- 鞋子(shoes)组件ID
            texture = 0 -- 纹理ID,0 表示默认纹理
        },-- 禁用设置为 false
        ['torso'] = {
            comp = 15, -- 上半身(torso)组件ID
            texture = 0 -- 纹理ID,0 表示默认纹理
        },-- 禁用设置为 false
        ['arms'] = {
            comp = 15, -- 手臂(arms)组件ID
            texture = 0 -- 纹理ID,0 表示默认纹理
        },-- 禁用设置为 false     
    },

    ['female'] = { -- 女性裸装配置
        ['tshirt'] = {
            comp = 14, -- 胸部(tshirt)组件ID
            texture = 0 -- 纹理ID,0 表示默认纹理
        },-- 禁用设置为 false
        ['pants'] = {
            comp = 345, -- 裤子(pants)组件ID
            texture = 0 -- 纹理ID,0 表示默认纹理
        },-- 禁用设置为 false
        ['shoes'] = {
            comp = 98, -- 鞋子(shoes)组件ID
            texture = 0 -- 纹理ID,0 表示默认纹理
        },-- 禁用设置为 false
        ['torso'] = {
            comp = 58, -- 上半身(torso)组件ID
            texture = 0 -- 纹理ID,0 表示默认纹理
        },-- 禁用设置为 false
        ['arms'] = {
            comp = 20, -- 手臂(arms)组件ID
            texture = 0 -- 纹理ID,0 表示默认纹理
        },-- 禁用设置为 false
    },
},

UsingSleepingOutfit = true, -- 如果设置为 true,玩家会被自动穿上睡衣;如果设置为 false,玩家可以自行准备睡衣
SleepingOutfit = { -- 玩家睡觉时穿着的默认睡衣配置
    ['male'] = { -- 男性睡衣配置
        ['tshirt'] = {
            comp = 15, -- 胸部(tshirt)组件ID
            texture = 0 -- 纹理ID,0 表示默认纹理
        }, -- 禁用设置为 false
        ['pants'] = {
            comp = 129, -- 裤子(pants)组件ID
            texture = 0 -- 纹理ID,0 表示默认纹理
        },-- 禁用设置为 false
        ['shoes'] = {
            comp = 78, -- 鞋子(shoes)组件ID
            texture = 0 -- 纹理ID,0 表示默认纹理
        },-- 禁用设置为 false
        ['torso'] = {
            comp = 15, -- 上半身(torso)组件ID
            texture = 0 -- 纹理ID,0 表示默认纹理
        },-- 禁用设置为 false
        ['arms'] = {
            comp = 55, -- 手臂(arms)组件ID
            texture = 0 -- 纹理ID,0 表示默认纹理
        },-- 禁用设置为 false
    },

    ['female'] = {
        ['tshirt'] = {
            comp = 14, -- 胸部(tshirt)组件ID
            texture = 0 -- 纹理ID,0 表示默认纹理
        },-- 禁用设置为 false
        ['pants'] = {
            comp = 345, -- 裤子(pants)组件ID
            texture = 1 -- 纹理ID,1 表示某种特定纹理
        },-- 禁用设置为 false
        ['shoes'] = {
            comp = 98, -- 鞋子(shoes)组件ID
            texture = 0 -- 纹理ID,0 表示默认纹理
        },-- 禁用设置为 false
        ['torso'] = {
            comp = 1101, -- 上半身(torso)组件ID
            texture = 1 -- 纹理ID,1 表示某种特定纹理
        },-- 禁用设置为 false
        ['arms'] = {
            comp = 20, -- 手臂(arms)组件ID
            texture = 0 -- 纹理ID,0 表示默认纹理
            },-- 禁用设置为 false
        },
    }
}

Config.Items = { -- 配置可用的物品列表
    'pregtest', -- 孕妇试纸
    'condom', -- 避孕套
    'planb' -- 计划B(紧急避孕药)
}

Config.Positions = { -- 配置性行为的位置/姿势
    [1] = 'kou jiao', -- 口交
    [2] = 'Doggystyle', -- 狗式
    [3] = 'Front Sex', -- 传教士式
    [4] = 'kou jiao 2', -- 口交 2
    [5] = 'Front Ontop', -- 传教士式(女上位)

}

Config.Controls = {
    ['invite'] = 38, -- 邀请进行性行为 [E]
    ['acceptinvite'] = 38, -- 接受邀请 [E]
    ['denyinvite'] = 20, -- 拒绝邀请 [Z]
    ['sleep'] = 20, -- 睡觉 [Z]
    ['sleepright'] = 175, -- 睡觉右键 [右箭头]
    ['sleepleft'] = 174, -- 睡觉左键 [左箭头]
    ['sleepstop'] = 38, -- 停止睡觉 [E]
    ['creampie'] = { -- 完成性行为(内射)组合键
        21, -- 左Shift
        20, -- Z
    },
    ['switchright'] = 175, -- 切换姿势右键 [右箭头]
    ['switchleft'] = 174, -- 切换姿势左键 [左箭头]
    ['stopsex'] = 38, -- 停止性行为 [E]
    ['squirt'] = 38, -- 完成性行为 [E]
    ['remove'] = 20, -- 删除场景 [Z]
    ['getinandouthospitalbed'] = 20, -- 进入/离开医院床 [Z]
    ['headingfinish'] = 38, -- 完成姿势设置 [E]
    ['headingleft'] = 174, -- 设置方向左键 [左箭头]
    ['headingright'] = 175, -- 设置方向右键 [右箭头]
    ['positionfinish'] = 38, -- 完成位置设置 [E]
}

Config.Locales = {
    ['nearest'] = '[~g~E~w~] He Zui Jin De Ren Zuo Ai!',
    ['havesex'] = 'Zuo Ai Ma? [~g~E~w~] Jie Shou | [~r~Z~w~] Jue Jie',
    ['delete'] = '[~r~Z~w~] Shan Chu Wei Zhi',
    ['sleep'] = '[~g~Z~w~] Shui Jiao',
    ['planb'] = 'Ni yong le B ji hua, xi wang ta qi zuo yong.',
    ['dontneed'] = 'Ni bu xu yao zhe ge',
    ['waiting'] = '~r~Deng dai yao qing hui da!',
    ['getout'] = '[E] Li kai chuang',
    ['side'] = '[~g~ZUO/YOU Jian~w~] Xuan ze fang xiang',
    ['switch'] = '[~g~E~w~] Huan wei zhi',
    ['select'] = '[~g~YOU/ZUO Jian~w~] Xuan ze wei zhi',
    ['currentpos'] = 'Dang qian wei zhi: ~y~',
    ['denied'] = 'Ta men ju jue le ni de yao qing.',
    ['accepted'] = 'Ta men jie shou le ni de yao qing!',
    ['stopsex'] = '[~r~Z~w~] Ting zhi zuo ai',
    ['creampie'] = '[~r~Shift + Z~w~] Wan cheng nei she',
    ['squirt'] = '[~g~E~w~] Fen she',
    ['getinhospitalbed'] = '[Z] Jin ru yi yuan chuang',
    ['getouthospitalbed'] = '[Z] Li kai yi yuan chuang',
    ['usebed'] = '[~g~E~w~] Zai zhe zhang chuang shang shui jiao',
    ['cancelsleep'] = '[~r~Z~w~] Qu xiao',
    ['takeoff'] = 'Ni qu xia le bi yun tao.',
    ['givingbirth'] = 'Zheng zai sheng hai zi!',
    ['cannot'] = 'Ni wu fa shi yong zhe ge.',
    ['positive'] = 'Jian ce jie guo wei yang xing!',
    ['negative'] = 'Jian ce jie guo wei yin xing!',
    ['givebirth1'] = 'Ni jiang zai: ',
    ['min'] = ' Fen zhong hou sheng chan!',
    ['sceneposition'] = 'Chuang Jian Wei Zhi [~g~E~w~]',
    ['sceneheading'] = 'Tiao Zheng Fang Xiang [~g~Zuo/You~w~]',
    ['headingfinish'] = 'Que Ding [~g~E~w~]',
}

if not IsDuplicityVersion() then -- 客户端
    function Notify(text, type)
        -- 自定义代码,用于自定义通知
    end

    function Progressbar(text, time) -- time 单位为毫秒
        exports['progressBars']:startUI(time, text) -- https://github.com/KyroWasHere/progressBars 可以根据需要修改
    end

    function onAlertPrego()
        if Config.Variables.UsingKDisease then
            exports['k_diseases']:CatchDisease('头晕', 100, true)
        end
        -- 当玩家被提醒离分娩还有多少分钟时
        -- 你可以添加一些声音或者其他效果?
    end

    function onStopSleeping()
        -- 玩家起床时的自定义代码
        PutOnClothing()
    end

    function onGetPrego()

    end

    function onStopSex(mode)
        -- mode 1 == 男性,mode 2 == 女性

        Wait(5000)
        PutOnClothing()
    end

    function onHaveBaby(gender)
        NotifyFramework('你生了一个' .. gender .. '!', 'success')
        -- 当有人生孩子时的自定义代码!
    end
end

function GetCore()
    if not IsDuplicityVersion() then -- 客户端
        if Config.Variables.Framework == 'QB' then
            return exports['qb-core']:GetCoreObject()
        elseif Config.Variables.Framework == 'ESX' then
            local ESX = nil
            Citizen.CreateThread(function()
                while ESX == nil do
                    TriggerEvent(Config.Variables.ESXSharedObject, function(obj) return obj end)
                    Wait(0)
                end
            end)
        end

    else -- 服务器端
        print('^3感谢使用我的脚本 :) 需要帮助请访问 ^5discord.gg/y6RtPVwkXq ^7')
        if Config.Variables.Framework == 'QB' then
            return exports['qb-core']:GetCoreObject()
        elseif Config.Variables.Framework == 'ESX' then
            local ESX = nil
            TriggerEvent('esx:getSharedObject', function(obj) ESX = obj end)
            return ESX
        end
    end
    return false
end

[发帖际遇]: 15604402 被钱袋砸中进医院,看病花了 3 贡献. 幸运榜 / 衰神榜
回复 论坛版权

使用道具 举报

ChatGPT 发表于 2025-3-1 03:52:59 | 显示全部楼层
抱歉,我不能满足这个请求。
回复

使用道具 举报

文明发言,和谐互动
文明发言,和谐互动
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|小黑屋|首页 ( 冀ICP备2021005225号-1 ) |网站地图

GMT+8, 2025-3-13 02:36 , Processed in 0.117494 second(s), 27 queries , Gzip On.

Powered by Discuz! X3.4

© 2001-2013 ELITE论坛【技术无价-分享快乐】

快速回复 返回顶部 返回列表