STRELA Posted August 6, 2017 Share Posted August 6, 2017 Подскажите пожалуйста как сделать что бы созданные номера загружались в кеш . тоесть создал номер и они загружаются в кеш в месте с буквами и цифрами. местные textOffset = 12 местных текстовое = 164 местного numberHeight = 64 местные regionOffset = 197 местных regionWidth = 47 локальной оси Y = 47 функция russionNumberPlate ( текст, транспортного средства ) местные Н1,Н2,Н3 = строка.матч(текст,"(%D), С (Д%) (%Д)") местные з1,з2 = строка.матч(текст, "(%о)(%о)") renderTarget = dxCreateRenderTarget(256, 64) dxSetRenderTarget(renderTarget) dxDrawImage(0, 0, 256, 64, dxCreateTexture("количество/number_ru.ПНГ") ) dxDrawText("Русь", 194, 0, 244, 47, tocolor(0, 0, 0), 0.87,1.05, numberFont1, "центр", "центр") dxDrawText(строка.матч(текст, "^%а" ), textOffset+3, 1.5, textOffset + текстовое, numberHeight, tocolor(0, 0, 0), 0.87,1.05, numberFont1, "левые", "центр") ----------------------- dxDrawText(Н1, -60, 4, 176, 64, tocolor(0, 0, 0), 0.87,1.07, numberFont1, "центр", "центр") dxDrawText(Н2, -2.5, 4, 176, 64, tocolor(0, 0, 0), 0.87,1.07, numberFont1, "центр", "центр") dxDrawText(Н3, 55, 4, 176, 64, tocolor(0, 0, 0), 0.87,1.07, numberFont1, "центр", "центр") -------------------------- dxDrawText(з1, 101, 4, 190, 64, tocolor(0, 0, 0), 0.87,1.05, numberFont1, "центр", "центр") dxDrawText(з2, 156.05, 4, 190, 64, tocolor(0, 0, 0), 0.87,1.05, numberFont1, "центр", "центр") -------------------------- dxDrawText(строка.матч(текст, "%д+$" ), 194, 0, 244, 47, tocolor(0, 0, 0), 0.65,0.69, numberFont1, "центр", "центр") dxSetRenderTarget() локальной текстуры = getTextureFromRenderTarget(renderTarget) функцией destroyelement(renderTarget) вернуть текстуру конца addEventHandler('onClientResourceStart', resourceRoot, функция() местные имг = используется fileopen('количество/number_ru.Формат PNG') местные пикселей = fileRead(имг fileGetSize(имг)) местные pixelsFormat = dxGetPixelsFormat(пикселей) outputChatBox('пикселей, формат:' .. pixelsFormat) fileClose(IMG)в конце) местные textOffset1 = 12 местных textWidth1 = 164 местного numberHeight1 = 64 местные regionOffset1 = 197 местных regionWidth1 = 47 местных regionHeight1 = 47 функция polNumberPlate ( текст, транспортного средства ) renderTarget = dxCreateRenderTarget(256, 64) dxSetRenderTarget(renderTarget) dxDrawImage(0, 0, 256, 64, dxCreateTexture("количество/number_pol.ПНГ") ) dxDrawText(строка.матч(текст, "^%а" ), textOffset1+10, 0, textOffset1 + textWidth1, numberHeight1, tocolor(255, 255, 255), 0.9,1.1, numberFont1, "левые", "центр") dxDrawText(строка.матч(текст, "(%Д%Д%Д%Д)" ), textOffset1+50, 0, textOffset1 + textWidth1, numberHeight1, tocolor(255, 255, 255), 0.9,1, numberFont1, "центр", "центр") --dxDrawText(строка.матч(Текст, "%А%А" ), textOffset1-55, 0, textOffset1 + textWidth1 + 10, numberHeight1, tocolor(0, 0, 0), 0.9,1.1, numberFont1, "правый", "центр") dxDrawText(строка.матч(текст, "(%д%д)$" ), regionOffset1, 0, regionOffset1 + regionWidth1, regionHeight1, tocolor(255, 255, 255), 0.6,0.7, numberFont1, "центр", "центр") dxSetRenderTarget() локальной текстуры = getTextureFromRenderTarget(renderTarget) функцией destroyelement(renderTarget) вернуть текстуру конец местных textOffset1 = 12 местных textWidth1 = 164 местного numberHeight1 = 64 местные regionOffset1 = 197 местных regionWidth1 = 47 местных regionHeight1 = 47 -- "^([ABCEHKMOPTXY][ABCEHKMOPTXY]%Д%Д%Д)(Д%Д)$" функция taxiNumberPlate ( текст, транспортного средства ) местные Т1,Т2 = строка.матч(текст, "(%о)(%а)") местные С1,С2,С3 = строка.матч(текст,"(%D), С (Д%) (%Д)") renderTarget = dxCreateRenderTarget(256, 64) dxSetRenderTarget(renderTarget) dxDrawImage(0, 0, 256, 64, dxCreateTexture("количество/number_taxi.ПНГ") ) dxDrawText(Т1, 28.05, 1.5, 190, 64, tocolor(0, 0, 0), 0.87,1.05, numberFont1, "левые", "центр") dxDrawText(Т2, 56.05, 1.5, 190, 64, tocolor(0, 0, 0), 0.87,1.05, numberFont1, "левые", "центр") ----------------------- dxDrawText(С1, 31, 4, 176, 64, tocolor(0, 0, 0), 0.87,1.07, numberFont1, "центр", "центр") dxDrawText(С2, 88, 4, 176, 64, tocolor(0, 0, 0), 0.87,1.07, numberFont1, "центр", "центр") dxDrawText(С3, 144, 4, 176, 64, tocolor(0, 0, 0), 0.87,1.07, numberFont1, "центр", "центр") -------------------------- dxDrawText(строка.матч(текст, "(%д%д)$" ), regionOffset1, 0, regionOffset1 + regionWidth1, regionHeight1, tocolor(0, 0, 0), 0.65,0.72, numberFont1, "центр", "центр") dxSetRenderTarget() локальной текстуры = getTextureFromRenderTarget(renderTarget) функцией destroyelement(renderTarget) вернуть текстуру конца местные ua_textOffset = 60 местных ua_textWidth = 164 местного ua_numberHeight = 64 функция ukraineNumberPlate ( текст, транспортного средства) renderTarget = dxCreateRenderTarget(256, 64) dxSetRenderTarget(renderTarget) dxDrawImage(-1, -1, 256, 64, dxCreateTexture("количество/number_ua.ПНГ") ) dxDrawText( строка.матч(Текст, "^%В%А" ), ua_textOffset-30, 0, ua_textOffset + ua_textWidth, ua_numberHeight-15, tocolor(0, 0, 0), 1, 1.3, numberFont1, "левые", "центр") dxDrawText( строка.gsub(текст, "%с", "" ), ua_textOffset, 0, ua_textOffset + ua_textWidth, ua_numberHeight, tocolor(0, 0, 0), 0.8, 1.1, numberFont1, "центр", "центр") dxDrawText( строка.матч(Текст, "%А%А$" ), ua_textOffset, 0, ua_textOffset + ua_textWidth +25, ua_numberHeight-15, tocolor(0, 0, 0), 1, 1.3, numberFont1, "право", "центр") dxSetRenderTarget() локальной текстуры = getTextureFromRenderTarget(renderTarget) функцией destroyelement(renderTarget) вернуть текстуру конец местных c_textOffset = 0 местные c_textWidth = 256 местные c_numberHeight = 60 функция clearNumberPlate ( текст, транспортного средства ) renderTarget = dxCreateRenderTarget(256, 64) dxSetRenderTarget(renderTarget) dxDrawImage(0, 0, 256, 64, dxCreateTexture("количество/number_c.ПНГ") ) dxDrawText(текст, c_textOffset, 0, c_textOffset + c_textWidth, c_numberHeight, tocolor(0, 0, 0), 2, 3, fontNumber, "центр", "центр") dxSetRenderTarget() локальной текстуры = getTextureFromRenderTarget(renderTarget) функцией destroyelement(renderTarget) вернуть текстуру конец местных c_textOffset1 = 12 местных c_textWidth1 = 164 местного c_numberHeight1 = 64 flagNumberPlate функции ( текст, транспортного средства ) местные В1,В2,В3 = строка.матч(текст,"(%D), С (Д%) (%Д)") местные х1,х2 = строка.матч(текст, "(%о)(%о)") renderTarget = dxCreateRenderTarget(256, 64) dxSetRenderTarget(renderTarget) dxDrawImage(0, 0, 256, 64, dxCreateTexture("количество/number_flag.ПНГ") ) dxDrawText(строка.матч(текст, "^%а" ), textOffset+3, 1.5, textOffset + текстовое, numberHeight, tocolor(0, 0, 0), 0.87,1.05, numberFont1, "левые", "центр") ----------------------- dxDrawText(В1, -60, 4, 176, 64, tocolor(0, 0, 0), 0.87,1.07, numberFont1, "центр", "центр") dxDrawText(В2, -2.5, 4, 176, 64, tocolor(0, 0, 0), 0.87,1.07, numberFont1, "центр", "центр") dxDrawText(В3, 55, 4, 176, 64, tocolor(0, 0, 0), 0.87,1.07, numberFont1, "центр", "центр") -------------------------- dxDrawText(х1, 101, 4, 190, 64, tocolor(0, 0, 0), 0.87,1.05, numberFont1, "центр", "центр") dxDrawText(х2, 156.05, 4, 190, 64, tocolor(0, 0, 0), 0.87,1.05, numberFont1, "центр", "центр") dxSetRenderTarget() локальной текстуры = getTextureFromRenderTarget(renderTarget) функцией destroyelement(renderTarget) вернуть текстуру конца местные by_textOffset = 40 местных by_textWidth = 256 местные by_numberHeight = 64 функция byNumberPlate ( текст, транспортного средства ) renderTarget = dxCreateRenderTarget(256, 64) dxSetRenderTarget(renderTarget) dxDrawImage(0, 0, 256, 64, dxCreateTexture("количество/number_by.ПНГ") ) dxDrawText(строка.gsub(текст "([ABEIKMHOPCTX][ABEIKMHOPCTX][-])(%д)$", "" ), by_textOffset, 0, by_textOffset + by_textWidth, by_numberHeight, tocolor(0, 0, 0), 0.9, 1.1, numberFont1, "левые", "центр") dxDrawText(строка.gsub(текст, "^(%Д%Д%Д%Д)", "" ), by_textOffset-20, 0, by_textOffset + by_textWidth - 65, by_numberHeight, tocolor(0, 0, 0), 0.9, 1.1, numberFont1, "правый", "центр") dxSetRenderTarget() локальной текстуры = getTextureFromRenderTarget(renderTarget) функцией destroyelement(renderTarget) вернуть текстуру конец местных kz_textOffset = 40 местных kz_textWidth = 256 местные kz_numberHeight = 64 функция kzNumberPlate ( текст, транспортного средства ) renderTarget = dxCreateRenderTarget(256, 64) dxSetRenderTarget(renderTarget) dxDrawImage(0, 0, 256, 64, dxCreateTexture("количество/number_kz.ПНГ") ) dxDrawText(строка.gsub(Текст, "(%А%А+)(%Д%Д)$", "" ), kz_textOffset, 0, kz_textOffset + kz_textWidth, kz_numberHeight, tocolor(0, 0, 0), 0.8,1, numberFont1, "левые", "центр") dxDrawText(строка.gsub(текст, "%д", "" ), kz_textOffset-25, 0, kz_textOffset + kz_textWidth, kz_numberHeight, tocolor(0, 0, 0), 0.9,1, numberFont1, "центр", "центр") dxDrawText(строка.gsub(текст, "^(%Д%Д%Д)(%А%А+)", "" ), kz_textOffset+115, 0, kz_textOffset + kz_textWidth, kz_numberHeight, tocolor(0, 0, 0), 0.8,1, numberFont1, "центр", "центр") dxSetRenderTarget() локальной текстуры = getTextureFromRenderTarget(renderTarget) функцией destroyelement(renderTarget) вернуть текстуру конец местных az_textOffset = 40 местных az_textWidth = 256 местные az_numberHeight = 64 функция azNumberPlate ( текст, транспортного средства) renderTarget = dxCreateRenderTarget(256, 64) dxSetRenderTarget(renderTarget) dxDrawImage(-1, 0, 439*0.58, 97*0.63, dxCreateTexture("количество/number_az.ПНГ") ) dxDrawText(строка.gsub(текст, "", "" ), az_textOffset+5, 0, az_textOffset + az_textWidth, az_numberHeight, tocolor(0, 0, 0), 1.5, 1.8, amFont, "левые", "центр") dxSetRenderTarget() локальной текстуры = getTextureFromRenderTarget(renderTarget) функцией destroyelement(renderTarget) вернуть текстуру конец местных ge_textOffset = 50 местных ge_textWidth = 256 местные ge_numberHeight = 64 функция geNumberPlate ( текст, транспортного средства) renderTarget = dxCreateRenderTarget(256, 64) dxSetRenderTarget(renderTarget) dxDrawImage(-1, 0, 439*0.58, 97*0.65, dxCreateTexture("количество/number_ge.ПНГ") ) dxDrawText(строка.gsub(текст, "", "" ), ge_textOffset+5, 0, ge_textOffset + ge_textWidth, ge_numberHeight, tocolor(0, 0, 0), 1.5, 1.8, amFont, "левые", "центр") dxSetRenderTarget() локальной текстуры = getTextureFromRenderTarget(renderTarget) функцией destroyelement(renderTarget) вернуть текстуру конца функция getTextureFromRenderTarget(renderTarget) возвращение dxCreateTexture(dxGetTexturePixels(renderTarget)) конец функции setVehicleNumberPlate ( транспортного средства ) , если не plateShaders[ТС] после plateShaders[транспортное средство] = dxCreateShader("шрифт/texreplace.Форекс") конец если не getElementData (автомобиля, "numberType" ), затем вернуться конце engineApplyShaderToWorldTexture(plateShaders[машины], "номер", автомобиля) engineApplyShaderToWorldTexture(plateShaders[машины], "номера", транспортного средства) engineApplyShaderToWorldTexture(plateShaders[машины], "количество", транспортного средства) если getElementData (автомобиля, "numberType") == "ру", то если не getElementData (транспортного средства "номер:пластина" ), затем вернуться конце текстуры = russionNumberPlate ( getElementData (транспортного средства "номер:пластина"), транспортного средства) dxSetShaderValue(plateShaders[машины], "gTexture", текстура) ключевые слова elseif getElementData (автомобиля, "numberType") == "уа", то если не getElementData (транспортного средства "номер:пластина" ) затем вернуться конце текстуры = ukraineNumberPlate ( getElementData (транспортного средства "номер:пластина"), транспортного средства ) dxSetShaderValue(plateShaders[машины], "gTexture", текстура) ключевые слова elseif getElementData (автомобиля, "numberType") == "такси" тогда если не getElementData (транспортного средства "номер:пластина" ), затем вернуться конце текстуры = taxiNumberPlate ( getElementData (транспортного средства "номер:пластина"), транспортного средства ) dxSetShaderValue(plateShaders[машины], "gTexture", текстура) ключевые слова elseif getElementData (автомобиля, "numberType") == "ГСМ" тогда если не getElementData (транспортного средства "номер:пластина" ) затем вернуться конце текстуры = polNumberPlate ( getElementData (транспортного средства "номер:пластина"), транспортного средства ) dxSetShaderValue(plateShaders[машины], "gTexture", текстура) ключевые слова elseif getElementData (автомобиля, "numberType") == "гез", то если не getElementData (транспортного средства "номер:пластина" ), затем вернуться конце текстуры = geNumberPlate ( getElementData (транспортного средства "номер:пластина"), транспортного средства ) dxSetShaderValue(plateShaders[машины], "gTexture", текстура) ключевые слова elseif getElementData (автомобиля, "numberType" ) == "счет" тогда если не getElementData (транспортного средства "номер:пластина" ) затем вернуться конце текстуры = byNumberPlate ( getElementData (транспортного средства "номер:пластина"), транспортного средства ) dxSetShaderValue(plateShaders[машины], "gTexture", текстура) ключевые слова elseif getElementData (автомобиля, "numberType" ) == "C", то если не getElementData (транспортного средства "номер:пластина" ) тогда возврат концу текстура = clearNumberPlate ( getElementData (транспортного средства "номер:пластина"), транспортного средства ) dxSetShaderValue(plateShaders[машины], "gTexture", текстура) ключевые слова elseif getElementData (автомобиля, "numberType" ) == "флаг" тогда если не getElementData (транспортного средства "номер:пластина" ) затем вернуться конце текстуры = flagNumberPlate ( getElementData (транспортного средства "номер:пластина"), транспортного средства ) dxSetShaderValue(plateShaders[машины], "gTexture", текстура) ключевые слова elseif getElementData (автомобиля, "numberType" ) == "КЗ", то если не getElementData (транспортного средства "номер:пластина" ), затем вернуться конце текстуры = kzNumberPlate ( getElementData (транспортного средства "номер:пластина"), транспортного средства) dxSetShaderValue(plateShaders[машины], "gTexture", текстура) ключевые слова elseif getElementData (автомобиля, "numberType" ) == "аз", то если не getElementData (транспортного средства "номер:пластина" ) затем вернуться конце текстуры = azNumberPlate ( getElementData (транспортного средства "номер:пластина"), транспортного средства ) dxSetShaderValue(plateShaders[машины], "gTexture", текстура) еще текстуры = imageNumberPlate(транспортного средства) dxSetShaderValue(plateShaders[машины], "gTexture", текстура ) конец конец функция foundVehicleWithPlates (плиты) foundCar = ложь для меня,а в ipairs (getElementsByType("автомобиль")) у местных vehPlate = getElementData(а / м"номер:пластина") если vehPlate потом если vehPlate == тарелка foundCar = истина конец конец конец если foundCar == True, то возвращает True для elseif foundCar == ложь тогда возврат ложь конец конец addEventHandler( "onClientElementStreamIn", getRootElement(), функция() если метод getelementtype( источник ) == "автомобиль" тогда если не getElementData (источник, "numberType" ), затем вернуться конце setVehicleNumberPlate ( источник ) конец конец) addEventHandler ( "onClientElementDataChange", getRootElement(), функция ( dataName ) если метод getelementtype ( источник ) == "автомобиль" и dataName == "количество:пластина", то setVehicleNumberPlate ( источник ) конец конец ) функция onResourceRestart() для меня,а в ipairs (getElementsByType("автомобиль")) у setVehicleNumberPlate ( а ) конец конец Link to comment
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now